2016-04-22 22 views
1

私は現在、互いにほぼ同じ時間に実行される2つのジョブを持っています。jenkins NodeLabel Parameter Plugin default

私は2つのスレーブ設定を持っているので、ジョブ#1がスレーブ#1で開始すると、ジョブ#2が開始すると、スレーブ#1がビジーでスレーブ#2を使用していることがわかります。

NodeLabelパラメータプラグインをインストールし、デフォルトノードをスレーブ#1に、スレーブ#1と#2のノードをジョブごとに設定しました。私はノードの適格性を「オフラインノードを無視する」と「ジョブが成功した場合にのみ次のビルドを実行」に設定しました。私は見てい

問題は、次のとおりです。

  • 第二のジョブが開始したとき、スレーブ#1を使用している場合、それは[NodeParameterValue(スレーブ#1の次に利用可能なエグゼキュータのために保留待ち)」と言います。

  • このジョブを手動でビルドすると、自動的にデフォルトのノードが選択されず、代わりに「パラメータ付きビルド」

    を使用するように選択されます(スレーブ#1 =スレーブ#2)

私はこれがプラグインの一般的な使用でなければならないと推測するので、私はむしろ単純なものを欠いていると推測しています...どちらが使用されていないかに基づいて動的にスレーブを選択しますか?

答えて

1

私は、呼び出されたジョブがデフォルトのノードと可能なノードの両方が同じ2つのスレーブに設定されていることを確認することでこれを解決しました。 (ちょうど#1であるデフォルトの代わりに)。

第2に、スレーブを呼び出すジョブは、ジョブが実行するノードを定義する.propertiesファイル内に変数を設定する必要があります。この変数は、呼び出し元ジョブの 'ラベル工場用のすべてのノード'オプションを使用して読み取られます。

この記事は非常に有用でしたが、私が言うように、私の代わりに彼が推奨する「ノードラベルパラメータ」オプションの "ラベルの工場のためにノードの使用:http://www.shaunabram.com/dynamically-set-jenkins-node/

関連する問題