How to become OpenStack upstream
developer
Introduction and useful tips
Sławek Kapłoński
IRC: slaweq@freenode
Twitter: slaweq
2
About me
Introduce myself
How to contribute
Different ways of how to contribute to OpenStack
Communication in community
Various communication methods used in OpenStack
Useful tools
Some tools which every OpenStack developer should
know
AGENDA
3
DevOps in OVH
First contact with
OpenStack
(Havana)
2013
First contribution
to OpenStack
2018
About me
In OpenStack community
Core reviewer in
OpenStack
Neutron and
SDK/shade
(Queens)
2017
Software
Engineer in Red
Hat
2015
How to contribute?
5
Improve documentation
Test and report bugs or
feature requests
Send patchesCode review
Ways of contributing
6
● OpenStack storyboard:
https://storyboard.openstack.org
● Launchpad
https://launchpad.net/openstack
● Blueprints and specs
https://blueprints.launchpad.net/openstack
Testing and reporting bugs
The way to report a bug or begin planning new
feature varies on the project.
7
● Code review always in Gerrit
https://review.openstack.org
● Free, web-based tool, which integrates closely with GIT
● How to start with Gerrit:
https://docs.openstack.org/contributors/common/setup-gerrit.html
Code review - gerrit
8
Code review - gerrit
9
Votes:
● Code review category:
○ Everyone: -1, 0, +1
○ Core reviewers: -2, +2
● Verified category:
○ CI systems: -1, +1
○ Zuul: -2, +2
● Approved category:
○ Core reviewers and owner: -1 (Work In Progress), 0
○ Core reviewers: +1 (Approved)
Code review - gerrit
Basic concept according to OpenStack
10
Code review - gerrit
Why doing review is important?
● Learn the code base
● You can try to stop merging patches which might have
bad impact for Your deployment
● Improve visibility and recognition in community
● More reviews You do - more people will review Your
code fast :)
● catch regressions before they're merged
● increase the quality of the code
11
Code review - gerrit
Source: https://github.com/assafmuller/gerrit_time_to_merge
12
Development workflow with Gerrit
Source: https://docs.openstack.org/infra/manual/_images/code_review.png
Communication in community
14
Communication - mailing lists
Subscribe at :
http://lists.openstack.org/cgi-bin/mailman/listinfo/
Plenty of different mailing lists, for example:
● openstack@lists.openstack.org
● openstack-dev@lists.openstack.org
● openstack-operators@lists.openstack.org
15
Communication - IRC
● OpenStack use Freenode server
● Many different channels:
○ openstack
○ openstack-dev
○ openstack-operators
○ openstack-pl
● History logs from each channel:
http://eavesdrop.openstack.org/irclogs/
16
Communication - IRC meetings
● Teams meetings on IRC
● List of meetings:
http://eavesdrop.openstack.org/
● Important to discuss things with (almost) all team members
● Meetings have agenda and lead person always
Useful tools
18
CLI tool: git-review
Useful commands
$ git review -u
Update change from gerrit
Download change from gerrit
$ git review -d <change_id>
Upload change to gerrit
$ git review
19
CLI tool: gertty
AlternativeI gerrit client
20
OpenStack web based tools
Zuul v3 status page https://zuul.openstack.org/
21
OpenStack web based tools
Logstash page http://logstash.openstack.org/
22
OpenStack web based tools
Logstash page http://logstash.openstack.org/
23
OpenStack web based tools
Grafana: http://grafana.openstack.org
24
OpenStack web based tools
Codesearch: http://codesearch.openstack.org
25
OpenStack web based tools
Stackalytics: http://stackalytics.com
THANK YOU
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews

How to become open stack upstream contributor

  • 1.
    How to becomeOpenStack upstream developer Introduction and useful tips Sławek Kapłoński IRC: slaweq@freenode Twitter: slaweq
  • 2.
    2 About me Introduce myself Howto contribute Different ways of how to contribute to OpenStack Communication in community Various communication methods used in OpenStack Useful tools Some tools which every OpenStack developer should know AGENDA
  • 3.
    3 DevOps in OVH Firstcontact with OpenStack (Havana) 2013 First contribution to OpenStack 2018 About me In OpenStack community Core reviewer in OpenStack Neutron and SDK/shade (Queens) 2017 Software Engineer in Red Hat 2015
  • 4.
  • 5.
    5 Improve documentation Test andreport bugs or feature requests Send patchesCode review Ways of contributing
  • 6.
    6 ● OpenStack storyboard: https://storyboard.openstack.org ●Launchpad https://launchpad.net/openstack ● Blueprints and specs https://blueprints.launchpad.net/openstack Testing and reporting bugs The way to report a bug or begin planning new feature varies on the project.
  • 7.
    7 ● Code reviewalways in Gerrit https://review.openstack.org ● Free, web-based tool, which integrates closely with GIT ● How to start with Gerrit: https://docs.openstack.org/contributors/common/setup-gerrit.html Code review - gerrit
  • 8.
  • 9.
    9 Votes: ● Code reviewcategory: ○ Everyone: -1, 0, +1 ○ Core reviewers: -2, +2 ● Verified category: ○ CI systems: -1, +1 ○ Zuul: -2, +2 ● Approved category: ○ Core reviewers and owner: -1 (Work In Progress), 0 ○ Core reviewers: +1 (Approved) Code review - gerrit Basic concept according to OpenStack
  • 10.
    10 Code review -gerrit Why doing review is important? ● Learn the code base ● You can try to stop merging patches which might have bad impact for Your deployment ● Improve visibility and recognition in community ● More reviews You do - more people will review Your code fast :) ● catch regressions before they're merged ● increase the quality of the code
  • 11.
    11 Code review -gerrit Source: https://github.com/assafmuller/gerrit_time_to_merge
  • 12.
    12 Development workflow withGerrit Source: https://docs.openstack.org/infra/manual/_images/code_review.png
  • 13.
  • 14.
    14 Communication - mailinglists Subscribe at : http://lists.openstack.org/cgi-bin/mailman/listinfo/ Plenty of different mailing lists, for example: ● openstack@lists.openstack.org ● openstack-dev@lists.openstack.org ● openstack-operators@lists.openstack.org
  • 15.
    15 Communication - IRC ●OpenStack use Freenode server ● Many different channels: ○ openstack ○ openstack-dev ○ openstack-operators ○ openstack-pl ● History logs from each channel: http://eavesdrop.openstack.org/irclogs/
  • 16.
    16 Communication - IRCmeetings ● Teams meetings on IRC ● List of meetings: http://eavesdrop.openstack.org/ ● Important to discuss things with (almost) all team members ● Meetings have agenda and lead person always
  • 17.
  • 18.
    18 CLI tool: git-review Usefulcommands $ git review -u Update change from gerrit Download change from gerrit $ git review -d <change_id> Upload change to gerrit $ git review
  • 19.
  • 20.
    20 OpenStack web basedtools Zuul v3 status page https://zuul.openstack.org/
  • 21.
    21 OpenStack web basedtools Logstash page http://logstash.openstack.org/
  • 22.
    22 OpenStack web basedtools Logstash page http://logstash.openstack.org/
  • 23.
    23 OpenStack web basedtools Grafana: http://grafana.openstack.org
  • 24.
    24 OpenStack web basedtools Codesearch: http://codesearch.openstack.org
  • 25.
    25 OpenStack web basedtools Stackalytics: http://stackalytics.com
  • 26.