So youwanttobeopenstackcontributor
-
Upload
iccha-sethi -
Category
Education
-
view
676 -
download
0
description
Transcript of So youwanttobeopenstackcontributor
Iccha Sethi @IcchaSethiEgle Sigler @egluteAngela Streeter @angelastreeter
So You Want To Be an OpenStack Contributor?
#rackstackatl
• Intro
• Who can contribute
• What it takes to be a contributor
• Finding something to contribute
• Life cycle of a patch
Outline
2
#rackstackatlRACKSPACE® HOSTING | WWW.RACKSPACE.COM
What is OpenStack?Why Contribute to OpenStack?
#rackstackatl
What is OpenStack?
4
#rackstackatl
• Be part of growing community
• Build your expertise
• Work with some really great people
• Find a job: everyone is hiring!
• Learn new skills
• Come to the OpenStack Summit (Paris!)
• Join the rebel alliance to help build Planet Scale Cloud!
RACKSPACE® HOSTING | WWW.RACKSPACE.COM 5
Why Contribute?
#rackstackatlRACKSPACE® HOSTING | WWW.RACKSPACE.COM
So You Want To Contribute?
Great!
#rackstackatl
Total Contributions
7
76K Commits
2000 Developers
38K Tickets
55K Mail Messages
… and counting!
http://activity.openstack.org/dash/releases/index.html?data_dir=data/whole_project
#rackstackatl
Who Can Contribute?
8
• Programmers: code
• Testers: test and break
• Writers: documentation
• Operators: cloud builders and maintainers
• Security People
• Designers
• Translators
• Gardeners: increasing comments in code, reducing pylint violations, increasing code coverage, etc.
• Reviewers!!!
#rackstackatlRACKSPACE® HOSTING | WWW.RACKSPACE.COM
What It Takes To Contribute
#rackstackatl
• Testing: – Report issues
– Triage issues: prioritize, confirm, review incomplete or stale bugs
• Security:– Join mailing lists, review code reviews, look for security issues, fix code
• Documentation:– Fix documentation bugs
– Write documentation
• Designers/UIX:– Review current features as a user,
– Design new features
• Developers:– Keep testing, security, documentation, designers, operators, and everyone else busy
Find Something To Contribute
#rackstackatl
• Launchpad Account: https://login.launchpad.net/+new_account– Add SSH keys to Launchpad account
– Launchpad and Gerritt accounts are the same
• Join OpenStack Foundation: https://www.openstack.org/join/
• Sign Contributor’s License Agreement: https://review.openstack.org/#/settings/agreements – https://review.openstack.org/static/cla.html
• GitHub Account: https://github.com/– Install and configure git locally
– Install and configure git-review locally
• Use the same email address for all your accounts!
• https://wiki.openstack.org/wiki/HowToContribute
Do This Once
11
#rackstackatl
• DevStack is awesome, try it.
Test Environment
12
#rackstackatl
1. Find some work to do.
2. Create a local git branch based on master.
3. Work work work.
4. Create a single commit based on your local branch.
5. Make a patch using git review that’s pushed to gerrit (review.openstack.org).
6. Wait for reviews (work on other patches).
7. Address reviews (work work work).
8. Encourage two core members give it a +2 vote and click Approved (work on other patches).
Basic Workflow
13
#rackstackatl
• Keep line length at 80
• No period at the end of the first line
• Insert special text:– Closes-Bug: nnnnnnn
– Partial-Bug: nnnnnnn
– Bp:<text-from-Launchpad-URL>
– DocImpact
– Co-Authored-By: <[email protected]>
Commit Messages Guidelines
14
#rackstackatl
• Log in to http://review.openstack.org.
• Enter comments inline.
• Click Review button to publish comments.
Review Issues
15
#rackstackatl
1. Get the six-digit patch number from review.openstack.org, copy it.
2. At the command line, change to the directory where the repo is stored.
3. Enter: $ git review -d nnnnn
Reviewing Locally
16
#rackstackatl
• Mailing lists: – 12 major lists (General, Announcements, Operators, QA, Foundation, Security, Community, Translation, etc.
– Sign up to as many as you want to
– Lurk or participate, up to you
– Tip: setup filters
• IRC– Freenode
– 42 different channels
• Ask OpenStack: ask.openstack.org
• Design Summit
• Meetups
RACKSPACE® HOSTING | WWW.RACKSPACE.COM 17
Communications
#rackstackatl
RACKSPACE® HOSTING | 5000 WALZEM ROAD | SAN ANTONIO, TX 78218
US SALES: 1-800-961-2888 | US SUPPORT: 1-800-961-4454 | WWW.RACKSPACE.COM
RACKSPACE® HOSTING | © RACKSPACE US, INC. | RACKSPACE® AND FANATICAL SUPPORT® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COMRACKSPACE® HOSTING | © RACKSPACE US, INC. | RACKSPACE® AND FANATICAL SUPPORT® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COM
#rackstackatl
• Low-hanging-fruit tag
• Triaged
• No one else is already assigned
Work on a Bug
19
#rackstackatl
• Get a copy locally
git checkout master; git remote update; git pull origin master
git review –d nnnnnn
• Work work work edit edit
• Push back up to gerrit (review.openstack.org)
git commit -a --amend
git review -v
Demo Patching a Patch
20
#rackstackatl
• In the Devstack-env Cloud Server:
git checkout master; git remote update; git pull origin master
git checkout -b bug-1188073
• (You’ll need to add a public key and install git review again.)
• Work work work work edit
git commit -agit commit -a --amend
git review -v
Demo Working on a Bug
21