Difference between revisions of "OpenStack Upstream Training/Info/ja"
Line 156: | Line 156: | ||
( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] ) | ( [http://dachary.org/loic/openstack-training/training-agile-for-contributors.odp] [http://dachary.org/loic/openstack-training/training-agile-for-contributors.pdf] ) | ||
− | * | + | * アジャイルの適用 |
− | * | + | * 顧客は誰か? |
− | * | + | * 企業とアップストリームの製品オーナー |
− | * | + | * アップストリームへのスプリントレビュープレゼンテーション |
=== 貢献のシミュレーション (1時間) === | === 貢献のシミュレーション (1時間) === |
Revision as of 00:13, 8 September 2014
Contents
はじめに
With over 2000 developers from 80 different companies worldwide, OpenStack is one of the largest collaborative software-development projects. Because of its size, it is characterized by a huge diversity in social norms and technical conventions. These can significantly slow down the speed at which newcomers are successful at integrating their own roadmap into that of the OpenStack project.
We've designed a training program to help professional developers negotiate this hurdle. It shows them how to ensure their bug fix or feature is accepted in the OpenStack project in a minimum amount of time. The educational program requires students to work on real-life bug fixes or new features during two days of real-life classes and online mentoring, until the work is accepted by OpenStack. The live two-day class teaches them to navigate the intricacies of the project's technical tools and social interactions. In a followup session, the students benefit from individual online sessions to help them resolve any remaining problems they might have.
目的
- 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
対象読者
- Developers
- System administrators
必要条件
- Being able to read and write English at a technical level.
- If contributing code, being technically proficient enough to carry out simple bug fixes in the project.
- If contributing documentation, being able to produce documents in the project's chosen infrastructure.
- Having at least 8 hours a week to dedicate to the project, be it through programming or through interacting with the community.
期間
- Face-to-face section: 2 days
- Online section: 10 one-hour individual mentoring sessions over a period of 4 to 10 weeks
コース概要
1日目
はじめに
- A week before Day 1: choice of a contribution, via email, with each participant
- Day 1: How OpenStack is made
- Day 1: Learn and practice git, gerrit, IRC
- Day 2: The theory of contribution
- Day 2: Lego contribution simulation
- Day 2: Individual presentation of the contribution plan
- Day 2: Online mentoring
OpenStack はどのように作られるか (3時間、1時間30分の実習を含む)
- Release cycle ( slides.odp slides.pdf )
- Planning (Design, Discuss and Target)
- Implementation (Milestone iterations)
- Pre-release (Release Candidates dance)
- Exercise: based on the Icehouse release schedule find the URL of a document or a patch that belongs to each of the above steps.
- Relevant actors ( slides.odp slides.pdf )
- Technical Committee ( slides.odp slides.pdf )
- Decide what is an OpenStack Program
- meetings
- Exercise: read archived and briefly comment on keystone document
- PTLs
- APC
- ATC
- Exercise: each APC / ATC in the class add a URL to the etherpad proving it
- Program ecosystem ( slides.odp slides.pdf )
- Incubated
- Integrated
- Core
- Stackforge
- Exercise: What kind of Program do you contribute to ?
- Design summits ( slides.odp slides.pdf )
- propose sessions
- attend or lead a session
- Exercise: Add a session proposal regarding your contribution in an etherpad, review two proposals
- IRC meetings ( slides.odp slides.pdf )
- modified meetbot
- #info - Add an info item to the minutes. People should liberally use this for important things they say, so that they can be logged in the minutes.
- #action - Document an action item in the minutes. Include any nicknames in the line, and the item will be assigned to them. (nicknames are case-sensitive)
- #help - Add a "Call for Help" to the minutes. Use this command when you need to recruit someone to do a task. (Counter-intuitively, this doesn't provide help on the bot)
- Exercise: lunch menu online meeting
OpenStack 貢献のワークフローおよびツール (3時間、2時間の実習を含む)
- devstack ( slides.odp slides.pdf )
- Ubuntu or Fedora
- git clone https://github.com/openstack-dev/devstack.git
- minimal configuration
- cd devstack; ./stack.sh
- Exercise: get the code for the targeted contribution
- HOW to contribute URL ( slides.odp slides.pdf )
- puppet stackforge
- documentation
- training guides
- Excercise: Apply for individual membership and sign the CLA
- launchpad ( slides.odp slides.pdf )
- blueprints
- bugs
- Exercise: review other launchpad bugs and improve yours
- gerrit workflow ( slides.odp slides.pdf )
- account setup
- git review installation
- ssh setup
- project setup
- gerrit workflow
- running unit tests
- review dependencies
- Exercise: push a wip or draft and invite reviewers
- Branching model ( slides.odp slides.pdf )
- development
- stable
- Exercise: checkout the latest stable branch
- reviewing ( slides.odp slides.pdf )
- writing a commit message ( slides.odp slides.pdf )
- reference to a bug or a blueprint
- amending a commit message
- Exercise: review each other messages on the draft
- jenkins ( slides.odp slides.pdf )
- Exercise: add an error and match it to the jenkins message
2日目
貢献プロセス (3時間)
( [1] [2] )
- Take the pulse of the project.
- Figure out who's behind it.
- Determine the project's social groups.
- Assess your approach.
- Engage immediately.
- Play with your network.
- Perform the smaller tasks.
- Choose a question.
- Familiarize yourself with the code of conduct.
- Understand the conventions.
- Explain what you do.
- Prepare the backport.
- Learn what's local and what's upstream.
- Learn what distinguishes good work flow from bad work flow.
- Quantify the delta.
- Speed up the acceptance.
- Determine the time frame.
- Maximize karma.
- Work in parallel.
- Archive and collect.
貢献者向けアジャイル (15分)
( [3] [4] )
- アジャイルの適用
- 顧客は誰か?
- 企業とアップストリームの製品オーナー
- アップストリームへのスプリントレビュープレゼンテーション
貢献のシミュレーション (1時間)
受講者は、小道具として Lego ブロックを使用した、仮想的な貢献のシミュレーションを実施します。アップストリームが構築した Lego タウンを拡張することを目標にします。受講者はチームに分けられます。講師は、企業の製品オーナーとアップストリームを交互に実施します。
貢献の計画 (2時間)
( [5] [6] )
- 受講者は、スライドのテンプレートを使用して、計画した貢献に関する 5 分間のプレゼンテーションを準備します。
- プレゼンテーションのサンプルが、講師により例として提供されます。
- 受講者の各グループは、以下を記載したプレゼンテーションを準備します。
- オンラインセッション中に取り組む予定の貢献内容
- アップストリームに関与する方法
- 仲間の予定に貢献する方法
- 一緒に取り組む人
- 受講者の各グループは、スライドをクラスに提供します。
このページは、原文の 2014年5月11日 20:32 版 を日本語翻訳しています。