How To Contribute
How can I help? Thanks for asking. Let's find a place for you!
First you should join our communication forums:
- Subscribe to our mailing lists
- Join us on IRC: You can talk to us directly in #openstack or one of the other channels
- Answer and ask questions on Ask OpenStack
Contents
- 1 If you're building clouds
- 2 Mentoring and finding mentors
- 3 If you're a developer
- 4 If you're a tester (and breaker), get started this way:
- 5 If you're into security, we'd love your help
- 6 If you're a designer or usability professional, help shape the UX
- 7 If you want to help with the openstack.org website
- 8 If you're a community builder
- 9 Is there something missing?
If you're building clouds
- Read the official OpenStack documentation, which is intended for cloud deployers and operations professionals who are standing up OpenStack clouds. Each page offers comments and the documentation can be edited by cloning a git repository, see Documentation/HowTo.
- If you find problems with content on the official OpenStack documentation, log a bug against the openstack-manuals project with the page that contains the bug.
- Hint: you can just dump useful text into a bug report, and the documentation team will format it and update the docs for you.
- Join the openstack-operators mailing list to ask and answer questions specific to deployments large and small.
- Fill out the user survey, where you can influence the community and software direction and anonymously provide feedback about your OpenStack experience.
- Consider contributing to a working group, or adding a use case.
Mentoring and finding mentors
You can contact the First Contact SIG with any questions on how to get started.
If you are in need of a more structured mentorship program (or want to be a mentor), there are a variety of Mentoring programs hosted by the Diversity and Inclusion working group that can help you get started.
If you're a developer
- Walk through the Code & Docs Contributor Guide which will help you:
- Join the OpenStack Discuss mailing list
- Join the #openstack-dev IRC channel
- Set up the necessary accounts
- Learn where to find the code
- How to set up your development environment
- How to interact with Gerrit and Review code
- Learn how documentation is developed
- Learn how to contribute translations
- Pycharm Open Source developer licences are available for people who are contributing to OpenStack. If you are contributing to OpenStack and you need a licence, please fill in the details here. Additional details can be found here
Bug fixing
The first area where you can help is bug fixing. Confirmed bugs are usually good targets. Triaged bugs should even contain tips on how they should be fixed. Here is the list of Confirmed and Triaged bugs.
You can contribute instructions on how to fix a given bug, and set it to Triaged. Or you can directly fix it: assign the bug to yourself, set it to In progress, branch the code, implement the fix, and propose your change for merging into trunk !
Some easy-to-fix bugs may be marked with the low-hanging-fruit tag: they also make good targets for a beginner.
Housekeeping
Maintaining good code quality is a never-ending effort that is shared across the development team. There are several always-ongoing efforts that need your help, for example: increasing comments in code, reducing pylint violations, increasing code coverage. Those are usually nice ways to get involved in development: easy changes that will let you touch various areas of OpenStack code, and gain respect from your peers. :) It might be also a good idea to check the results of the continuous code quality and test coverage monitoring described here.
You can also try some gardening of this wiki.
If you're a tester (and breaker), get started this way:
Testing
We need your help in making sure OpenStack components behave correctly. Feel free to install the development version and report any issue.
Triaging bugs
Reported bugs need care: prioritizing them correctly, confirming them, making sure they don't go stale... All those tasks help immensely. If you care about OpenStack stability but are not a hardcore developer, consider helping in that area!
The whole process is described on BugTriage.
If you're into security, we'd love your help
The OpenStack Security Group (OSSG) is a collection of security-minded people working together to broadly improve security across OpenStack. OSSG has people with a wide range of skills (including developers, architects, writers, and more). See Security/How_To_Contribute for more details on how to get involved with OSSG.
If you're a designer or usability professional, help shape the UX
You can contribute in many different ways to the User Experience of OpenStack. Whether it's reviewing current features as a user and giving feedback, designing new features, testing designs or features with users, or helping to build use cases and requirements, we'd love to have your help in the UX group!
Take a look at the "Getting Started with Designing for User Experience" section of the UX wiki for details.
Also, feel free to contact fellow designers and folks interested in UX work in #openstack-ux on OFTC if you have any questions or need any guidance on where to jump in.
If you want to help with the openstack.org website
Start by reading the contributing to the website document.
If you're a community builder
Check out the user group page to learn which communities exist and how to start one. If you're into diversity and making our community more welcoming and diverse, please look at the Women of OpenStack and Outreach Program for Women for ideas.
Is there something missing?
If you need further guidance about how to contribute or if you are having trouble getting started, you can look at #openstack-dev on oftc.net as well.