Jump to: navigation, search

RACK/Contributing/ja

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 記載不要です。