2012さあ、やっとJenkinsにたどり着きました。いっても、すでにインストールはしてあるし動作も確認しているので、基本的な部分はクリアされています。今回は、CentOSにインストールされているJenkinsをベースにして、.NETのプロジェクトをビルドさせるというところにチャレンジしてみます。Jenkinsは、インストールされているサーバーだけではなく、他のサーバーやPCなどを使って作業を分散させることができます。Linuxのサーバー上でできる作業はそのままJenkinsの入っているサーバーでやって、.NETのプロジェクトは別のWindows環境の端末でビルド作業などをする、ということができたり、すごく大きくて複雑なプロジェクトだとビルドやら自動テストだけでも時間がかかるので複数の端末で分散して作業をすることができるわけですね。仮想マシンのLinux上に管理させて、結局ホストマシンのWindowsに戻ってきて作業させる、とか実質的な部分では「人生380度変わりました。回って20度しか変わってないやん」みたいになってますけど、手段のためには目的は問わないのです。端末間の連携方法はいくつかあるんですが、「JNLP経由でスレーブを起動」する方法が簡単です。やることといえば、JenkinsのMSBuildプラグインを入れて、[Jenkinsの管理]-[ノードの管理]でノードを追加したあと、画面の指示に従ってslave-agentを起動してやるだけです。後は、ジョブを作るときにMSBuildを指定してあげれば動きます。ここが手順としてはすごくわかりやすくまとめてくれていますので、大いに参考にさせていただきました。引っかかったところとりあえず、お約束のごとくslave-agentからJenkinsに接続できないわけです。http://192.168.1.105:8080/computer/Windows7/slave-agent.jnlpとやるんですが、で、リトライを繰り返した結果......こうなります。Linux側でポートが空いてないのでこうなってしまいます。ポートを開けてやれば解決するのですが、Jenkinsの初期設定ではポートがランダムに使われてしまいますので固定してしまいます。[Jenkinsの管理]-[システムの管理]の[セキュリティを有効化]にチェックをすると、ポートを固定する設定が出てきます。ここで、[JNLPスレーブ用TCPポート番号]を設定できます。適当に9000ぐらいを入れて保存します。あとはCentOS側で、/etc/sysconfig/iptablesに下記を追加します。