xcat-core/xCAT-OpenStack/chef-cookbooks/grizzly-xcat/cookbooks/apache2/TESTING.md

1.7 KiB

This cookbook uses a variety of testing components:

Prerequisites

To develop on this cookbook, you must have a sane Ruby 1.9+ environment. Given the nature of this installation process (and it's variance across multiple operating systems), we will leave this installation process to the user.

You must also have bundler installed:

$ gem install bundler

You must also have Vagrant and VirtualBox installed:

Once installed, you must install the vagrant-berkshelf plugin:

$ vagrant plugin install vagrant-berkshelf

Development

  1. Clone the git repository from GitHub:

     $ git clone git@github.com:opscode-cookbooks/COOKBOOK.git
    
  2. Install the dependencies using bundler:

     $ bundle install
    
  3. Create a branch for your changes:

     $ git checkout -b my_bug_fix
    
  4. Make any changes

  5. Write tests to support those changes. It is highly recommended you write both unit and integration tests.

  6. Run the tests:

    • bundle exec rspec
    • bundle exec foodcritic .
    • bundle exec rubocop
    • bundle exec kitchen test
  7. Assuming the tests pass, open a Pull Request on GitHub

  8. Open a JIRA ticket for this compontent, linking the JIRA ticket to the Pull Request and visa versa.

  9. Mark the JIRA ticket as "Fix Provided"

For more information, see Opscode's Contribution Guidelines.