Ich versuche, einen Wert für eine Jenkins-Umgebungsvariable anzugeben (wie er im Bildschirm "Jenkins verwalten - & gt; System konfigurieren unter der Überschrift" Globale Eigenschaften "erstellt wurde), der ein Leerzeichen enthält. Ich möchte diese Umgebungsvariable in einem Build-Shell-Build-Schritt verwenden. Die Option, die ich in der Befehlszeile im Build-Schritt erscheinen muss, ist:
%Vor% Die Syntax, die ich in der Befehlszeile verwende, ist --platform=${VARIABLE_NAME}
Egal wie ich es zu formatieren versuche, Jenkins scheint es neu zu formatieren, so dass es als zwei Werte behandelt wird. Ich habe es versucht:
Die entsprechenden Ergebnisse bei der Ausgabe während des Build-Schritts "Shell ausführen" lauteten:
Ich habe auch versucht, meine Befehlszeilensyntax in --platform='${VARIABLE_NAME}'
sowie '--platform=${VARIABLE_NAME}'
zu ändern, aber in jedem dieser Fälle wird ${VARIABLE_NAME}
überhaupt nicht aufgelöst und erscheint nur als ${VARIABLE_NAME}
im resultierenden Befehl.
Ich hoffe, es gibt einen Weg, dies zum Funktionieren zu bringen. Irgendwelche Vorschläge werden am meisten geschätzt.
Sie sollten Leerzeichen ohne Sonderzeichen im Abschnitt mit den globalen Eigenschaften verwenden können.
Ich habe zum Beispiel eine Variable "THIS_VAL" auf den Wert "HAS SPACES" gesetzt.
Mein Testaufbaujob war folgender:
%Vor%und die Ausgabe war
%Vor%Ich denke, was Sie tun müssen, ist Folgendes:
%Vor%HINWEIS: Verwenden Sie doppelte Anführungszeichen, keine einfachen Anführungszeichen . Durch Verwendung von einfachen Anführungszeichen wird der Inhalt innerhalb des Anführungszeichen-Literals gesetzt, was bedeutet, dass alle Variablen so gedruckt werden, wie sie sind, und nicht in den tatsächlichen Wert zerlegt werden. Daher wird '$ {VARIABLE_NAME}' so gedruckt, wie es ist, nicht in 'Windows 7' geparst.
BEARBEITEN: Berücksichtigen Sie basierend auf dem Kommentar von @BobSilverberg Folgendes:
%Vor%Hinweis: keine geschweiften Klammern.
Tags und Links jenkins environment-variables