Ich versuche, Artefakte von einem Nexus-Server herunterzuladen. Also habe ich das untenstehende ps-Skript gefälscht.Fehler beim Parametrieren einer Download-URL im Powershell-Skript
$Webclient = New-Object System.Net.WebClient
$Nexusurl = "http://ec2-54-xxx-xxx-xxx.us-west-2.compute.amazonaws.com:8081/nexus/content/repositories/releases/org/bar" + "/" + ${BUILD_NUMBER} + "/" + ${ProjectName}.zip
$Webclient.DownloadFile($Nexusurl, 'c:\webcontent.zip')
Ich habe 2 Dinge als Parameter in der PS. Die BUILD_NUMBER des jenkin und der ProjectName. Diese 2 werden als Parameter im jenkins-Job festgelegt. Die ProjectName
ist der Name des Artefakts auf dem Nexus-Server, der heruntergeladen werden soll.
Der Befehl wird ohne Fehler ausgeführt. Aber die Datei c:\webcontent.zip
wird beim Dekomprimieren als ungültig angezeigt. Also, ich denke, die URL ($ Nexusurl) ist falsch beim Ausführen der PS konstruiert. Hinzufügen eines Echo ähnliche
echo $Nexusurl
ergab, dass die URL die Parameter fehlt. Sie sind nicht in der $Nexusurl
http://ec2-54-xxx-xxx-xxx.us-west-2.compute.amazonaws.com:8081/nexus/content/repositories/releases/org/bar//
ersetzt Was bin ich falsch tun, dass die Parameter in der URL nicht ersetzt werden. Ich habe viele Kombinationen ausprobiert, aber bisher nicht erfolgreich!