1

Jenkinsスレーブの使用方法/ジョブのトリガー方法を制御する方法についてアドバイスを得る必要があります。

背景/制約:

  1. 「他のプロジェクトでパラメーター化されたビルドをトリガーする」オプションのパラメーター化されたトリガープラグインを使用して、次々に実行される10個のジョブのシーケンスがあります。

  2. これらのジョブの各ビルドは、同じノードで実行する必要があります (パラメーター化されたビルド プラグインで構成され、NodeLabelプラグインから取得される「同じノードでビルド」を使用して実行しています)。

  3. 私は 5 つのスレーブを持っています (スレーブごとのエグゼキュータの現在の数は 1 ですが、ここで提案を受け付けています...)

  4. スレーブがビルド シーケンスによって占有されると、その上で他のジョブを実行できなくなります。スレーブが1つしかなかったとき、それを強制する方法は、「ダウンストリームプロジェクトがビルドされているときにビルドをブロックする」を使用していました

  5. 最初のジョブがトリガーされたときにスレーブが選択されるように構成した方法は、次のいずれかです: (どれも私の問題を解決しませんでした)

    a. 「このプロジェクトを実行できる場所を制限する」を使用して、関連するすべてのスレーブが指すラベルをそこに置きます。

    b. 「このビルドはパラメーター化されています」(パラメーター化されたトリガープラグイン)のオプションを使用して、ユーザーが選択できるスレーブのリストを含む「ノード」パラメーターを追加します。

私は何を達成したいですか?

  • ユーザーがビルド シーケンスの最初のジョブのビルドをトリガーすると、このビルドはアイドル状態のスレーブの 1 つで実行されます。(今は何もしていない奴隷のことです)

  • アイドル状態のスレーブがない場合は、そのうちの 1 つのキューに参加します (どちらでもかまいません)。

それを解決する方法はありますか?

ありがとう!

4

2 に答える 2