Sto tentando di specificare un valore per una variabile di ambiente Jenkins (come creato nella schermata Gestisci Jenkins -> Configura sistema, sotto l'intestazione "Proprietà globali") che contiene uno spazio. Voglio utilizzare questa variabile di ambiente in un passo di generazione di Execute Shell. L'opzione che ho bisogno di apparire nella riga di comando nel passaggio di generazione è:Come specificare un valore per una variabile di ambiente Jenkins che contiene uno spazio
--platform="Windows 7"
La sintassi che sto usando sulla riga di comando è --platform=${VARIABLE_NAME}
Non importa come tento di formattarlo, Jenkins sembra riformattarlo in modo che venga considerato come due valori. Ho provato:
- Windows 7
- "Windows 7"
- 'Windows 7'
- Windows \ 7
I corrispondenti risultati, quando l'uscita durante la fase di eseguire la shell costruire è stato:
- --platform = Windows 7
- '--platform = "Windows' '7" '
- '--platform =' \ '' Windows' '7' \ '''
- --platform = di Windows/7
Ho anche provato a modificare la sintassi della mia riga di comando su --platform='${VARIABLE_NAME}'
e '--platform=${VARIABLE_NAME}'
, ma in ciascuno di questi casi lo ${VARIABLE_NAME}
non è stato risolto affatto e appare come ${VARIABLE_NAME}
sul comando risultante.
Spero che ci sia un modo per farlo funzionare. Ogni suggerimento è più apprezzato.
Grazie Sagar. Tra tutte le combinazioni che ho provato, non era uno di loro. Alla fine ha funzionato, ma ho dovuto specificare '--platform =" $ VARIABLE_NAME "'. Se ho usato '--platform =" $ {VARIABLE_NAME} "' ha inserito alcune virgolette in più, quindi il risultato era ''--platform =' \ '' Windows 7 '\' '''. – BobSilverberg
Ottimo! Inserirò la correzione nella risposta. Grazie! – Sagar