Jenkinsによる検証済みマージ川口耕介Architect, CloudBees, Inc.Lead/Creator, Jenkins project                    ©2010 CloudBees, Inc. All ...
もっとJenkinsに仕事をさせよう    次にJenkinsに何をさせようか?        ©2010 CloudBees, Inc. All Rights   2                  Reserved
「テストに成功したらチェックイン」業• テストは計算機を酷使する – 同時に他の作業がしづらい – 手元のラップトップはより重要な作業に使   われるべき• 人間が計算機を待ってはいけない – 開発者の頭はより重要な作業に使われるべ   き –...
Fire-and-Forget             ©2010 CloudBees, Inc. All Rights   4                       Reserved
理由2:大規模プロジェクト開発者は一定確率で問題チェックインをすると仮          定           ↓       人数が増えるほど コードに問題が発生している確率が高まる100%80%60%40%20% 0%       0  ...
「テストに成功したらチェックイン」業の自動化• 問題点 – VCSにコミットしないとテストしてくれな   い – コミットに問題があると他人に迷惑がかか   る – コミットする前に手元でもっとテストしな   ければ…? – あれ?• コミット...
蓋を開けてみると…• Diffをやりとりするのはあまり便利でな  い – 次の作業へ進む時にdiffをどこに保存する? – 同僚に見せるには? – 手戻りが発生した時にdiffを再適用? – ファイル属性、シンボリックリンク、リ   ネーム• ...
それって車輪の再発明?「バージョン管理システム 」と人は呼ぶ      ©2010 CloudBees, Inc. All Rights   8                Reserved
Pre-tested commit + VCS =• 開発者はテストしたい変更をコミットを  する  – 但し、trunkやmasterにではなく、こっそり    と• Jenkinsはそのコミットを検査する• 検査に合格したコミットはtrun...
Gitの場合            ©2010 CloudBees, Inc. All Rights         ©2010 CloudBees, Inc. All                  Reserved
モデル• 開発者の仕事 – 自分のブランチにコミット – 時々リベースする• 本物のブランチと区別するために  「personal/kohsuke」などの名前規約を  使う• Jenkinsの仕事 – 開発者ブランチへのプッシュを監視 – 検証...
モデル master kohsuke• マージ後の結果がテストされるのが肝心           ©2010 CloudBees, Inc. All Rights   12                     Reserved
デモ     ©2010 CloudBees, Inc. All Rights               Reserved
お勧めできる理由• 簡単にはじめられる – リポジトリは一つでよい – 一人で勝手に始められる• みんなで使える – Jenkinsのジョブも一つでよい – 同じモデルがfeature branchにも使える• 「終わりよければ全てよし」モデル...
Subversionは?• Svnmergeプラグインを作りました  – Git程ではないけれど、Subversionも進化し    た• Gitと同じようなことが出来ますmasterfeature branch                ...
注意事項      • Pushとrebaseはセットで行われる        master        feature branch                            ©2010 CloudBees, Inc. All ...
デモ     ©2010 CloudBees, Inc. All Rights               Reserved
利点と欠点• Subversionで使える• 部品の組み合わせ方で様々なモデルに対  応• リポジトリにコミットが増える• 履歴をトラックするのが大変に – でも昔に比べればよくなった(svn log –g)          ©2010 Cl...
【宣伝】Gitでこれを更に一歩進めて…• Jenkins Enterprise by CloudBees  – CloudBeesで出しているエンタープライズ版• JenkinsをGit serverにしちゃいました              ...
©2010 CloudBees, Inc. All Rights          Reserved
BuildHive.cloudbees.com• タダで使えます• 使ってみて感想を送ってください             ©2010 CloudBees, Inc. All Rights   21                       ...
結論• もっとJenkinsに仕事をさせよう• Subversionでもできる• より詳しくは、http://jenkins-ci.org/             ©2010 CloudBees, Inc. All Rights   22  ...
リンク• 日本Jenkinsユーザー会 – Aka 日本ビルド職人の集い – http://build-shokunin.org/• メーリングリスト• 勉強会の定期的な開催               ©2010 CloudBees, Inc...
Q&A      ©2010 CloudBees, Inc. All Rights                Reserved
Upcoming SlideShare
Loading in …5
×

Jenkins+Gitによる検証済みマージ(30分版)

3,527 views

Published on

第三回大阪Jenkins勉強会での発表内容です。

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
3,527
On SlideShare
0
From Embeds
0
Number of Embeds
43
Actions
Shares
0
Downloads
16
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide
  • The ui-changes branchBuildHive
  • Jenkins+Gitによる検証済みマージ(30分版)

    1. 1. Jenkinsによる検証済みマージ川口耕介Architect, CloudBees, Inc.Lead/Creator, Jenkins project ©2010 CloudBees, Inc. All Rights Reserved
    2. 2. もっとJenkinsに仕事をさせよう 次にJenkinsに何をさせようか? ©2010 CloudBees, Inc. All Rights 2 Reserved
    3. 3. 「テストに成功したらチェックイン」業• テストは計算機を酷使する – 同時に他の作業がしづらい – 手元のラップトップはより重要な作業に使 われるべき• 人間が計算機を待ってはいけない – 開発者の頭はより重要な作業に使われるべ き – 満足する変更をしたら、次の作業に取り掛 かりたい ©2010 CloudBees, Inc. All Rights 3 Reserved
    4. 4. Fire-and-Forget ©2010 CloudBees, Inc. All Rights 4 Reserved
    5. 5. 理由2:大規模プロジェクト開発者は一定確率で問題チェックインをすると仮 定 ↓ 人数が増えるほど コードに問題が発生している確率が高まる100%80%60%40%20% 0% 0 5 10 15 20 ©2010 CloudBees, Inc. All Rights 5 Reserved
    6. 6. 「テストに成功したらチェックイン」業の自動化• 問題点 – VCSにコミットしないとテストしてくれな い – コミットに問題があると他人に迷惑がかか る – コミットする前に手元でもっとテストしな ければ…? – あれ?• コミットする前にテストしたらどうだろ う – 「pre-tested commit」 ©2010 CloudBees, Inc. All Rights Reserved 6
    7. 7. 蓋を開けてみると…• Diffをやりとりするのはあまり便利でな い – 次の作業へ進む時にdiffをどこに保存する? – 同僚に見せるには? – 手戻りが発生した時にdiffを再適用? – ファイル属性、シンボリックリンク、リ ネーム• こういうのをツールでサポートしないと! ©2010 CloudBees, Inc. All Rights 7 Reserved
    8. 8. それって車輪の再発明?「バージョン管理システム 」と人は呼ぶ ©2010 CloudBees, Inc. All Rights 8 Reserved
    9. 9. Pre-tested commit + VCS =• 開発者はテストしたい変更をコミットを する – 但し、trunkやmasterにではなく、こっそり と• Jenkinsはそのコミットを検査する• 検査に合格したコミットはtrunk/master に現れる ©2010 CloudBees, Inc. All Rights 9 Reserved
    10. 10. Gitの場合 ©2010 CloudBees, Inc. All Rights ©2010 CloudBees, Inc. All Reserved
    11. 11. モデル• 開発者の仕事 – 自分のブランチにコミット – 時々リベースする• 本物のブランチと区別するために 「personal/kohsuke」などの名前規約を 使う• Jenkinsの仕事 – 開発者ブランチへのプッシュを監視 – 検証して上流にマージ ©2010 CloudBees, Inc. All Rights 11 Reserved
    12. 12. モデル master kohsuke• マージ後の結果がテストされるのが肝心 ©2010 CloudBees, Inc. All Rights 12 Reserved
    13. 13. デモ ©2010 CloudBees, Inc. All Rights Reserved
    14. 14. お勧めできる理由• 簡単にはじめられる – リポジトリは一つでよい – 一人で勝手に始められる• みんなで使える – Jenkinsのジョブも一つでよい – 同じモデルがfeature branchにも使える• 「終わりよければ全てよし」モデル ©2010 CloudBees, Inc. All Rights 14 Reserved
    15. 15. Subversionは?• Svnmergeプラグインを作りました – Git程ではないけれど、Subversionも進化し た• Gitと同じようなことが出来ますmasterfeature branch ©2010 CloudBees, Inc. All Rights 15 Reserved
    16. 16. 注意事項 • Pushとrebaseはセットで行われる master feature branch ©2010 CloudBees, Inc. All Rights©2010 CloudBees, Inc. All Reserved 16
    17. 17. デモ ©2010 CloudBees, Inc. All Rights Reserved
    18. 18. 利点と欠点• Subversionで使える• 部品の組み合わせ方で様々なモデルに対 応• リポジトリにコミットが増える• 履歴をトラックするのが大変に – でも昔に比べればよくなった(svn log –g) ©2010 CloudBees, Inc. All Rights 18 Reserved
    19. 19. 【宣伝】Gitでこれを更に一歩進めて…• Jenkins Enterprise by CloudBees – CloudBeesで出しているエンタープライズ版• JenkinsをGit serverにしちゃいました 上流 ssh リポジト リ gate repo ©2010 CloudBees, Inc. All Rights 19 Reserved
    20. 20. ©2010 CloudBees, Inc. All Rights Reserved
    21. 21. BuildHive.cloudbees.com• タダで使えます• 使ってみて感想を送ってください ©2010 CloudBees, Inc. All Rights 21 Reserved
    22. 22. 結論• もっとJenkinsに仕事をさせよう• Subversionでもできる• より詳しくは、http://jenkins-ci.org/ ©2010 CloudBees, Inc. All Rights 22 Reserved
    23. 23. リンク• 日本Jenkinsユーザー会 – Aka 日本ビルド職人の集い – http://build-shokunin.org/• メーリングリスト• 勉強会の定期的な開催 ©2010 CloudBees, Inc. All Rights 23 Reserved
    24. 24. Q&A ©2010 CloudBees, Inc. All Rights Reserved

    ×