Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Upcoming SlideShare
Jenkins勉強会
Jenkins勉強会
Loading in …3
×
1 of 24

More Related Content

You Might Also Like

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

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と同じようなことが出来ます master feature 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

Editor's Notes

  • The ui-changes branchBuildHive
  • ×