Let's Contribute to the RDO Project!
Welcome on board! As a new contributor there are some things you'll want to do to get ready:
Let's get prerequisites ready.
- Join the RDO Mailing List
- Join the IRC channel
#rdo
on OFTC - Create a GitHub account
- Sign up to
review.rdoproject.org
- Add an SSH key to
review.rdoproject.org
- Create a RDO Jira Board account
- Configure
git
andgit review
- Install the
rdopkg
tool
What's Next!
- Make your first contribution
- How to fix git Merge conflicts
- Review RDO patches
- Become an RDO package maintainer.
Join the RDO Mailing List
- Go to RDO mailing list and enter your email address and password and click on subscribe. Once done, open your mailbox, you will get a confirmation email, click on the verification link and you are subscribed to the RDO List.
- You can introduce yourself by sending a mail to the mailing list. Tell us what your interests are and how you plan to participate.
Join the IRC channel #rdo
on OFTC
- All the development and communication related to the RDO Project happens on
the
#rdo
IRC channel on OFTC. Click this link to join the channel and feel free to say Hello! We are always there to help. - Feel free to check out the IRC etiquette guide.
Create a GitHub account
Go to the GitHub Sign Up page and enter your username, email address, and password, and you are done. If you already have a GitHub account, you can skip this step.
Sign up to review.rdoproject.org
Sign-in to review.rdoproject.org using your GitHub account.
Add an SSH key to review.rdoproject.org
- Generate an SSH key, if you don't have one you already use. Follow these instructions on Generating a new SSH key if necessary.
- Then, go to ssh-key
and click on the "Add Key" button and copy the contents of
id_rsa.pub
(your SSH public key) and paste it there, and then click on the 'Add' button and you are done.
Create a RDO Jira board account
All the bugs related to RDO packages are tracked on Red Hat Jira under the RDO project. OpenStack project bugs are tracked on Launchpad.
- You can create a RDO Board account by clicking on the "Log In" button on the RDO Board page then following the "Register for a Red Hat account" link.
Configure git
and git review
- Run these steps to let
git
know your email address:
$ git config --global user.name "Firstname Lastname"
$ git config --global user.email "your_email@youremail.com"
- To check your
git
configuration:
$ git config --list
- Install the
git-review
tool
RHEL-based systems (e.g. CentOS Steam 8+ with EPEL repo enabled)
$ sudo dnf install git-review
Fedora-based systems (after F24)
$ sudo dnf install git-review
Install the rdopkg
tool
Follow this link to install rdopkg, and you are set for making contributions to the RDO Project.
Make your first contribution
- The RDO Project has lots of easy fixes. Check out the RDO easyfix page, pick an issue, and feel free to move ahead.
- Feel free to familiarize yourself with RDO Packaging documentation.
- Clone the project.
For example, cloning keystone-distgit
, we need to pass the source code URL.
$ git clone https://review.rdoproject.org/r/openstack/keystone-distgit
You can also use rdopkg
to clone an RDO package.
$ rdopkg clone package-name
- Go inside the project directory, create, and checkout a new branch. Note: Always create a new branch to work on any issue.
$ cd <project_name>
$ git checkout -b <issue name>
- Make changes in the code and add the changed files to git.
$ git add <changed files>
- Commit the changes
$ git commit -m "Add the commit message"
You can check this link on how to write proper commit messages.
- If something went wrong in the commit message, or you need to adjust it, run the following command:
$ git commit --amend
- Now push the changes for review using
git-review
.
$ git review
Running git review
will create an RDO Gerrit review link, and someone from
RDO project will review the changes. Once everything looks fine, and is
approved, your changes will get merged, and you'll have made your first
contribution. Thanks!
How to fix git Merge conflicts?
You have submitted a patch and got merge conflict on your patch. You can check this link on how to resolving merge conflicts.
Review RDO patches
- Reviewing other peoples patches is a good way to learn things.
- You can start getting familiar with RDO by reviewing patches in the RDO Gerrit instance or by sending your own patches for existing packages.
Become an RDO package maintainer
If you want to become a maintainer for one or more packages, you can request to be added to the core group for them by sending a review to rdoinfo as in this example.
Being a maintainer for a package provides the ability to approve reviews for it
(grants +2
and +W
in Gerrit terms).