"A healthy, delicious way to prepare and enjoy your infrastructure development"
meal_plan
is an opinionated set of generators to aid development of Chef cookbooks, currently supporting the following tools:
- chef
- chefspec
- berkshelf
- foodcritic
- rake
- rubocop
I recommend installing this in a central location, because:
- it is useful across multiple projects
- the
prepare
command can overwrite a Gemfile - this is how I use it
$ gem install meal_plan
Commands:
meal_plan help [COMMAND] # Describe available commands or one specific command
meal_plan prepare NAME # Prepare a Meal Plan (bootstrap cookbook development for NAME)
meal_plan version # Display the program version and exit
Usage:
meal_plan prepare NAME
Options:
-o, [--output-directory=OUTPUT_DIRECTORY] # Default: "."
-m, [--maintainer=MAINTAINER]
-e, [--maintainer-email=MAINTAINER_EMAIL]
Prepare a Meal Plan (bootstrap cookbook development for NAME)
Example
$ meal_plan prepare discourse -m "Phil Cohen" -e "[email protected]"
Preparing a Meal Plan for `discourse`
create files/default
create libraries
create providers
create resources
create templates/default
create attributes
create attributes/default.rb
create recipes
create recipes/default.rb
create spec
create spec/default_spec.rb
create spec/spec_helper.rb
create test
create test/.chef/knife.rb
create test/rubocop/disabled.yml
create test/rubocop/enabled.yml
create LICENSE.txt
create README.md
create metadata.rb
create .gitignore
create .rubocop.yml
create Berksfile
create Gemfile
create Guardfile
create Rakefile
run bundle check || bundle install --path=.bundle --binstubs=.bundle/bin from "."
run berks install from "."
run test -d .git || (git init && git add .) from "."
Happy Cooking!
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
meal_plan
- Freely distributable and licensed under the MIT license.
- Copyright (c) 2014 Phil Cohen ([email protected])
- http://phlippers.net