2012-12-19 8 views
10

私はJenkinsをCIに使用しています。私はマスターと2つのスレーブを持っています。マスターはJenkinsを実行していて、実際のビルド作業を行うスレーブだけが欲しいです。私は 'executor'があることを知っています。マスターで0に変更すると、おそらくマスターは何も構築しませんが、これを行う適切な方法はありますか?ジョブを使用して実行されますあなたが設定することができますJenkinsとのCI:マスターの代わりにスレーブでビルドを強制する方法は?

おかげ

答えて

19

あなたの仕事でオプションを「このプロジェクトが実行できる場所を限定」。 この設定は、スレーブに追加したタグと一緒に使用できます。

たとえば、タグ「Linux-buildserver」を持つ2つのスレーブで、そのタグを使用すると、2つのスレーブでジョブが分割されます。 IPアドレスをジョブのタグとして設定すると、そのbuildserver/slaveだけが使用されます。

2

ノードを構成する際に、「このジョブを結んだジョブのみに残す」オプションがあります。「このジョブを結んだジョブのみ」オプションが選択されています。スレーブは、実行に制限されているジョブその上に。

5

新しいJenkinsマスターを設定するための私の最初のステップの1つは、あなたの質問で言及したことを行い、マスターサーバーの設定で "executors"を0に設定することです。

これにより、マスター上に何かが構築されなくなります。

+0

これは、このフィールドの横にある小さな疑問符のアイコンが示す意味です。マスターに構築されないようにするには、0に設定します。 –

0

これを行うより良い方法は、マスタにラベルを付け、マスタ上で実行されるものをそれぞれのビルドでラベルを指定する必要がないように制限することです。