2017-09-20 3 views

Antwort

2

Die Einstellungen auf der Multi-Branch-Konfigurationsseite konfigurieren nur den Multi-Branch-Scan-Job selbst, nicht die einzelnen Jobs, die im Multi-Branch-Ordner erstellt wurden.

Die Option unter "Scan Multibranch Pipeline Triggers" mit der Angabe "Periodisch, wenn nicht anders ausgeführt" ist nur ein Auslöser dafür, wenn der Multi-Branch-Job nach neuen Verzweigungen sucht. Wenn Änderungen an bestehenden Zweigen gefunden werden oder wenn neue Zweige mit einer Jenkins-Datei gefunden werden, die Ihren Branch-Spezifikationen entsprechen, wird ein neuer Build ausgelöst, aber dies ist nicht die Art, wie ein Job ausgelöst wird.

Eigentlich können Sie die automatische Erstellung deaktivieren, wenn Änderungen gefunden werden, indem Sie der SCM-Konfiguration eine Eigenschaft hinzufügen, um "Automatische SCM-Triggerung zu deaktivieren". Dann sehen Sie den Multi-Branch-Scan-Trigger, aber die Jobs selbst werden nicht erstellt, selbst wenn Änderungen gefunden wurden.

Um Jobs auszulösen, sollten Sie idealerweise einen Webhook verwenden, wenn Sie können. Wenn Sie einen git-Hook verwenden, der das git-Plugin verwendet (nicht das github-Plugin), müssen Sie den PollSCM-Trigger aktivieren (obwohl Sie ihn so einstellen können, dass er nur selten oder gar nicht abfragt).

Wenn Sie nur normale Triggeroptionen haben möchten, können Sie ab Version 2.22 die cron oder pollSCM Trigger konfigurieren.

pipeline { 
    triggers { 
     cron('H/4 * * * 1-5') 
     pollSCM('0 0 * * 0') 
    } 

Dann glaube ich, Sie webhooks konfigurieren können Ihren Job, wenn mehrfach verzweigten zu tun, um einen Scan zu informieren. Ich habe das nicht versucht. Ich sage es nur, um jede Stunde oder ein paar Mal pro Tag mit dem "Periodisch wenn nicht anders läuft" zu scannen.

Beachten Sie, dass das gleiche gilt für den Build-Diskrader und andere Dinge, die Sie in Ihrem Multi-Branch-Job konfigurieren. In der Web-UI können Sie nur den Multi-Branch-Job selbst konfigurieren, nicht die einzelnen Jobs, die daraus erstellt wurden. Sie müssen Pipeline verwenden, um die Jobs zu konfigurieren.

Verwandte Themen