2014年3月19日水曜日

Jenkinsについて

株式会社Pro-SPIREソリューション事業部の鳶田です。

本日は有名なオープンソースのCI(継続的インテグレーション)ツール「Jenkins」についてご紹介します。


CIとは、開発プロジェクトにおいて、たとえばビルド、テストやデプロイなどの作業を定期的かつ頻繁に行なうことです。
様々な問題を早期に検出し、ソフトウェア開発の品質と生産性を向上させます。

しかし、このような作業は、1回ごとの手間は大したことが無いように思いがちですが、
重なってくるとかなりの負担になります。
これを自動化すると、何かと効率が上がります。

JenkinsによるCI環境は、外部で起動するジョブのビルドやテスト、デプロイなどを自動で実行し、監視します。

Jenkins - 公式サイト
http://jenkins-ci.org/

Jenkinsの特徴としては次の通りです。

  • 簡易的なインストール
  • GUI操作による簡易な設定
  • 差分のサポート、ビルド変更の一覧を生成
  • 永続(固定)リンク
  • RSS/Eメール/IMとの連携
  • ビルド後にタグを付与
  • JUnit/TestNGによるテスト結果のレポート
  • 複数のコンピュータで分散ビルド/テストを実行
  • ビルドのバージョン、依存関係の管理
  • プラグインサポートによる機能拡張


Meet Jenkins - 日本語版

また、Jenkinsのカスタマイズはさらに実践的な自動運用を実現します。
自分たちの都合に合わせて工夫して他のオープンソースを組み合わせることで、生産性を向上させる試みが様々なWebサイトで見られます。
特に目を惹いたのはこちらの記事です。

第6回テックヒルズ:Let's study Jenkins~さまざまなケーススタディ~

テストの結果通知にチャット機能を追加したり、アラートの発生を警報ランプで周知させる機能など、ユニークな試みが掲載されてます。
Jenkinsを喋らせる事も可能です。

もふもふ部@CAW - Jenkins x Twilioで、テストに失敗したらJenkins先生に電話でdisられる仕組みを作ってみた

オープンソースの幅広い活用は、それぞれのソフトウェアの元来の形に留まることを知りませんね。
単体での数多くの不可能を、組み合わせで可能に変えていく夢があります。
皆さんも願望や想像があるはずです。思い立ったら挑戦してみましょう。
その行動は、IT技術をさらに進化させます。

以上、本日の小話でした。

0 件のコメント:

コメントを投稿