Your SlideShare is downloading. ×
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
OpenStack Contribution Howto
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

OpenStack Contribution Howto

1,252

Published on

Tips and procedures to post patches to OpenStack. …

Tips and procedures to post patches to OpenStack.
Dec 22, 2012 meeting of Japan OpenStack User Groups

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,252
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
14
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. OpenStack Contribution HowTo Akihiro Motoki Japan OpenStack Users Group Dec 22th, 2012
  • 2. CLA 手続き• OpenStack に contribution できる状態になる には、最終的に launchpad の openstack-cla グループのメンバーとして承認してもらう必要 あり。• 手順は OpenStack Wiki の HowToContribute に詳しく書かれている。 – http://wiki.openstack.org/HowToContribute• 次ページに具体的な手順を示す。
  • 3. CLA手続き~具体的な手順~1. Launchpad にアカウントを作成する。 http://launchpad.net/2. CCLA では、組織単位の Contributor のメンバーリストがあり、 そこに 入っているかを確認する。3. Individual Contributor License agreement (ICLA) に署名する。 – http://wiki.openstack.org/CLA – Developer 各人が行う必要がある。4. Contributors Wiki ページに自分を追加する。 – http://wiki.openstack.org/Contributors – Wiki の先頭にある指示にしたがって Launchpad ID, CLA Echosign Transaction Number, 所属を入力する – Wiki の編集を行うためには、Wiki にログインする必要がある。 – Launchpad の OpenID 連携の確認画面などが出て来るが、指示に従う。5. Launchpad 上の openstack-cla グループへの参加申請を行う。 – https://launchpad.net/~openstack-cla にアクセスして、 「Join the team」を選 んで、参加申請を行う。 – 参加申請が承認されるのを待つ。 • Approver が何を確認するのかは Wiki に書いてあります。 • 却下 (declined) された場合は何かの手順が抜けています。通知メールに理由が書い てあるので、それを参照して問題を解決すれば必ず Approve されます。
  • 4. パッチ投稿手順• OpenStack のパッチは Gerrit 上でのレビューを 経て、承認されれば GitHub の Repository に マージされる。 – Contributor は必ず Gerrit にパッチを投稿することに なる。• 詳細手順 : http://wiki.openstack.org/DevQuickstart – 日本語版 : http://wiki.openstack.org/DevQuickstart/ja • (注意) 日本語版の方は古い場合があります。古ければ更 新してもらえると助かります。
  • 5. Gerrit へのパッチ投稿準備• Gerrit は SSH が review.openstack.org:29418 で動作している。 – 接続するには SSH公開鍵の登録が必要• キーの生成 : ssh-keygen – 形式は RSA でも DSA でもよい。• 作成した公開鍵を Launchpad に登録 – Launchpad から Gerrit への情報の同期にはしばらく時間がかかる。 – 急ぎの場合は Gerrit に公開鍵を直接登録してもよい (Settings → SSH Public Keys)• git-review をインストールする – Ubuntu や Fedora ではパッケージになっている。Pypi でも配布され ている。• “git review -s“ が成功すれば OK – “git review –s” は Git Repository ごとに必要
  • 6. Proxy 内からのアクセス• Gerrit は SSH が review.openstack.org:29418 で動作している。 – SSH 経由でアクセスする必要があり、Proxy の中 から投稿するためには SSH の設定が必要。 – “corkscrew” (or “connect-proxy”) を利用することで、通常の HTTP Proxy 経由 でのアクセスが可能。 – Corkscrew のインストール : sudo apt-get install corkscrew – ~/.ssh/config の設定$ less ~/.ssh/configHost review.openstack.orgProxyCommand /usr/bin/corkscrew proxyserver.example.net 8080 %h %p
  • 7. パッチ作成• パッチの作成は通常の Git での開発と同じ – Topic Branch で作業するのが原則 • Topic Branch 名は bug/<bug#> か bp/<blueprint-name> にするのが慣例。 • 必ずしもバグ報告をする必要はないが、Git Commit ログですべてを説明するよりも、バ グ報告の中で報告した方がよい。あとは、バグ報告をした方が Topic Branch 名を悩まな くても済むというメリットもある。 – パッチは必ず 1 Commit にすること。 • Gerrit の制約で Patch Series は扱えない。• Commit Message にはバグ番号やBlueprint の情報を記載する – “Fixes bug 123456” “blueprint my-blueprint” – Gerrit ではLaunchpadへのリンクが作成される• Commit を作成したら、Commit Message に “Change-Id: xxxxx” が入って いることを確認する。 – (当たり前だが) メッセージは “git show” で確認できる。 – 入っていない場合は、手元の Git Local Repo で “git review --s” を一度も実行 していない。 “git review -s” を実行してから、”git commit --amend” で Commit Message を作り直すと Change-Id が付与される。 – 実は、Change-Id が付与されていない状態でも git review で Gerrit に上げる こともできる。その場合は自動で付与される。
  • 8. パッチ修正• Gerrit 上でのレビューでフィードバックをもらっ たら、必要に応じてパッチを修正します。 – 変更の Commit は “git commit --amend” で行うこ と。変更履歴は Gerrit 上で参照できる。 – Gerrit 上では Change-Id で同じパッチかを識別し ているので、Change-Id は変更しないこと

×