Files
training-guides/doc/upstream-training/source/slides/workflow-training-contribution-process.rst
Kendall Nelson f4b2257293 [upstream] Add [new_dev] and [dev] tags
This patch introduces two new tags to the table: New Developer
and Developer. The patch also tags all relevant modules and adds
descriptions of the taged groups.

Change-Id: I122ac120cbc4ec84db3b3579d75184b393f60987
2017-10-04 15:54:02 -07:00

96 lines
2.3 KiB
ReStructuredText

====================================
Overview of the contribution process
====================================
.. image:: ./_assets/os_background.png
:class: fill
:width: 100%
.. note::
Tags: [new_dev]
Getting to Know Your Project
============================
- Clone and be familiar with the code
.. code-block:: console
$ git clone git://git.openstack.org/openstack/<your_project>
- Example:
.. code-block:: console
$ git clone git://git.openstack.org/openstack/training-guides
- Run the tests
- Join the project's IRC channel
- https://wiki.openstack.org/wiki/IRC
- Look at open reviews
- Join the openstack-dev mailing list
.. note::
Each project has its own purpose & culture.
Interacting with the Project
============================
- Talking in the IRC channel
- Following and participating in project related mail threads
in the mailing list
- Attending regular meetings
- Filing, fixing, and triaging bugs
- Filing a blueprint/spec
- Implementing a blueprint/spec
Building Your Persona
=====================
- Review other's code
- Help fix the documentation
- Answer other's questions or help direct them to
those who can
- Attend the meetings
- Build a network
- Pay attention to who is an expert in what area
- Ask questions in the channel or send direct messages
.. note::
If people know you, you have a better chance at your code
getting attention.
General Contribution Workflow
=============================
- Pick a task (bug, trivial fix, documentation, implementation)
- Make a new branch in your local repository
- Make code changes
- Update and add tests (unit, functional, etc.)
- Run tests (unit, functional, etc.)
- Create your commit and push upstream for review
.. note::
We will go into this later on in more detail so hold off on answering
detailed questions for now.
Your Patch Upstream
===================
- Jenkins and vendor CIs will review your patch
- Community members will review your patch
- Reply to comments
- Make changes and push new patchsets
- Resolve merge conflicts
Speeding the Acceptance
=======================
- Be on top of people's comments
- Be patient
- Be communicative
- Be collaborative
REMEMBER: This is open source.
Things happen on the community's schedule, not yours.