cookbook 'dev_env', '= 0.1.3'
dev_env (5) Versions 0.1.3 Follow1
Installs/Configures dev_env
cookbook 'dev_env', '= 0.1.3', :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 thewrap-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 isnil.
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 isnil.app["revision"](String) = Git revision or branch to be used for checkout. Default value isnil.app["git_action"](String) = Git action. Possible values are eithercheckoutorsync. Default value isnil.app["timeout"](Integer) = Timeout (in seconds) set forgitexecution. Default value is600.app["retries"](Integer) = Number of retries if thegitexecution fails. Default value is5.app["git_ignore_failure"](Boolean) = Indicates if you want to ignore the error if thegitexecution fails. Default value isfalse.app["user"](String) = User that will be assigned for the project permission. Default value isnil.app["post_commands"](String) = Bash command to run from the checkout path after thegitexecution 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.3 failed this metric
FC022: Resource condition within loop may not behave as expected: /tmp/cook/97f546cc65b7d85f2ea36e6f/dev_env/recipes/default.rb:11
0.1.3 failed this metric