0

私はjenkinsマスターと、slave1とslave2という名前の2つのスレーブを持っています。同じジョブで、slave1 でいくつかのシェル コマンドを実行し、slave2 でいくつかのシェル コマンドを実行したいと考えています。これどうやってするの...?

4

1 に答える 1

0

ステップ 1 として、jenkins でマルチ構成ジョブを作成する必要があります。マルチ構成ジョブでは、1 回の実行で 2 つ以上のスレーブで同じジョブを実行できます。

  1. 構成マトリックスの下でスレーブオプションを使用し、リストからスレーブ 1 とスレーブ 2 を選択する必要があります。
  2. これで、ジョブを 1 回実行すると、2 つのスレーブですべての実行シェルが実行されます。
  3. これはあなたが望むものではありませんか?これで、2 つのスレーブで実行する同じジョブを作成できました。
  4. 次に、特定のシェルを特定のスレーブで実行する必要があります。

このためには、if 条件を使用し、目的のスレーブでジョブが実行されているかどうかを確認する必要があります。

  1. 私のジョブがどのスレーブで実行されているかを確認する方法は、ジェンキンスの事前定義された環境変数 NODE_NAME を使用できます。

    [[ $NODE_NAME == slave1 ]] && エコー コードが実行されます。

  2. 上記のようなものを書いて、必要なことを成し遂げることができます。

于 2016-06-15T05:12:10.507 に答える