Download - OpenStack Upstream Training Report
![Page 1: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/1.jpg)
OpenStack Upstream Training Report
June/19/2014
Shuichiro Makigaki
Datastore Platform Group,
System Platform Development Section,
Global Infrastructure Development Department
![Page 2: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/2.jpg)
2
Agenda
1. Self Introduction
2. What is Upstream Training?
• Objectives
• Schedule
3. Training Report
4. Thoughts
5. Short QA
![Page 3: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/3.jpg)
3
Self Introduction
History
[1987 March 9th] Born in Nagano
[2012 April 1st ~] Join Rakuten
[2014 April ~] Join OpenStack Project
Current Job
• Datastore Admin/Architect (Clustrix)
• Infra web tool development (RoR)
• OpenStack
座右の銘: 原理は単純を、構造は複雑を極め、人は最も人らしく
長所: 考える・悩む・調べる・本を読む・黙る
短所: 喋らない・喋ることが無い・喋ることが思いつかない
Frequently Asked Questions:
Q1. 休日何してるんですか?
Q2. 私も本好きです!何読まれるんですか?
Q3. 趣味グラミングいいですね!何してるんですか?
Q4. でもなぜインフラなんかに?
APPLESEED
Masamune Shirow
![Page 4: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/4.jpg)
4
What is Upstream Training?
![Page 5: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/5.jpg)
5
Upstream
Training
Conference
In Atlanta
Design
Summit
What is Upstream Training?
Upstream (software development)
In software development, upstream refers to a direction toward the
original authors or maintainers of software that is distributed as source
code, and is a qualification of either a bug or a patch.
From Wikipedia, the free encyclopedia
![Page 6: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/6.jpg)
6
Where is Atlanta?
Georgia World Congress Center
![Page 7: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/7.jpg)
7
Objectives
Faster integration of the companies product roadmap into the
OpenStack release cycle
Successfully contribute one real world patch to an OpenStack
component
Master the technical tools
Understand the OpenStack contribution workflow and social norms
In addition,
• Make connection
• Introduce the training to your boss!
• Leaded by developers, not sales person.
![Page 8: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/8.jpg)
8
Objectives
× Learn architecture of OpenStack components
× Learn source code structure
× Learn hidden parameters
× Learn actual operation know-how
× Learn the best management practice
![Page 9: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/9.jpg)
9
Training Schedule
Online mentoring 1 A week before Day 1
• Choice of a contribution, via email, with each participant
How OpenStack is made Day 1
• Learn and practice git, gerrit, IRC
The theory of contribution Day 2
• Lego contribution simulation
• Individual presentation of the contribution plan
Online mentoring 2 A week after Day 2
![Page 10: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/10.jpg)
10
Training Report
![Page 11: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/11.jpg)
11
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
A week before Day 1
Pick a few (3 or so) bugs from the low hanging fruit list or elsewhere (it
is up to you) look like good candidates for you to work on during the
training
• Mentor will help you pick one.
It is best to chose a contribution that looks easy.
• The goal of the training will be to get your work accepted
upstream.
• Even the simplest work is an opportunity to learn.
![Page 12: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/12.jpg)
12
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Day 1 (Morning)
How OpenStack is made
(3h including 1h30 exercises)
1. Release cycle
2. Relevant actors
3. Technical Committee
4. Program ecosystem
5. Design summits
6. IRC meetings
![Page 13: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/13.jpg)
13
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Day 1 (Afternoon)
Workflow of an OpenStack
contribution and tools
(3h including 2h exercises)
1. devstack
2. How to contribute
3. launchpad
4. gerrit workflow
5. Branching model
6. reviewing
7. writing a commit message
8. jenkins
![Page 14: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/14.jpg)
14
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Day 2
1. The Contribution Process (3 hours)
2. Agile for Contributors (15 min)
3. Contribution Simulation (1 hour)
4. Contribution Planning (2 hours)
![Page 15: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/15.jpg)
15
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Day2 - The Contribution Process
Philosophy of open source contribution
Project pulse
Who's behind ?
Project social groups
Assess your approach
Engage immediately
Play with your network
Smaller tasks
Choosing a question
Code of conduct
Disagree
Understanding the Conventions
Explain what you do
Prepare the backport
Local and upstream
Good workflow
Bad workflow
Quantify the delta
Speeding the acceptance
Timeframe
Building karma
Parallelizing
From easy to difficult
Archive and collect
![Page 16: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/16.jpg)
16
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Day 2 - Lego: What agile is.
Upstream project : a Lego town
Company deadline : Lego exhibition
Epic : become a major contributor and
demonstrate the company skills during
the exhibition
• planning (5 min) → building (15
min) → reviewing (5 min)
Actor
• Upstream (Board, Technical Committee, Core)
• Company (CEO, Product owner, Scrum Master, Team members)
• Free Software contributors (Distracted, Controversial, Agreeable…)
![Page 17: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/17.jpg)
17
References
Training materials are available at:
https://wiki.openstack.org/wiki/OpenStack_Upstream_Training/Info
You can re-experience the training by reading them all.
![Page 18: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/18.jpg)
18
Thoughts
![Page 19: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/19.jpg)
19
Language barrier
Contribution is not just about being technically savvy. It's also about
cooperation and you will get an opportunity to practice from day one :-) For
instance, the language barrier is a handicap and an opportunity to help
or receive help. Native english speakers already noticed I'm not a native
english speaker and kindly refrained from criticizing me. I acknowledge
this problem and from time to time I'll ask for help to clarify an explanation. If
it turns out that my english is better than someone else, I'll return the favor
and gladly help rewrite a mail or rephrase a sentence.
From mentor’s email
![Page 20: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/20.jpg)
20
Language barrier
Lack of English listening ability
Can not understand lecture completely
• Mottainai!
Can not understand Exercise completely
However, can not ask a question!
But, anyone is kind basically even if you speak slowly.
• Keep accuracy, honesty and professionalism
Nervous is not a problem, but don’t hesitate.
![Page 21: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/21.jpg)
21
Import the training to Japan!
Required
• All!
• including free drink & lunch
Should be considered
• Lego: Alternative agile training
• Exercise: Make it clear. Sometimes vague…
Wanted
• Choose bugs carefully that will be fixed
• How to write better emails to community mailing list
• How to dive source code (gnu global, IDE, call graph…)
• How about other opensouce community style?
(Linux kernel, …, Github, bugzilla)
• How about other contribution way? (documentation, infra)
![Page 22: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/22.jpg)
22
Others
Communication
• Don’t depend on Launchpad and mailing list
• Instead, use IRC!
• Push codes to gerrit, as well as discussing
• Try other contribution ways • Documentation, code review, comments…
• Keep accuracy, honesty and professionalism
Don’t hesitate
• Everyone is kind
, and never give up
• recheck no bug, recheck bug,…
• Ignored? Say “Hello, again!” on IRC http://openstackreactions.enovance.com/2014/01/keep-hitting-recheck-no-bug-in-reviews/
![Page 23: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/23.jpg)
23
A week before Training
Day 1
Training
Day 2 Conference
A week
after Day 2
Online Meeting after Day2
![Page 24: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/24.jpg)
24
Let’s start contribution!
![Page 25: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/25.jpg)
25
Searching bug…
![Page 26: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/26.jpg)
26
But, incomplete… (already fixed)
![Page 27: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/27.jpg)
27
np. searching bug again…
![Page 28: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/28.jpg)
28
Communicate well
![Page 29: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/29.jpg)
29
OK, Push!
![Page 30: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/30.jpg)
30
Reviewed!
but “-1”… OK, what should I fix..?
![Page 31: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/31.jpg)
31
……?!
![Page 32: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/32.jpg)
32
![Page 33: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/33.jpg)
33
Never give up!
![Page 34: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/34.jpg)
34
And, push!
![Page 35: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/35.jpg)
35
Wow! Quick review!
![Page 36: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/36.jpg)
36
Recheck
![Page 37: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/37.jpg)
37
Recheck!
![Page 38: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/38.jpg)
38
Recheck!!
![Page 39: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/39.jpg)
39
Recheck!!!
![Page 40: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/40.jpg)
40
Recheck!!!!
![Page 41: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/41.jpg)
41
Review +2!
![Page 42: OpenStack Upstream Training Report](https://reader034.vdocuments.net/reader034/viewer/2022042613/54b5fd2a4a795946268b4575/html5/thumbnails/42.jpg)
42
Thank you for listening.