From c607ba5740efa828b04696d1da0641c6d89866d6 Mon Sep 17 00:00:00 2001 From: Michael DeHaan Date: Mon, 17 Sep 2012 22:59:35 -0400 Subject: [PATCH] Add CONTRIBUTING.md file --- CONTRIBUTING.md | 59 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 00000000000..7979d757d7f --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,59 @@ +Contributing to Ansible +======================= + +It is required that you read the following information to learn how to contribute to this project. + +Branch Info +=========== + +Here's how to understand the branches. + + * The devel branch corresponds to the latest ongoing release + * Various release-X.Y branches exist for previous releases + * All feature work happens on the development branch. + * Major bug fixes will be made to the last release branch only + * See CHANGELOG.md for release notes to track each release. + +Patch Instructions +================== + +Contributions to the core and modules are greatly welcome. + + * Required Process: + * Submit github pull requests to the "ansible/devel" branch for features + * Fixes for bugs may also be submitted to "ansible/release-X.Y" for the last release + * Make sure "make tests" passes before submitting any requests. + * Bonus points: + * Joining the mailing list + * Fixing bugs instead of sending bug reports. + * Using squash merges + * Updating the "rst/*" files in the docs project and "docs/" manpage content + * Adding more unit tests + * Avoid: + * Sending patches to the mailing list directly. + * Sending feature pull requests to the 'release' branch instead of the devel branch + * Sending pull requests to mpdehaan's personal ansible fork. + * Sending pull requests about more than one feature in the same pull request. + * Whitespace restructuring + * Large scale refactoring without a discussion on the list + +Coding Standards +================ + +We're not too strict on style considerations, but we require: + + * python 2.6 compliant code, unless in ansible modules, then python *2.4* compliant code (no 'with', etc) + * 4-space indents, no tabs except in Makefiles + * under_scores for method names and variables, not camelCase + * GPLv3 license headers on all files, with copyright on new files with your name on it + * no single-line if statements, deeply nested list comprehensions, or clever use of metaclasses -- keep it simple + * comments where appropriate + +Contributors License Agreement +============================== + +By contributing you agree that these contributions are your own (or approved by your employer) and you grant a full, complete, irrevocable +copyright license to all users and developers of the project, present and future, persusant to the license of the project. + + +