分散ビルドを使ってみる
Seleniumのテストにかなり時間がかかるようになってきてしまったのと、VistaのIE7を使ってSeleniumのテストをしたいので、Hudsonの分散ビルドの機能をためしてみました。
- Step by step guide to set up master and slave machines - hudson - Hudson Wiki
- Distributed builds - hudson - Hudson Wiki
Java Web Start(JNLP)を使う方法をためしてみましたが、Step by step guideのとおりやるだけで簡単にできました。ほんとHudsonはいたれりつくせりです。
- マスター側
- Hudsonの管理->システムを開く
- マスタ・スレーブセクションにてスレーブ設定を追加する
- ジョブの設定にて、"このビルドは指定のノード上でのみ実行"にチェックを入れて、ジョブを実行するノードを指定する
- スレーブ側
- ブラウザでHudsonを開き、ビルド実行状態一覧からスレーブを選択
- "Launch slave agent"をクリックし、WebStartでslave agentを実行
- Hudson slave agentにて"connected"と表示されたらOK(ビルド実行状態一覧でスレーブが"待機中"になる)
こんな感じ。こういう分散処理って動くとなんだかワクワクします(私は設定しただけですが)。
ただし、Javaは当然としてMaven2など必要なものはスレーブにも入れておく必要があり、またパス等の設定はマスター・スレーブ共通になるようです。この辺は以下のcactusmanさんと川口さんのエントリにあるとおりで、将来的には設定できるようになるようです。