分散ビルドを使ってみる

Seleniumのテストにかなり時間がかかるようになってきてしまったのと、VistaIE7を使ってSeleniumのテストをしたいので、Hudsonの分散ビルドの機能をためしてみました。

Java Web Start(JNLP)を使う方法をためしてみましたが、Step by step guideのとおりやるだけで簡単にできました。ほんとHudsonはいたれりつくせりです。

  1. マスター側
    1. Hudsonの管理->システムを開く
    2. マスタ・スレーブセクションにてスレーブ設定を追加する
    3. ジョブの設定にて、"このビルドは指定のノード上でのみ実行"にチェックを入れて、ジョブを実行するノードを指定する
  2. スレーブ側
    1. ブラウザでHudsonを開き、ビルド実行状態一覧からスレーブを選択
    2. "Launch slave agent"をクリックし、WebStartでslave agentを実行
    3. Hudson slave agentにて"connected"と表示されたらOK(ビルド実行状態一覧でスレーブが"待機中"になる)

こんな感じ。こういう分散処理って動くとなんだかワクワクします(私は設定しただけですが)。

ただし、Javaは当然としてMaven2など必要なものはスレーブにも入れておく必要があり、またパス等の設定はマスター・スレーブ共通になるようです。この辺は以下のcactusmanさんと川口さんのエントリにあるとおりで、将来的には設定できるようになるようです。