Ich möchte, dass mein Code-Überprüfungsjob Änderungen ignoriert, die von anderen Jenkins-Jobs stammen, wie zum Beispiel mein Veröffentlichungsjob. Diese Commits können entweder durch den Commit-Benutzer (bevorzugt) oder den Commit-Kommentar-String (auch akzeptabel) identifiziert werden.Wie kann ich Jenkins Gerrit Trigger dazu bringen, die Commits meines CI-Benutzers zu ignorieren?
Grundsätzlich habe ich das gleiche Problem wie der Benutzer, der Ignore Jenkins job if commit message starts with a given string fragte, außer dass ich nicht das Git-Plugin mit Polling verwenden. Stattdessen verwende ich die Gerrit Trigger plugin, die bei jedem neuen Änderungssatz ausgelöst wird.
Ich glaube, der folgende Screenshot enthält die entsprechende Konfiguration des GT-Plugins.
Ich habe im Internet gesucht, aber ich konnte nicht finden, wie dies zu erreichen ist. Ich habe diese Art von Konfiguration für das Git-Plugin gefunden, kann sie aber nicht verwenden, da wir Gerrit verwenden. Daher brauchen wir vor dem Commit Changeset-Triggering statt Polling.
Ist es möglich, Ihren Freigabeauftrag in einen vorgelagerten Job und einen nachgelagerten Job aufzuteilen? Der Upstream holt nicht ab und checkt nur aus. Wenn stabil, wird der Downstream zum Abrufen und Auschecken und Erstellen ausgelöst. – ElpieKay
Interessante Idee, aber nicht sicher, dass ich es verstanden habe. Auf was würde der vorgelagerte Job ausgelöst werden? Und auf was würde es Tests laufen lassen, wenn es die Software noch nicht gebaut hat? – Jolta
der Upstream wird durch Gerrit-Trigger ausgelöst. Der Test hier, ich meine, ist zu überprüfen, ob der Commit ignoriert werden sollte und ob der Build-Teil umgangen werden sollte. – ElpieKay