最終更新:2011-03-25 (金) 13:17:02 (3387d)  

Hudson
Top / Hudson

Extensible continuous integration server

http://hudson-ci.org/

CVSSubversionなどのバージョン管理システムツールをサポートし、AntMavenで管理されているプロジェクトのタスクを実行したり、シェルスクリプトWindowsバッチファイルを実行することができる。

Hudsonとは?

Hudsonは、ソフトウェアのビルドやcronで起動するジョブなどの繰り返しのジョブの実行を監視します。これらのうち、Hudsonは現在次の2つのジョブに重点を置いています。

  • 継続的な、ソフトウェアプロジェクトのビルドとテスト: つまり、CruiseControl?DamageControl?が行うこと。 一言で言えば、Hudsonは、容易ないわゆる「継続インテグレーションシステム」を提供し、開発者が変更をプロジェクトに統合でき、ユーザーがより新しいビルドを容易に取得できるようにします。自動化された継続的なビルドは、生産性を向上させます。
  • 外部で起動するジョブの実行監視: cronによるジョブやprocmailのジョブで、リモートマシンで動作するものも含みます。例えばcronについて言えば、出力をキャプチャーした定期的なメールだけ受信し、こつこつとそれを見ます。おかしくなっていることに気がつくかどうかは、すべてあなた次第です。Hudsonは出力を保存し、 いつおかしくなったのか容易に把握することができるようになります。

特徴

Hudsonの特徴は次の通りです。

  • 簡易なインストール: java -jar hudson.war を実行するか、サーブレットコンテナにデプロイします。追加のインストールも、データベースも不要です。
  • 簡易な設定: 豊富な入力時のエラーチェックとヘルプを備えたわかりやすいWebGUIを使用して、Hudsonを設定できます。もう手でXMLをいじる必要はありません。いじりたいのならそうすることもできますが。
  • 差分のサポート: Hudsonは、CVSSubversionからビルドへの変更の一覧を生成することができます。これは、リポジトリの負荷を削減するとても効率的な方法で行われます。
  • 永続リンク: どこからでも簡単にリンクできるように、"最新のビルド"や"最新の安定ビルド"のような永続(固定)リンクを含む、多くの画面は、クリーンでわかりやすいURLを持ちます。
  • RSS/Eメール/IM との連携: 失敗時にリアルタイムに通知をうけるために、RSSやEメールでビルド結果を監視します。
  • ビルド後のタグ: ビルドが完了した後に、ビルドにタグを付与できます。
  • JUnit/TestNGによるテスト結果のレポート: JUnitのテスト結果を、一覧表示および要約し、いつから失敗しているのかなどの履歴情報とともに表示します。履歴の傾向はグラフ化されます。
  • 分散ビルド?: Hudsonは、複数のコンピュータで分散ビルド/テストを実行できます。このおかげで、開発者の机の下に横たわっている何もしていないワークステーションを利用することができます。
  • ファイル指紋: Hudsonは、どのビルドがどのjarを生成したのか、どのビルドがjarのどのバージョンを使用しているのか等々、追跡できます。この機能は、Hudsonが管理しないjarでも機能します。そして、プロジェクトの依存性を管理するのにも有用です。
  • プラグインサポート: Hudsonをサードパーティのプラグインで拡張できます。 開発チームが使用するツールや処理をサポートするプラグインを書くこともできます。

日本語ドキュメント

関連

参考