Successfully reported this slideshow.
Your SlideShare is downloading. ×

ドリコムJenkins勉強会資料

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 28 Ad

More Related Content

Slideshows for you (20)

Advertisement

Similar to ドリコムJenkins勉強会資料 (20)

More from Go Sueyoshi (a.k.a sue445) (19)

Advertisement

ドリコムJenkins勉強会資料

  1. 1. ドリコムJenkins勉強会 2013/04/17 @sue445 Copyright Drecom Co., Ltd. All Rights Reserved.
  2. 2. 自己紹介 @sue445 ● drecomで社内ツールとか作ってま す ● TDDBC(TDDのワークショップ)でよ くTAをやってます ● 自称:サザエヴァンジェリスト ● 他称:歩くJenkins ● コミュニティ ○ 渋谷.rb ○ 新宿.rb ○ TDD BootCamp ○ appengine ja night Copyright Drecom Co., Ltd. All Rights Reserved.
  3. 3. 【宣伝】あずにゃんペロペロ〜 http://azusaar.appspot.com/ Copyright Drecom Co., Ltd. All Rights Reserved.
  4. 4. 2011: Mashup Awards 7 授賞式 http://mashupawards.tumblr.com/post/15436635038/12-11-ma7-4-3 Copyright Drecom Co., Ltd. All Rights Reserved.
  5. 5. Note ドリコムでは意識の高い人達がアプリ単 位でJenkinsを乱立させてるので、これは あくまで社内ぼっちPJでの運用例です。 Copyright Drecom Co., Ltd. All Rights Reserved.
  6. 6. Agenda 1. What is Jenkins? 2. Run Jenkins 3. "Ruby on Rails" on Jenkins (Tips and Plugins) Copyright Drecom Co., Ltd. All Rights Reserved.
  7. 7. What is Jenkins? ● CI(Continuous Integration = 継続的インテグ レーション)ツールの1つ ● gitやsvnのリポジトリにコミットされた時に自動的 にサーバ上でテストを実行して結果をメールや チャットなどで表示する ● cronの擬人化 ● JenkinsはJavaで作られています(重要) http://jenkins-ci.org/ Copyright Drecom Co., Ltd. All Rights Reserved.
  8. 8. イメージ図 Repository push pull Result User Jenkins Copyright Drecom Co., Ltd. All Rights Reserved.
  9. 9. Run Jenkins (Simple Pattern) jenkins.warをダウンロードして java -jar jenkins.war Copyright Drecom Co., Ltd. All Rights Reserved.
  10. 10. Run Jenkins (Recommendation) Server Instance jenkins.war FrontServer AppServer 参考URL: http://sue445.hatenablog.com/entry/2013/01/16/232443 Copyright Drecom Co., Ltd. All Rights Reserved.
  11. 11. Other CI Services ● cloudbees (http://www.cloudbees.com/) ○ Jenkinsの中の人が作ってるクラウドサービス ○ Jenkinsのアップデートも勝手にやってくれる ○ 制限はあるけど無料で使える ■ 無料枠だけだとバンドルされてるpluginしか使えない のが痛い ● Travis.ci (http://travis-ci.org/) ○ 無料で使える ○ Jenkinsに比べたら自由度は低いけどgithubとの連携は 楽 ■ public repositoryに公開してるならこれ使うのが一番 いいと思う ○ drecomだとactiverecord-turntableや android_market_apiで利用 Copyright Drecom Co., Ltd. All Rights Reserved.
  12. 12. "Ruby on Rails" on Jenkins ● 去年出版されたので比較的情 報が新しい ● Rails, Android, Perlの章で構 成 ● Jenkins+Railsの組み合わせ で体系的に書いてあるのはこ の本くらいしかないと思う Copyright Drecom Co., Ltd. All Rights Reserved.
  13. 13. Ruby 1.9と2.0を同時にビルドする 既存のジョブをコピーして rvmで2.0.0を利用 Copyright Drecom Co., Ltd. All Rights Reserved.
  14. 14. 1.9.3のタブ Copyright Drecom Co., Ltd. All Rights Reserved.
  15. 15. 2.0.0のタブ Copyright Drecom Co., Ltd. All Rights Reserved.
  16. 16. メリット/デメリット メリット ● 常に1.9系と2.0系でビルドしていればいつでも 2.0に移行できる ○ 白金台のC社には負けてられない! デメリット ● 同じジョブをコピーしてるので設定を変えたい時 はその分書きなおす必要がある Copyright Drecom Co., Ltd. All Rights Reserved.
  17. 17. Caution! データベース名を変えずに複数同時にテストするとDBロックで落 ちることがあるw 対策(やった) ● 1つずつビルドを走らせる(アクティブなアプリが少なけばあ り) a. ジョブの同時実行数を1つにする(今の運用) b. 1.9のビルドが成功した後に2.0の方をビルド 対策(考えただけで実践はしてない) ● rubyのバージョンから動的にデータベース名を作る ● 別サーバでSlaveとして動かす Copyright Drecom Co., Ltd. All Rights Reserved.
  18. 18. When. Travis.ci ymlに追記するだけでOK Copyright Drecom Co., Ltd. All Rights Reserved.
  19. 19. iPadをXFD化 JSONでAPIが提供されてるのでjsでサクッと作れる https://github.com/sue445/jenkins_xfd Copyright Drecom Co., Ltd. All Rights Reserved.
  20. 20. Custom Job Icon Plugin ホスティング先によっ てアイコンを使い分 け Copyright Drecom Co., Ltd. All Rights Reserved.
  21. 21. 個人Jenkins apple-touch-icon.pngを使うとよさげ Copyright Drecom Co., Ltd. All Rights Reserved.
  22. 22. Slow Testのプロット total time worst top http://sue445.hatenablog.com/entry/2013/03/17/015836 Copyright Drecom Co., Ltd. All Rights Reserved.
  23. 23. embeddable-build-status plugin READMEとかにビルドステータスを表示 Copyright Drecom Co., Ltd. All Rights Reserved.
  24. 24. Ruby metrics plugin Copyright Drecom Co., Ltd. All Rights Reserved.
  25. 25. DRY Plugin DRY = Don't Repeat Yourself (重複排除の原則) Copyright Drecom Co., Ltd. All Rights Reserved.
  26. 26. Beer Plugin Copyright Drecom Co., Ltd. All Rights Reserved.
  27. 27. Jenkinsを1から入れた感想 ● JenkinsはpluginやAPIが豊富なのでいろいろ集計で きて楽しい ● アプリを作り始める時からJenkinsでビルドしておくこと でコードの成長を視覚化できる ● ローカルでテストを動かすよりサーバでテストを動かし た方が早く終わる ● デプロイ前にJenkins先生にチェックしてもらうことで安 心感が生まれる ○ テストがダメなら本番でもダメ! ● サーバにJenkinsを立てることでミドル周りの知識がだ いぶついた ○ nginx, tomcat, IP制限, EC2やVPS契約etc Copyright Drecom Co., Ltd. All Rights Reserved.
  28. 28. まとめ ● サクッとためしたいならtravis.ciかCouldbees ● いろいろやりたくなったら自分でJenkinsを入れてみる Copyright Drecom Co., Ltd. All Rights Reserved.

×