JenkinsとPull Request
を利用した継続的
Bundle update.
株式会社 adingo
Twitter @_zoo/MisaKondo
発表の背景
RubyKaigi2013で’Continuous gem
dependency updating with Jenkins and
Pull Request'という発表を聞いてきまし
た。
RubyKaigiなのでgemを管理するbundler
ベースのお話でしたが、他言語にも通じる
すごくいい話でした。
Agenda
● What is 'Bundle'?
● Bundle update evey day.
● Must update continuously.
● 'Continuously' is not so easy.
● Automation.
● Visualization.
What is 'Bundle'?
バンドル〖bundle〗
ある製品に別の製品を添付すること。パソ
コンにオペレーティングシステムやアプリ
ケーションソフトをあらかじめ添付するな
ど、販売する製品に関連する製品で使い
勝手を向上させる役割のものが多い。
What is 'Bundle'?
バンドル〖bundle〗
アプリケーションに付属する外部ライブラ
リ群を管理する物。
例)
 RubyだとBundler.
 PHPだとComposer.
 PerlだとCarton.
Bundle update every day.
Must update continuously.
● 古いバージョンを使っているが故のバグ
回避のためのロジック、意図の読みにく
い無駄なコードがなくなる
● 関連しているシステムもupadteできなく
なる
● まとめてやるより、継続的に更新した方
が最終的なコストは低い
'Continuously' is
● モチベーションに依存したオペレーショ
ンは破綻する
● 日々のワークフローに取り入れても忘
れてしまう、人というのはそういうもの
● メールや個人のスケジュールアラーとな
どでの管理は、失敗する第一歩
Automation.
● Jenkins
● GitHub
● Hub
https://github.com/defunkt/hub
Mr. Jenkins's Pull Request
Visualization.
● GitHub、PullRequestを利用した視覚
化
● コードレビューのサイクルに組み込める
● 副次効果として、updateの取り込みをコ
ントロールできる
ご清聴ありがとうご
ざいました。

Jenkinsとpull requestを利用した、継続的なbundle update.