Ich glaube, ich habe die Lösung gefunden.
Zusammenfassung
- Sie nicht durch permalink
- Verwenden Spezifische Build und setzen Build-Nummer
${PROMOTED_NUMBER}
Die Lösung angegeben verwenden
Voraussetzungen
- Die Copy Artifact Plugin muss installiert sein. Archiv
- die Artefakte sollen die Aktionen zugreifen
- In Aktionen-Post bauen fügen die Aktion Archive die Artefakte und setzen Dateien zu archivieren, was immer Sie Ihre Promotion zugreifen möchten.
- nicht wegwerfen alte Artefakte
- Im Auftragskonfiguration, deaktivieren Verwerfen Altbauten oder sicherzustellen, dass seine Einstellungen die Artefakte so lange, wie Sie Ihre baut fördern wollen halten.
Promotion Setup:
Setup-up Ihres Promoted-Build mit Namen und Kriterien wie gewohnt.
Fügen Sie im Abschnitt Aktionen die Aktion hinzu Kopieren Sie Artefakte von einem anderen Projekt, und legen Sie diese Werte fest.
- Projektname:
${PROMOTED_JOB_NAME}
- Welche Körperbau: Spezifische Körperbau
- Build-Nummer:
${PROMOTED_NUMBER}
- Artefakte zu kopieren:
path/to/your/artifacts/**
- Ziel:
${BUILD_TAG}
fügen Sie dann die verschiedenen Aktionen, die Sie wirklich wollen. Fügen Sie zum Beispiel die Aktion hinzu. Archivieren Sie die Artefakte, um die Artefakte zu speichern. Denken Sie daran, Ihren Pfaden ${BUILD_TAG}
, z. die den Inhalt des Arbeitsbereichs des Build erwarten haben ${BUILD_TAG}/path/to/your/artifacts/**
Hinweise zur warum
Kopieren Artefakte
Wie Sie wahrscheinlich wissen jetzt, sollte die Förderung nicht-Zugang. Es kann auf einem anderen Server ausgeführt werden, und es kann möglicherweise auf keinen Arbeitsbereich oder auf den Arbeitsbereich von einem älteren oder neueren Build zugreifen. Es ist daher erforderlich, die Artefakte, die Sie verwenden möchten, in den aktuellen Arbeitsbereich zu kopieren.
Dies ist auch der Grund, warum der Wert Target Wert festgelegt ist. Der Arbeitsbereich ist möglicherweise mit anderen Builds oder Aktionen belegt. Festlegen des Ziels auf ${BUILD_TAG}
Verhindert Konflikte mit bereits im Arbeitsbereich vorhandenen Dateien, indem ein für den Heraufstufungsvorgang eindeutiger Ordner erstellt wird.
$ {PROMOTED_ *} Variablen
Wie Sie die normalen Build-Variablen angeben, beziehen sich auf die Förderung selbst, sondern das beworbene Build-Plugin definiert einige environment variables anstelle der tatsächlichen Build verweisen.
Permalinks
In einem Jenkins Kontext permalinks bezieht sich nur auf die speziellen Links, die auf den neuesten irgendeiner Art Punkte oder die neueste Promotion. Deshalb erhalten Sie immer die neueste Version
In meiner Version von Jenkins wird das Dropdown durch ein Textfeld ersetzt.Schreiben der URL zu einem bestimmten Build wie http://jenkins/job/myjob/59/
ist not recognized als einer der speziellen Permalinks und das Kopieren will thus fail.
Dies wählt tatsächlich den richtigen Build. Ziemlich obskure, aber großartige Lösung! – xeraa
Dies sollte in der Dokumentation "Promoted Builds" enthalten sein –