Skip to content

Latest commit

 

History

History
56 lines (44 loc) · 2.6 KB

CONTRIBUTING.md

File metadata and controls

56 lines (44 loc) · 2.6 KB

How to contribute

  • Visit the PuppetDB board on Trello
  • Make sure you have a Redmine account
  • Make sure you have a GitHub account
  • Submit a ticket for your issue, assuming one does not already exist.
    • Clearly describe the issue including steps to reproduce when it is a bug.
    • Make sure you fill in the earliest version that you know has the issue.
  • Fork the repository on GitHub

Making Changes

  • Create a branch off of the branch you want to base off of.
    • This is usually the master branch.
    • Only target release branches if you are certain your fix must be on that branch.
  • Make commits of logical units.
  • Check for unnecessary whitespace with "git diff --check" before committing.
  • Make sure your commit messages are in the proper format.
    (#Ticket Number) What you are changing with this commit

    Describe what happened before. Describe the change in behavior that this
    commit makes.
  • Make sure you have added the necessary tests for your changes.
  • Run all the tests to assure nothing else was accidentally broken.

Submitting Changes

  • Sign the Contributor License Agreement.
  • Push your changes to a topic branch in your fork of the repository.
  • Submit a pull request to the repository in the puppetlabs organization.
  • Update your Redmine ticket to mark that you have submitted code.

Database Schema Changes

  • When making any changes that will modify the schema of the underlying database, great caution should be exercised.
  • Except in very rare circumstances (crucial bug fixes or performance improvements), these types of changes should only be made in the master branch. Older release branches should not introduce database schema changes unless absolutely necessary.
  • In these rare circumstances where a schema change must be made against more than one branch of the code, see the notes at the beginning of the file src/com/puppetlabs/puppetdb/scf/migrate.clj on this subject. Exercise extreme caution to make sure that you are adhering to the guidelines therein.

Additional Resources