This cookbook uses a variety of testing components:
- Unit tests: ChefSpec
- Integration tests: Test Kitchen
- Chef Style lints: Foodcritic
- Ruby Style lints: cookstyle
You can install the Chef Development Kit (Chef-DK) to more easily install the above components.
You must also have Vagrant and VirtualBox installed:
-
Clone the git repository from GitHub:
git clone [email protected]:caskdata/hadoop_cookbook.git
-
Install the dependencies using bundler:
chef exec bundle install --path ../vendor
-
Create a branch for your changes:
git checkout -b my_bug_fix
-
Make any changes
-
Write tests to support those changes. It is highly recommended you write both unit and integration tests.
-
Run the tests:
chef exec bundle exec rspec
chef exec bundle exec foodcritic .
chef exec bundle exec rubocop
chef exec bundle exec kitchen test
-
Assuming the tests pass, open a Pull Request on GitHub
For more information, see the cookbook's Contribution Guidelines