私はjenkinsマスターと、slave1とslave2という名前の2つのスレーブを持っています。同じジョブで、slave1 でいくつかのシェル コマンドを実行し、slave2 でいくつかのシェル コマンドを実行したいと考えています。これどうやってするの...?
質問する
186 次
1 に答える
0
ステップ 1 として、jenkins でマルチ構成ジョブを作成する必要があります。マルチ構成ジョブでは、1 回の実行で 2 つ以上のスレーブで同じジョブを実行できます。
- 構成マトリックスの下でスレーブオプションを使用し、リストからスレーブ 1 とスレーブ 2 を選択する必要があります。
- これで、ジョブを 1 回実行すると、2 つのスレーブですべての実行シェルが実行されます。
- これはあなたが望むものではありませんか?これで、2 つのスレーブで実行する同じジョブを作成できました。
- 次に、特定のシェルを特定のスレーブで実行する必要があります。
このためには、if 条件を使用し、目的のスレーブでジョブが実行されているかどうかを確認する必要があります。
私のジョブがどのスレーブで実行されているかを確認する方法は、ジェンキンスの事前定義された環境変数 NODE_NAME を使用できます。
[[ $NODE_NAME == slave1 ]] && エコー コードが実行されます。
上記のようなものを書いて、必要なことを成し遂げることができます。
于 2016-06-15T05:12:10.507 に答える