cookbook 'dev_env', '= 0.1.1'
dev_env (5) Versions 0.1.1 Follow1
Installs/Configures dev_env
cookbook 'dev_env', '= 0.1.1', :supermarket
knife supermarket install dev_env
knife supermarket download dev_env
dev_env Cookbook
A simple Cookbook to setup development environment. Here it takes care the usual procedures to setup a local development which are:
- Install NIX packages.
- Setup your projects.
- Git checkout the project.
- Run post bash commands to complete the setup.
Supported Platforms
Tested in Ubuntu.
Attributes
Main Attributes
["dev_env"]["user"] (String) = User to that will be assigned to own the
wrap-ssh4git.shfile. This file is required to ignore the host checks when runninggit clone/checkout. Default value isnil.["dev_env"]["packages"] (Array) = Array of Hash that contains list of NIX packages to be installed.
packagein below list will refer to the Hash object in this Array. Default value isnil.["dev_env"]["apps"] (Array) = Array of Hash that contains list of project/app to be installed.
appin below list will refer to the Hash object in this Array. Default value isnil.
Packages Attributes (package)
- package["name"] (String) = Name of NIX package you wish to install. Default value is
nil.
Application Attributes (app)
app["checkout"] (String) = Project checkout path. i.e. if
/home/user/projectis your checkout path, it will rungit clone {app["git_repo"]} /home/user/project. Default value isnil.app["git_repo"] (String) = Git repository URL. Default value is
nil.app["revision"] (String) = Git revision or branch to be used for checkout. Default value is
nil.app["git_action"] (String) = Git action. Possible values are either
checkoutorsync. Default value isnil.app["timeout"] (Integer) = Timeout (in seconds) set for
gitexecution. Default value is600.app["retries"] (Integer) = Number of retries if the
gitexecution fails. Default value is5.app["git_ignore_failure"] (Boolean) = Indicates if you want to ignore the error if the
gitexecution fails. Default value isfalse.app["user"] (String) = User that will be assigned for the project permission. Default value is
nil.app["post_commands"] (String) = Bash command to run from the checkout path after the
gitexecution completed. Default value isnil.
Usage
dev_env::pre_process
dev_env::pre_process recipe. This is to install NIX packages.
{
"run_list": [
"recipe[dev_env::pre_process]"
],
"json": {
dev_env: {
packages: [
{ name: "curl" },
{ name: "apache2" },
]
}
}
}
dev_env::default
dev_env::default recipe. This is to setup projects.
{
"run_list": [
"recipe[dev_env::default]"
],
"json": {
dev_env: {
apps: [
{
checkout_path: "/vagrant/home/projects/sample_app",
git_repo: "git@github.com:railstutorial/sample_app.git",
revision: "master",
git_action: "checkout",
user: "vagrant",
post_commands: <<-EOH
gem install bundler
rake bundle install
rake db:seed
EOH
},
{
...
}
]
}
}
}
License and Authors
Author:: Taufek Johar (taufek@gmail.com)
Dependent cookbooks
| git >= 0.0.0 |
Contingent cookbooks
There are no cookbooks that are contingent upon this one.
0.1.0
Initial release of dev_env_cookbook
Foodcritic Metric
0.1.1 failed this metric
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/attributes/default.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/attributes/default.rb:8
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/attributes/default.rb:22
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/default.rb:10
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:6
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:12
FC022: Resource condition within loop may not behave as expected: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/default.rb:11
0.1.1 failed this metric
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/attributes/default.rb:8
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/attributes/default.rb:22
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/default.rb:10
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:1
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:6
FC001: Use strings in preference to symbols to access node attributes: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/pre_process.rb:12
FC022: Resource condition within loop may not behave as expected: /tmp/cook/134f799d97ecd89b4599e1ea/dev_env/recipes/default.rb:11