CI (Continuous Integration: 継続的インテグレーション)ツールのメモ

月刊JavaWorld 2006年6月号の特集「継続的インテグレーション」で良さそうなツールを見つけたのでメモ。開発中、stagingにログインしてビルドする作業って、インテグレーションの回数が多くなってくるとそれなりに負担だからいい加減自動化したいなー、と思っていたとこだったのでタイムリーな情報でした。

CIって何?

「インテグレーション作業を初期段階から頻繁(最低でも一日一回)に行うぞ」というシステム開発上のプラクティス。それぞれのインテグレーションは自動的にビルド(もちろんテストも)され、インテグレーションに関するエラーは即座に発見・報告される。インテグレーション時に起こる問題に対してのリスクヘッジ、インテグレーション作業のオーバーヘッド低減の効果大だよ。


参考)

気になるCIツール

本誌では6つのCIツールが紹介されてたんだけど、僕が気になったのは以下の二つ。Bittenを簡単にMaven2対応にできそうだったら断然Bitten。ダメそうならContinuumに一票。

Continuum

http://maven.apache.org/continuum/

  • Maven2と親和性高し
  • ○ インストール簡単そう
  • × 日本語のドキュメントなし
Bitten*1

http://bitten.cmlenz.net/

  • Tracプラグインなので、完全にTracと統合されている
  • ○ マスタ-スレーブ型 - 自分の場合の使い道が分からないけど
  • × Mavenに非対応 - 少しハックすればなんとかなりそうな様子

*1:全然関係ないけどここのTracはデザインをカスタマイズしててカッコいい。結構手間かかってそうだなー。