2016-11-23 2 views
1

Wie kann ich eine andere Download-Spezifikation für das Jenkins Artifactory-Plugin basierend auf dem Wert eines Build-Job-String-Parameters wählen?Verwenden Sie das Artefactory-Plugin in Jenkins, um Dateien aus dem artefactory-Format herunterzuladen.

Für einen gegebenen Wert des String-Parameters möchte ich einen Ordner aus dem Artefakt herunterladen, und für einen anderen Wert des String-Parameters möchte ich einen anderen Ordner aus dem Artefakt herunterladen.

Ich versuche, diese Ordner direkt aus Artefakt zu bekommen, weil sie Build-Ausgabe von einem anderen Projekt, das mein Build verwenden und häufig ändern muss, kann ich nicht nur in das SCM für meine Build überprüfen, aber müssen habe die aktuellen Versionen zur Build-Zeit.

Ich habe die Seiten für die Jenkins Artifactory Plugin und die Jfrog Artifactory user guide angeschaut, aber ich habe nichts gefunden, wie man dies mit dem Plugin macht.

Ich benutze einen Freestyle-Build mit der Option Generic-Artifactory Integration.

Jenkins Version: 1.651.3
Artifactory Plugin Version: 2.8.1
Artifactory Version 4.6.1

Antwort

4

Sie Umgebungsvariablen sowohl in der spec Pfad und der Spezifikation Inhalt verwenden können.

In Ihrem Fall können Sie eine Spezifikation für jeden Job mit dem Jobnamen im Pfad auf Ihren SCM hochladen. Dann können Sie dynamisch den Spec-Datei Pfad Umgebungsvariable wie unten gezeigt: specFilePath

Eine weitere Möglichkeit, eine Variable gesetzt ist (zum Beispiel MUSTER-PATH) in jedem Job und es in der Spezifikation verwenden.

{ 
    "pattern": "libs-snapshot-local/${PATTERN-PATH}/*", 
    "target": "out/downloaded/" 
} 
+0

Wie setzt man eine Variable? Ich verwende den String-Parameter, es scheint, es funktioniert nicht für die Spezifikation. –

+0

Ich verwende "Dieses Projekt ist parametrisiert"> "String Parameter". Habe das gerade wiederholt und es funktioniert gut. Welche Version des Plugins verwenden Sie? Verwenden Sie "Freestyle-Build" oder "Pipeline-Skript"? Sehen Sie in den Protokollen die Variable dieselbe wie in der Konfiguration - $ {YOUR_VARIABLE}? –

+0

Ja, ich verwende meistens Freestyle und das neueste Plugin und die neuesten Jenkins. Nichts im Protokoll. Wenn ich es in der Shell widerspreche, wird es ersetzt. –

Verwandte Themen