マスター ノードの専用エグゼキューターと連携するジョブを構成する方法はありますか。つまり、ジョブはマスター ノードで割り当てられたエグゼキュータでのみ機能する必要があります。
2 に答える
さまざまなジョブに master を使用している場合、多数のエグゼキューターのうちの 1 つを特定のジョブ専用にすることはできません。ただし、「マスター」構成は編集できます
http(s)://YOURJENKINSSERVER/computer/(master)/configure
Usage を「Leave This Node for Tied Jobs Only」に設定し、MASTERONLYなどのラベルを追加します。
次に、マスターでのみ実行したいジョブには、MASTERONLYで実行するという制限があります
ジョブが実行される場所を制限しないジョブはマスター上で実行されないため、事実上、明示的にマスターの名前を付けてジョブ用にマスターを確保します。
同じ手法がスレーブにも機能します。
フォローアップ: すべての「パイプライン」(別名ワークフロー ジョブ) は「Flyweight Executor」としてマスター上で実行され、その後、他の場所にリダイレクトできます。ヘルプについては、 Jenkins パイプラインのドキュメントを参照してください。
あなたがやろうとしていることは可能だとは思いません。
ただし、開発のパイプラインには、問題の解決策になる可能性のあるものがあるようです。 ここにリンクがあります。
彼らは、とにかくあなたがすでにやっていると思う回避策を提案します。
現在の回避策 は、すべてのプロジェクトに対して「このプロジェクトを実行できる場所を制限する」を使用します。jdk ごとに余分なラベルを維持したくないため、executor の構成が変更されるたびに、すべてのプロジェクトを採用する必要があります。
別の回避策として、マスター ノードに実行プログラムを 1 つだけ設定するのが最善の方法だと思います。