Gibt es eine Möglichkeit, jenkins (2.2) zu sagen, Jobs für Zweige zu löschen, die gelöscht wurden? Derzeit füllt sich mein Build-Monitor mit Zweigen, da die Jobs nicht gelöscht werden. Gibt es eine Einstellung, um dieses Verhalten auszulösen oder sollte dies als Fehler gemeldet werden?Jenkins löscht Aufträge, wenn Zweig über Branch-Indexierung gelöscht wurde
Antwort
Da Sie die neueste Jenkins-Version verwenden, sollten Sie Ihre Jobs auf multibranch pipeline setup umstellen.
Der Workflow mehrfach verzweigten Funktion (vom Workflow-Plugin zur Verfügung gestellt) bietet die folgenden Schlüsselfähigkeiten:
Automatische Workflow (Job) Erstellung in Jenkins pro Niederlassung im Repo (unter der Annahme webhooks von registriert ist GH zu Jenkins).
Build spezifisch für diese Kind-Zweig und seine einzigartige SCM ändern und bauen Geschichte.
Automatische Jobbereinigung/Löschung für Zweige, die gemäß den Einstellungen aus dem Repository gelöscht wurden.
Flexibilität zur individuellen Konfiguration von Zweigeigenschaften durch Überschreiben der übergeordneten Eigenschaften, falls erforderlich.
EDIT: Überprüfen Sie die Einstellungen 'Discard alte Elemente' für Sie Pipeline. Wenn Sie "Max # von alten Artikeln ungleich null" haben, wird Ihre Nummer nie gelöscht, wenn Ihre Filiale weniger Builds als diese Nummer hat. Sie können sogar, dass in Protokollen sehen:
Will not remove US12345 as it is only #1 in the list
Will not remove US23456 as it is only #2 in the list
Will not remove US34567 as it is only #3 in the list
EDIT: Sie können auch Ihr Glück genannt, indem zusätzliches Verhalten versuchen können „Prune abgestanden Fernverfolgung Zweige“ („Behaviors“ -> „Add“ -> Select aus Dropdown).
1) Gehen Sie zu Manage Jenkins -> Global Tool Configuration -> Git -> Add Git -> Choose JGit
.
2) auf Ihre mehrfach verzweigten Pipeline-Konfiguration Dann gehen Sie und wählen JGit
statt Default
unter Branch Sources -> Git Executable
3) Drücken Branch Indexing -> Run now
Alte Zweige jetzt weg
Also sollte ich es ein Fehler, wie ich werde prüfen Ich benutze das Multibranch-Pipeline-Setup - danke – ligi
Ich sehe das gleiche ... die alten Zweige werden nicht von Jenkins gelöscht, wenn sie aus dem Repository verschwunden sind. @ligi: Hast du einen Fehler gemeldet? – kenyee
@kenyee, check my edit? – madhead