第2回 Jenkins勉強会(旧Hudson勉強会) に行ってきた


Sun R.I.P ステッカーを [twitter:@kanu_] さんから頂いた。トイレに行っている間に配っていたようで、残念だなぁと思っていたら、まだ余っていると川口さんが言ったので、全力で手をあげてもらいにいった。ちなみに R.I.P. は Rest In Peace で 安らかに眠れ といった感じ。

TogetterやUstやWikiはこちら。まとめてくださった方、動画配信してくださった方に感謝。

名称変更についてはこっちに書いた。それ以外のことについてここに書く。
Hudson名称変更に関する経緯 - 第2回 Jenkins勉強会(旧Hudson勉強会) に行ってきた - techlog

通常の発表はこんな感じ。

  • Sun Java EE部隊のJenkins運用例 ( [twitter:@kohsukekawa] )
  • Jenkins+Maven活用術 ( [twitter:@cynipe] )
  • JenkinsエンジニアのためのGroovy入門 ( [twitter:@kiy0taka] )

LTはこんな感じ。

Sun Java EE部隊のJenkins運用例 ( [twitter:@kohsukekawa] )

Glassfish における Jenkins の利用 について離してくださった。

開発の特徴

多数のコンポーネントチーム があり、Subversion と Ant を利用していた。

そこで、こんなふうにしたい。

  • インテグレートを効率化したい
  • 爆弾ビルドをインテグレートしたくない
  • 手動インテグレートを避けたい
  • 定期的にインテグレートしたい
Hudson でインテグレート

そんなわけでhudsonを使い始めた。

  • 自動インテグレート
  • テストにパスしたらプロモートする
  • 問題のあるビルドはインテグレートされない
  • 個人の野良ビルドはない(Hudsonがビルドしてテストするから)
  • どのソースでビルドされたのかすぐわかる
  • 上流の開発者はバグを直したら違う作業に取りかかれる
Hudson の普及

頑張ってhudsonを社内(Sun)で普及させた。

そこで…

  • 誰でも使えるようにした
  • 計算機は出してもらった
  • ある程度実績を作るとマネージャーにも話が通りやすくなる
  • 学習意欲の高い若者を丁稚として使う
まとめ
  • 千里の道も一歩から
  • 多くの挑戦をしない
  • ビルドは本業ではない

いまは人気にのHudsonだけど、やっぱりそんなプロダクトでも普及するまでにはいろいろあって、その話が面白かった。社内で新しいツールを使いたいときには今回の話しを思い出して、いろいろボトムアップで試してみたい。

Jenkins+Maven活用術 ( [twitter:@cynipe] )

僕にとっては参考になることが多く、すごく勉強になった。

自己紹介

さいないぷ(id:cynipe)さん
java とにかく java
maven jenkins gae

運用の流れ

ビルド→テスト→成果物作成→ステージングにデプロイ→本番にデプロイ

役割
  • mavenのやること
    • 構造
    • 環境
    • 設定
  • Jenkins
    • ビルド手順
    • パッケージング手順
    • デプロイ手順
環境ごとに切り替えが必要なもの

-jdbc
-ログ(このログみたいけど本番では出さない)
そこでmavenのprofile。pomの記述をon/offするもの。

ここからはデモや設定を実際に見せてもらいながらの解説で、あまりメモをとらなかった。
でも環境ごとに異なる設定というのは普通にある。今回聞いた発表がベストプラクティスというわけではないと思うけど、他の人達がどうしているのか知ることができてよかった。
やっぱりこういった開発の本質ではない部分はどんどん改善していきたい。

JenkinsエンジニアのためのGroovy入門 ( [twitter:@kiy0taka] )

Groovyかっこいい!使ったことがないけど、記述がとにかく完結でいいなぁ。使ってみたいと思わされるLTだった。

脅迫 TracLightningとJenkins ( [twitter:@LightningX] )

LTらしくて面白かった。kanonは知らなかったけど、これは是非とも使ってみたい。

Jenkins+Play!で気軽にCI! ( [twitter:@ikeike443] )

Play!は聞いたことがあったけど、触ったことはなかった。
それにしてもみんな気軽に plugin 書いててすごいなと思った。

プラグイン活用のススメ( [twitter:@tyuki39] )

活用できそうなプラグインと活用できなさそうなプラグインの紹介。
ランキングが参考になった。

JenkinsのSlave事情( [twitter:@fujibee] )

Hudsonのスレーブは使ったことがなかったけど、大規模だと便利そう。

Jenkinsでリグレッションを起こす方法( [twitter:@yusukey] )

Twitter4Jでリグレッションが起きてしまったときのお話。実際に起った内容が、分かりやすく紹介されていた。やっぱり他のひとの失敗事例はとても参考になる。

感想

僕はHudsonのライトユーザで、ヘビーユーザではない。いろいろな使い方を知って、自分にあった使い方を選んでいけたらいいなと思う。
人気の勉強会だけど、次回もぜひ参加したい。