How to Participate
==================

Getting started
---------------

* Create account on `Github <https://github.com/openstack/sahara>`_
  (if you don't have one)

  * Make sure that your local git is properly configured by executing
    ``git config --list``. If not, configure ``user.name``, ``user.email``

* Create account on `Launchpad <https://launchpad.net/sahara>`_
  (if you don't have one)

* Subscribe to `OpenStack general mail-list <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack>`_

* Subscribe to `OpenStack development mail-list <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev>`_

* Create `OpenStack profile <https://www.openstack.org/profile/>`_

* Login to `OpenStack Gerrit <https://review.openstack.org/>`_ with your
  Launchpad id

  * Sign `OpenStack Individual Contributor License Agreement <https://review.openstack.org/#/settings/agreements>`_
  * Make sure that your email is listed in `identities <https://review.openstack.org/#/settings/web-identities>`_

* Subscribe to code-reviews. Go to your settings on http://review.openstack.org

  * Go to ``watched projects``
  * Add ``openstack/sahara``, ``openstack/sahara-dashboard``,
    ``openstack/sahara-extra``, ``openstack/python-saharaclient``,
    ``openstack/sahara-image-elements``, ``openstack/horizon``


How to stay in touch with the community?
----------------------------------------

* If you have something to discuss use
  `OpenStack development mail-list <http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev>`_.
  Prefix mail subject with ``[Sahara]``

* Join ``#openstack-sahara`` IRC channel on `freenode <http://freenode.net/>`_

* Join public weekly meetings on *Thursdays at 18:00 UTC* on
  ``#openstack-meeting-alt`` IRC channel
* Join public weekly meetings on *Thursdays at 14:00 UTC* on
  ``#openstack-meeting-3`` IRC channel


How to send your first patch on review?
---------------------------------------

* Checkout Sahara code from `Github <https://github.com/openstack/sahara>`_

* Carefully read https://wiki.openstack.org/wiki/Gerrit_Workflow

  * Pay special attention to https://wiki.openstack.org/wiki/Gerrit_Workflow#Committing_Changes

* Apply and commit your changes

* Make sure that your code passes ``PEP8`` checks and unit-tests

* Send your patch on review

* Monitor status of your patch review on https://review.openstack.org/#/


