From: Alfredo Deza Date: Fri, 20 Nov 2015 12:51:24 +0000 (-0500) Subject: [RM-13846] create a contributing guidelines file X-Git-Tag: v1.5.29~4^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=17a477ec0dd453e7da661fb86e0047feb33a3539;p=ceph-deploy.git [RM-13846] create a contributing guidelines file Signed-off-by: Alfredo Deza --- diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst new file mode 100644 index 0000000..60cead5 --- /dev/null +++ b/CONTRIBUTING.rst @@ -0,0 +1,48 @@ +Contributing to ceph-deploy +=========================== +Before any contributions, a reference ticket *must* exist. The community issue +tracker is hosted at tracker.ceph.com + +To open a new issue, requests can go to: + +http://tracker.ceph.com/projects/ceph-deploy/issues/new + + +commits +------- +Once a ticket exists, commits should be prefaced by the ticket ID. This makes +it easier for maintainers to keep track of why a given line changed, mapping +directly to work done on a ticket. + +For tickets coming from tracker.ceph.com, we expect the following format:: + + [RM-0000] this is a commit message for tracker.ceph.com + +``RM`` stands for Redmine which is the software running tracker.ceph.com. +Similarly, if a ticket was created in bugzilla.redhat.com, we expect the +following format:: + + [BZ-0000] this is a commit message for bugzilla.redhat.com + + +To automate this process, you can create a branch with the tracker identifier +and id (replace "0000" with the ticket number):: + + git checkout -b RM-0000 + +And then use the follow prepare-commit-msg: +https://gist.github.com/alfredodeza/6d62d99a95c9a7975fbe + +Copy that file to ``$GITREPOSITORY/.git/hooks/prepare-commit-msg`` +and mark it executable. + +Your commit messages should then be automatically prefixed with the branch name +based off of the issue tracker. + +tests and documentation +----------------------- +Wherever it is feasible, tests must exist and documentation must be added or +improved depending on the change. + +The build process not only runs tests but ensures that docs can be built from +the proposed changes as well.