今年は「鎖国解禁!」がテーマでして、積極的にいろいろな勉強会に参加したりだとか、ブログに知っていることをどんどん公開するなどの目標を掲げていました。
アクションが遅い!!という話もありますが、思い立ったら吉日ですよね。
そんな中に飛び込んできたのが、「Jenkinsユーザーカンファレンス2015」!
これは新年早々、幸先が良い!ということで新幹線で1時間半かけて、いざ東京へ!!
現在の業務に直結する勉強会にはじめて参加したのが、昨年の秋。
「Java Meeting Sendai 2014」でした。
そこで寺田さんやJavaチャンピオンの話を聞いて、多くの刺激をいただき、JavaEE7, Maven, GitBucket, Glassfish, Jenkinsと勉強をすすめて、部分的ではありましたが、リリースにまで漕ぎつくことができました。
Jenkinsを本格的に導入したのが、3ヵ月くらい前(Jobは3個)。
ちょうど、Glassfish4.1へのリモートデプロイに失敗するバグにはまっていましたが、下記のサイトを頼りにファイルを差し替えて、デプロイもできるようになり、運用を開始できました。
Deployment Uploads fail on GlassFish with Grizzly error
ちなみに、Jenkinsには基本的なことしかやらせてなくて、ビルド、単体テスト、デプロイ、コード解析などです。 導入はとりあえずクリアできたので、より実践的な具体的な話を求めて!! そんな感じで東京に向かいました。
Jenkinsは関係ないのですが、初めて東京6大学に足を入れた私。
完全なお上りさん状態。広い!
自分が行っていた大学とはえらい違いです。
そして各デスクにはCAT6、電源の差込口が!
20年前とは大違い。当たり前ですよね。時代が違いますもの!
ちゃっかり、スマホの充電させてもらいました。感謝!
参加したセッション
私が参加させていただいたセッションは、下記のとおりです。
- 基調講演 Jenkinsプロジェクトの現状とワークフロー
- JenkinsとSeleniumの活用事例:試験自動化のプロジェクトへの導入
- クックパッドにおけるJenkinsの活用
- Jenkins導入する本当の理由を考えてみた
- LT
現状の問題点
目先で自分が抱えている大きな問題点は、次の3つです。(やり方を知らないだけなんですが)
- Jobを複数登録している部分を1つのJobに集約できないか?(Jobは2つだけなんですけど・・・)
- Jenkinsの設定変更した場合、記録がない(手管理するしかないの?)
- Seleniumテストでjenkinsとどう絡めていけるのか?(Seleniumはまだ未導入)
これら技術的な問題は、1については、Jenkins産みの親である川口さんのワークフローで実現できそうだし、2についても、@kakakikikekeさんが紹介していたCapstranoでデプロイ内容をGitで管理するという手法がヒントになりそうでした。
3では、Selenium Server, 仮想ディスプレイ, VNC, IMAGE MAGICKあたりがポイントかと。いろいろ試してみる必要がありそうですね。
さらに、コアな考え方として、クックパッドの高井さんのお話。
CIで守るべき価値を明確にされていた点でした。やはり何事も「何のために!誰のために!」が大切なんだと!
「開発者文化と規律」ということで、ソースはcollective ownership(共同所有物)という部分が目からうろこでした。
まとめ
とにかく、刺激的な1日で、スピーカーの皆さんが、現状には満足することなく、ユーザーさんやチームという他の誰かのために、継続的に新しい技術を学んで、積極的に取り入れていくその姿勢に感銘を受けるばかりでした。
さあ、今度は自分たちの番です。古い技術は、原理・原則を吸収しつつ、今よりももっともっとハッピーになるために、新しい良い技術を学び活用していく! とにかく行動あるのみですね!!!
失敗し、試行錯誤する中で、新しい発見もたくさんあるはずです。
最後におまけとして衝撃的事実を知ることに・・・。
「Maven」のことをずっと、「メイバン」と呼んでいたけど、スピーカーのみなさんは、「メイブン」と言っていたこと!
昔、Ravenというバンドがいましたが、それに近い発音でしたね。
あと、「Gradle」は「グラドル」と呼んでいて、こちらは「グレイドル」と呼ぶようです。
恥ずかしいことに「グラビア・アイドルの略で覚えるといいよ」と後輩に冗談をいっていたことが超・赤面ですよ。
文章だけでの学習だとこういったことがありますね。英語も勉強しないとですね。