bifrost/CONTRIBUTING.rst
Jenkins 2a9d49d9bc Add cookiecutter-generated files for project
Use cookiecutter (https://git.openstack.org/openstack-dev/cookiecutter)
to generate config for tox so we can generate docs, run pep8, etc.
Also move CONTRIBUTING.rst to the root of the repository in keeping
with what seems to be the standard location. This move allows us to
easily generate the docs. Also include a tiny fix to allow pep8 to
run cleanly.

Change-Id: Ifbfc6d85c7b02bf4ab989974b491a3a1ae6f0900
2015-06-10 08:40:19 -07:00

2.0 KiB

Bifrost is a part of Ironic, which is an OpenStack project and thus follows OpenStack development procedures.

For a full (and official) description of the development workflow, see:

http://docs.openstack.org/infra/manual/developers.html#development-workflow

For a highly abridged version, read on.

Communicating

Before you file a ticket or submit a pull request, its often helpful to chat with other developers. The #openstack-ironic channel is a good place to start, and if you don't have IRC (or would prefer email), openstack-dev@lists.openstack.org is the mailing list for all OpenStack projects. As the name implies, that mailing list is for all OpenStack development, so it's often harder to get attention on your particular issue.

Filing Bugs

Bugs should be filed on Launchpad, not GitHub:

https://bugs.launchpad.net/bifrost

Contributing Code

Bifrost requires a valid OpenStack contributor agreement to be signed before code can be accepted. Details can be found in the development workflow link above.

Code isn't committed directly (so pull requests won't work); instead, the code is submitted for review through Gerrit via git review, and once its been sufficiently reviewed it will be merged from there.

Once that's done, the development workflow is, roughly:

$ git clone https://git.openstack.org/openstack/bifrost
$ cd bifrost
$ git checkout -b some-branch-name
... hack hack hack ...
$ git commit
$ git review
... The configuration details for this are in .gitreview.
... When the command runs, it will add a ChangeId to your commit
... message and print out a link for your reference
...
... If you need to fix something in that commit, you can do:
$ git commit --amend
$ git review

From that point on, the link the git review command generated is the place to do final tweaks. When its approved, the code will be merged in automatically.