Difference between revisions of "RACK/Contributing/ja"
(→Register blueprint) |
|||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
| + | = Getting started = | ||
| + | はじめに、[http://docs.openstack.org/infra/manual/developers.html Developer's Guide]に目を通しておいてください。 | ||
| + | Developer's Guideには、コントリビューションをするため必要なアカウントのセットアップやContributor License Agreementへの署名の手順、およびコミットのプッシュやコードレビューの方法などが記載されています。 | ||
| + | 準備ができたら、次のセクションに進んでください。 | ||
| + | |||
| + | = Setting up your git = | ||
| + | ユーザ名とメールアドレスを設定します。 | ||
| + | git config --global user.name "Firstname Lastname" | ||
| + | git config --global user.email "your_email@youremail.com" | ||
| + | Gerritユーザ名を設定します。 | ||
| + | git config --global gitreview.username "your_gerrit_username" | ||
| + | 設定を確認して下さい。 | ||
| + | git config --list | ||
| + | |||
| + | == Installing git-review == | ||
| + | pip install git-review | ||
| + | |||
| + | = Your first commit = | ||
| + | == Setting up your local branch == | ||
| + | git clone https://github.com/stackforge/rack.git | ||
| + | cd rack | ||
| + | git checkout -b [branch name] | ||
| + | git review -s | ||
| + | "git review -s"コマンド実行時にエラーが出力された場合、SSH鍵の登録やライセンスの署名漏れなどが原因として考えられます。 | ||
| + | もう一度[http://docs.openstack.org/infra/manual/developers.html Developer's Guide]を確認して下さい。 | ||
| + | |||
| + | branch nameは命名規則があります。 | ||
| + | * blueprintを開発する場合: bp/{blueprint name} | ||
| + | * bugのパッチを開発する場合: bug/{bug number} | ||
| + | |||
| + | == Make and push your change == | ||
| + | パッチを書いたら、Gerritにプッシュします。 | ||
| + | Gitのコミットメッセージを書くときは、[http://docs.openstack.org/infra/manual/developers.html OpenStackのガイドライン]に従うようにしてください。 | ||
| + | 以下にいくつか列挙します。 | ||
| + | * コミットメッセージの1行目は50文字以内とする | ||
| + | * 以降の各行は78文字以内とする | ||
| + | * 2行目は空白行とする | ||
| + | * 最終行はblueprintもしくはbugのリンクを記載する | ||
| + | * 各行の末尾に空白が入らないようにする | ||
| + | |||
| + | 例: | ||
| + | Adds a new api | ||
| + | <blank line> | ||
| + | Long multiline description of the change | ||
| + | ... | ||
| + | <blank line> | ||
| + | Implements: blueprint add-new-api | ||
| + | Closes-Bug: #123456 | ||
| + | Change-Id: I4946a16d27f712ae2adf8441ce78e6c0bb0bb657 | ||
| + | |||
| + | Change-Idはgit-reviewによって自動的に付与されます。 | ||
| + | 最終行にはパッチの種類に応じて以下を記載します。 | ||
| + | * blueprintに関するパッチの場合: Implements: blueprint [blueprint name] | ||
| + | * bugに関するパッチの場合 | ||
| + | ** このパッチでクローズされる場合: Closes-Bug: #{bug number} | ||
| + | ** このパッチでbugの一部がFixされる場合: Partial-Bug: #{bug number} | ||
| + | ** 単なる関連を示すだけの場合: Related-Bug #{bug number} | ||
| + | |||
| + | そのあと、パッチをプッシュします。 | ||
| + | git commit -a | ||
| + | git review -v | ||
| + | |||
| + | |||
= Blueprints = | = Blueprints = | ||
OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBlueprint運用フローについては [https://wiki.openstack.org/wiki/Blueprints Blueprints] を参照してください。 | OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBlueprint運用フローについては [https://wiki.openstack.org/wiki/Blueprints Blueprints] を参照してください。 | ||
| Line 48: | Line 111: | ||
Specificationは日本語でOKとします。 | Specificationは日本語でOKとします。 | ||
フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください。 | フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください。 | ||
| + | |||
| + | |||
| + | = Bugs = | ||
| + | OpenStackのBug運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBug運用フローについては [https://wiki.openstack.org/wiki/Bugs Bugs] を参照してください。 | ||
| + | |||
| + | == Bugs lifecycle == | ||
| + | * [https://bugs.launchpad.net/python-rack Launchpad]にてbugを起票します。 | ||
| + | * bugの再現性が確認されたら、[https://launchpad.net/~rack-drivers RACK Drivers]のメンバーはImportanceを決定し、Statusを''Confirmed''に変更します。 | ||
| + | * パッチをGerritにプッシュすると、Statusが''In progress''となり、パッチ投稿者がAssigneeとなります。 | ||
| + | * パッチがマージされると、Gerritにより自動的にStatusが''Fix Commited''に変更されます。 | ||
| + | |||
| + | == Register bug == | ||
| + | Launchpad上の記述は全て英語とします。 | ||
| + | bugを起票するときは、以下に従ってください。 | ||
| + | |||
| + | {| border="1" | ||
| + | | ''Summary'' | ||
| + | | bugの内容を簡潔に記載します。 | ||
| + | |- | ||
| + | | ''Further information'' | ||
| + | | バグの内容を詳細に記載します。説明が長くなるようであれば、[[#Specification]]と同じようにWikiを作ってリンクを貼ってもいいかもしれません。 | ||
| + | |- | ||
| + | | ''This bug contains information that is'' | ||
| + | | ''Public''にしてください。 | ||
| + | |- | ||
| + | | ''Extra options'' | ||
| + | | 記載不要です。 | ||
| + | |} | ||
Latest revision as of 07:33, 9 June 2015
Contents
Getting started
はじめに、Developer's Guideに目を通しておいてください。 Developer's Guideには、コントリビューションをするため必要なアカウントのセットアップやContributor License Agreementへの署名の手順、およびコミットのプッシュやコードレビューの方法などが記載されています。 準備ができたら、次のセクションに進んでください。
Setting up your git
ユーザ名とメールアドレスを設定します。
git config --global user.name "Firstname Lastname" git config --global user.email "your_email@youremail.com"
Gerritユーザ名を設定します。
git config --global gitreview.username "your_gerrit_username"
設定を確認して下さい。
git config --list
Installing git-review
pip install git-review
Your first commit
Setting up your local branch
git clone https://github.com/stackforge/rack.git cd rack git checkout -b [branch name] git review -s
"git review -s"コマンド実行時にエラーが出力された場合、SSH鍵の登録やライセンスの署名漏れなどが原因として考えられます。 もう一度Developer's Guideを確認して下さい。
branch nameは命名規則があります。
- blueprintを開発する場合: bp/{blueprint name}
- bugのパッチを開発する場合: bug/{bug number}
Make and push your change
パッチを書いたら、Gerritにプッシュします。 Gitのコミットメッセージを書くときは、OpenStackのガイドラインに従うようにしてください。 以下にいくつか列挙します。
- コミットメッセージの1行目は50文字以内とする
- 以降の各行は78文字以内とする
- 2行目は空白行とする
- 最終行はblueprintもしくはbugのリンクを記載する
- 各行の末尾に空白が入らないようにする
例:
Adds a new api <blank line> Long multiline description of the change ... <blank line> Implements: blueprint add-new-api Closes-Bug: #123456 Change-Id: I4946a16d27f712ae2adf8441ce78e6c0bb0bb657
Change-Idはgit-reviewによって自動的に付与されます。 最終行にはパッチの種類に応じて以下を記載します。
- blueprintに関するパッチの場合: Implements: blueprint [blueprint name]
- bugに関するパッチの場合
- このパッチでクローズされる場合: Closes-Bug: #{bug number}
- このパッチでbugの一部がFixされる場合: Partial-Bug: #{bug number}
- 単なる関連を示すだけの場合: Related-Bug #{bug number}
そのあと、パッチをプッシュします。
git commit -a git review -v
Blueprints
OpenStackのBlueprint運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBlueprint運用フローについては Blueprints を参照してください。
Blueprints lifecycle
- Launchpadにてblueprintを起票します。
- RACK DriversのメンバーがPriorityを指定します。
- 開発を開始したら、Implementationを"Started"に変更します。
- 開発が完了したら、"Implemented"に変更します。
Register blueprint
Launchpad上の記述は全て英語とします。 blueprintを起票するときは、以下に従ってください。
| Name | 他のblueprintと区別できるハイフン付き文字列 (ex. api-to-create-process) |
| Title | このBlueprintで何をするのかを簡潔に説明する文字列 (ex. Create API to create processes) |
| Specification | Wikiに新規ページを作成し、そのURLを指定します。 |
| Summary | 1~2行でいいので、英語で簡潔な説明を記述してください。 |
| Assignee | 空欄で構いません(担当者が決まっていれば入力) |
| Drafter | Blueprintを起票した人の名前が自動で入ります。 |
| Approver | 空欄で構いません。 |
| Definition Status | Newにしてください。 |
| Propose for sprint | (nothing selected) のままにしてください。 |
Specification
blueprintの詳細は新規にWikiページを作成し、そこに記述します。
- htps://wiki.openstack.org/wiki/RACK/{機能名}/ja
Specificationは日本語でOKとします。 フォーマットは自由ですが、他のOpenStackプロジェクトのWikiを参考にしてください。
Bugs
OpenStackのBug運用フローに従うようにしていますが、まだプロジェクトが小規模なのでいくらか簡略化しています。OpenStackにおけるBug運用フローについては Bugs を参照してください。
Bugs lifecycle
- Launchpadにてbugを起票します。
- bugの再現性が確認されたら、RACK DriversのメンバーはImportanceを決定し、StatusをConfirmedに変更します。
- パッチをGerritにプッシュすると、StatusがIn progressとなり、パッチ投稿者がAssigneeとなります。
- パッチがマージされると、Gerritにより自動的にStatusがFix Commitedに変更されます。
Register bug
Launchpad上の記述は全て英語とします。 bugを起票するときは、以下に従ってください。
| Summary | bugの内容を簡潔に記載します。 |
| Further information | バグの内容を詳細に記載します。説明が長くなるようであれば、#Specificationと同じようにWikiを作ってリンクを貼ってもいいかもしれません。 |
| This bug contains information that is | Publicにしてください。 |
| Extra options | 記載不要です。 |