Ich habe eine jenkins-Instanz für ein Multi-Branch-Svn-Projekt eingerichtet, das durch einen Post-Commit-Hook ausgelöst wird, der den Namen der betroffenen Branche als Parameter an jenkins übergibt.
Jenkins führt dann die Checkout-Quellen aus dem angegebenen Zweig aus und kompiliert sie. Dies funktioniert ziemlich gut mit einer Einschränkung.
Wenn Builds "x" und "x + 1" auf demselben Zweig ausführen, zeigt Jenkins mir die Änderungen für das Commit, das Build "x + 1" unter dem Link für den Build ausgelöst hat. Wenn builds "x" und "x + 1" auf verschiedenen Zweigen laufen, erhalte ich eine leere Änderungsliste in jenkins und die Zeile "Keine Überarbeitung für im vorherigen Build aufgezeichnet".
Meine Frage ist jetzt: Wie kann ich Jenkins Änderungen nicht basierend auf vorherigen Build nehmen, aber erfolgreich Build basierend auf dem gleichen Zweig?svn multibranch ändert Basis in jenkins ci
Antwort
Soweit ich weiß, Jenkins berechnet immer die Änderungen basierend auf dem vorherigen Build in einem bestimmten Job. Wenn Sie also mehrere Zweige im selben Job ausführen, haben Sie kein Glück. Ich würde vorschlagen, dass Sie die folgenden Plugins sucht in einem:
https://wiki.jenkins-ci.org/display/JENKINS/Pipeline+Multibranch+Plugin Pipelines scheint der Weg zu sein, keine ein Tag zu gehen, fügen Sie eine Jenkinsfile zu Ihrem Repository, das Jenkins sagt, wie Sie Projekt erstellen. Die mehrfach verzweigten Plugin erweitert diese mit zusätzlichen Features, wo es neue Filialen erkennen und neue Teiljobs
https://wiki.jenkins-ci.org/display/JENKINS/Multi-Branch+Project+Plugin erstellen Wenn Sie mit Freestyle-Jobs stecken, dann versuchen diese, wie ich es verstehe es ist Freestyle-Arbeitsplätze, sondern schafft neue Unterjobs für jeden Zweig. Aber wie es auf dem Link heißt, wurde es durch Pipelines und Multi-Branch-Pipelines ersetzt.
Danke für Ihre Zeit und Nachforschungen Jon, leider sind beide Vorschläge für mich keine Option, da ich nur einen einzigen Job haben möchte. Vielleicht muss ich ein Plug-in für die Zukunft entwickeln, das die Änderungen für meinen Fall korrekt sammelt. Im Moment kann ich mit der Einschränkung leben, dass Änderungen nur angezeigt werden, wenn der vorherige Build im selben Zweig wie der aktuelle ausgeführt wurde. –
- 1. Jenkins und GitLab CI-Integration mit Multibranch und einzelnen Pipelines
- 2. Jenkins Archiv Downstream Multibranch Pipeline
- 3. Jenkins Multibranch-Plugin und RVM
- 4. Jenkins Multibranch Pipeline Workspace Limit
- 5. Korrekte Konfiguration der Multibranch-Pipeline in Jenkins
- 6. Jenkins CI: Wie Builds auf SVN-Commit ausgelöst werden
- 7. Jenkins - CI mit virtuellen Maschinen
- 8. Jenkins: Kopieren Artefakte von Multibranch Pipeline
- 9. Jenkins Multibranch: ändern Job Beschreibung von Groovy
- 10. Wie Jenkins gleichzeitige Multibranch-Pipeline-Builds begrenzen?
- 11. Jenkins Multibranch-Pipeline mit mehreren Startpunkten
- 12. Jenkins CI-Workflow-Implementierung
- 13. Jenkins/Hudson SVN Ausgabe
- 14. Warum aktiviert Jenkins IVY, obwohl sich kein SVN ändert?
- 15. Duplicate changelogs in jenkins pipeline script mit SVN
- 16. SVN (Subversion) Anmeldeinformationen in Jenkins
- 17. Trigger PRs in Jenkins Multibranch Pipelline für einen bestimmten Zielzweig
- 18. Git Commit und Push-Problem in Jenkins Multibranch-Pipeline
- 19. Konfigurieren von Jenkins für Github CI mit 2FA
- 20. Jenkins-CI Github Push löst
- 21. Wie debuggen Sie Jenkins Multibranch Scan - keine neue Zweigstelle
- 22. SVN-Commit mit Jenkins
- 23. Konfigurieren von Jenkins für CI
- 24. Jenkins CI: 'NumberFormatException: leere Zeichenfolge'
- 25. Jenkins SVN checkout Besitz
- 26. unberührte Svn-Basis-Datei fehlt
- 27. Wie man spezifischen Arbeitsbereich Ordner für Jenkins Multibranch Pipeline-Projekte
- 28. Jenkins Multibranch-Pipeline mit Jenkinsfile aus verschiedenen Repository
- 29. Jenkins Multibranch-Pipeline: Wie wählt man einen Build-Knoten?
- 30. Ziehen Sie den aktuellen Zweig mit Jenkins Workflow Multibranch-Plugin
Sind die verschiedenen Zweige zwei verschiedene Jobs oder das gleiche? Welcher Jobtyp, Freestyle? –
Es ist ein Freesty-Job mit Svn und. Net Msbuild. Wir haben ein Produkt, bei dem mehrere Änderungsaufgaben parallel von mehreren Teammitgliedern bearbeitet werden. Es ist immer der gleiche Aufruf an die verschiedenen Versionen (Zweige) des Quellcodes. –
Okay, danke für diese Klarstellung. Siehe meine Antwort unten. –