2016-12-04 4 views
0
setzen

Kraft Jenkins in der Warteschlange liegen nur eine Pipeline Job ausgeführt werden soll und alleKraft Jenkins nur eine Pipeline Job ausgeführt werden soll und alle

in der Warteschlange Ruhe setzen

Ich möchte nur ein Projekt zu einer Zeit, in gesamten jenkins-Server bauen . Ich habe versucht, Jenkins Gas-Plug-in und Lockable-Plugin, aber kein Glück. Als lockable resource plugin gibt mir keine Möglichkeit, Pipeline-Jobs zu sperren. Auch ich lese viele Posts, aber es löst mein Problem nicht, vielleicht fehle ich etwas. Wie auch immer,

Ich habe 3 Jenkins Pipeline Jobs (Job-Pipeline Skript): JOB1 JOB2 JOB3, die einige gemeinsame Sache zu Beginn des Auftrags (Clearing-Gehalt) hat. Das manuelle Ausführen von einem nach dem anderen hat kein Problem, wenn der Job abgeschlossen ist, aber wenn JOB1 gerade erstellt und JOB2 dazwischen startet, dann wird er auf JOB1 unterbrochen und der Build wird für JOB1 fehlgeschlagen.

Auch wenn ich Jobs mit CLI starte, weiß man nie, welcher Job ausgeführt wird. Also, ich suche nach einer Lösung, um JOBY zu blockieren, wenn JOBX läuft (X, Y kann 1,2 oder 3 sein) und erlaube nur einen Job, der auf dem gesamten Jenkins-Server läuft. Wie ich schon sagte, bietet das gleichzeitige Plugin "contractor" eine Anpassungsoption nur für den jeweiligen Job und nicht für mehrere Jobs.

Kann jemand vorschlagen, eine Lösung für Multi-Pipeline-Jobs Block nur einmal auszuführen? Installieren

Antwort

1

Build Blocker Plugin

In der Konfiguration von JOBY überprüfen "Block bauen, wenn bestimmte Aufträge ausgeführt werden".

Setzen Sie den JOBX-Namen in den Textbereich Blockieren von Jobs, wobei jeder Job in einer neuen Zeile steht.

Hinweis: Sie können Regex auch verwenden, um in einzeiligen Jobs zu definieren, die dasselbe Präfix haben, aber mit unterschiedlichen Nummern enden.

Verwandte Themen