Wir verwenden Jenkins seit einiger Zeit für Continuous Integration. Ein typischer Build-Job gibt das SVN-Repository und die Anmeldeinformationen im Abschnitt "Quellcodeverwaltung" an, dann aktivieren wir im Abschnitt "Auslöser erstellen" die Option "Poll SCM" mit einem Abrufplan alle 10 Minuten (H/10 * * * *). Wir haben die neueste Version von Jenkins aktualisiert und möchten Pipeline-Builds einrichten. Ein typisches Pipeline-Skript wie folgt aussieht:Wie konfiguriere ich eine Jenkins-Pipeline, die durch Abfragen von SubVersion ausgelöst werden soll?
node {
stage 'Build'
build job: 'MyApplication Build'
stage 'Deploy to test environment'
build job: 'MyApplication Deploy', parameters: [
[$class: 'StringParameterValue', name: 'DatabaseServer', value: 'DatabaseServer1'],
[$class: 'StringParameterValue', name: 'WebServer', value: 'WebServer1']
]
stage 'RunIntegrationTests'
build job: 'MyApplication Test', parameters: [
[$class: 'StringParameterValue', name: 'DatabaseServer', value: 'DatabaseServer1'],
[$class: 'StringParameterValue', name: 'WebServer', value: 'WebServer1']
]
}
Wenn die Pipeline Job manuell ausgelöst wird, dann läuft alles gut, aber wir würden dieses Pipeline gerne jedes Mal eine neue Revision in der SVN-Repository geprüft ausgeführt werden. Die Pipeline-Konfiguration verfügt über eine Build-Trigger-Option "Poll SCM", verfügt jedoch nicht über einen Abschnitt "Quellcodeverwaltung", in dem Sie Ihr Repository angeben können. Wie können wir das erreichen?
Haben Sie die groovige Zeile, die verwendet wird, um die Build-Trigger-Eigenschaft in Schritt 3 festzulegen? Ich stelle mir vor, dass in der 'properties();' Methode verschachtelt wäre? – tarabyte
Ich denke, das wird nur funktionieren, wenn es eine Änderung in der Jenkinsfile selbst gibt ... – Philippe