diff --git a/doc/source/devref/development.guidelines.rst b/doc/source/devref/development.guidelines.rst new file mode 100644 index 00000000..4eb6a418 --- /dev/null +++ b/doc/source/devref/development.guidelines.rst @@ -0,0 +1,69 @@ +Development guidelines +====================== + +Coding Guidelines +----------------- + +`PEP8 `_ checking should pass for +all Climate code. You may check it using the following command: + +.. sourcecode:: console + + tox -e pep8 + +.. + +Also you should keep your code clear using more code style checkings via +`pylint `_: + +.. sourcecode:: console + + tox -e pylint + +.. + +If you see any pep8/pylint errors in your code, it's mandatory to fix them +before sending your change on review. + +Testing Guidelines +------------------ + +Climate repositories have unit tests that are run on all submitted code, and it +is recommended for developers to execute them themselves to catch regressions +early. Developers are also expected to keep the test suite up-to-date with any +submitted code changes. + +Unit tests might be ran in `TOX `_ environment +via commands: + +.. sourcecode:: console + + tox -e py27 + tox -e py26 + +.. + +for Python 2.7 and Python 2.6 accordingly. + +Documentation Guidelines +------------------------ + +Currently Climate docs are partially written on `OpenStack wiki +`_ pages, and partially using +Sphinx / RST located in the main repo in *doc* directory. In future all of them +will be moved to Sphinx / RST (now these docs cannot be published on +readthedocs.org, because there is already existing *climate* project created on +it. Now Climate ATCs are voting to choose new name for Climate project and then +all docs will be moved to new readthedocs project). + +To build Sphinx / RST docs locally run the following command: + +.. sourcecode:: console + + tox -e docs + +.. + +After it you can access generated docs in *doc/build/* directory, for example, +main page - *doc/build/html/index.html*. + diff --git a/doc/source/devref/how.to.contribute.rst b/doc/source/devref/how.to.contribute.rst new file mode 100644 index 00000000..420fa444 --- /dev/null +++ b/doc/source/devref/how.to.contribute.rst @@ -0,0 +1,65 @@ +How to contribute +================= + +Getting started +--------------- + +* Create `Github `_ account if you don't + have one +* Make sure you have git options *user.name* and *user.email* set in git by + typing: + + .. sourcecode:: console + + git config --list. If not, configure them. + + .. + +* Create `Launchpad `_ account if you don't have + one +* Create `OpenStack profile `_ +* Login to `OpenStack Gerrit `_ using your + Launchpad ID + + * Sign up your `OpenStack Individual Contributor License Agreement + `_ + * Check that your email is listed in `Gerrit identities + `_ + +* Subscribe to Climate-related projects on + `OpenStack Gerrit `_. Go to your + settings and in the watched projects add *stackforge/climate*, + *stackforge/climate-nova* and *stackforge/python-climateclient* + +As all bugs/blueprints are listed in `Climate Launchpad +`_, you may keep track on them and choose some +to work on. + +How to keep in touch with community +----------------------------------- + +* If you're not subscribed to `OpenStack general mailing list + `_ or to + `OpenStack development mailing list + `_, do + that. Climate-related emails must be send with **[climate]** in its subject. +* All questions may be asked on our IRC channel #openstack-climate on + `freenode `_ +* We also have weekly meetings on #openstack-meeting + `freenode IRC channel `_ + +Your first commit to Climate +---------------------------- + +* Checkout corresponding Climate repository from `Github + `_ +* Take a look on how `Gerrit review process + `_ goes on in OpenStack + (read carefully `committing changes + `_ part) +* Apply and commit your changes +* Make sure all code checkings and tests have passed. See + `development guidelines `_ to learn more +* Send your patch to the review (you may use `git-review + `_ utility for that) +* Monitor status of your change on https://review.openstack.org/#/ diff --git a/doc/source/index.rst b/doc/source/index.rst index f78cfe99..40626ba6 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -31,3 +31,12 @@ User guide :maxdepth: 1 restapi/index + +Development guide +----------------- + +.. toctree:: + :maxdepth: 1 + + devref/how.to.contribute + devref/development.guidelines \ No newline at end of file