Desidero avere un lavoro per impostare la variabile di ambiente e utilizzare queste variabili di ambiente in tutti i lavori successivi. Come posso impostare la variabile di ambiente tramite Jenkins?Come impostare la variabile di ambiente da un lavoro e usarlo nel prossimo lavoro in jenkins?
risposta
Tecnicamente, non è possibile passare le variabili di env da un lavoro a quello successivo e non sono a conoscenza di un plug-in per farlo subito.
Esiste comunque una tecnica. L'idea è di creare un file delle proprietà nel primo lavoro (ad esempio exported.properties), aggiungere quel file alle risorse del lavoro e quindi importare questo file tramite lo EnvInject plugin nel secondo lavoro.
Questo presuppone che si abbia un collegamento tra il primo e il secondo lavoro, che viene in genere ottenuto con il plug-in Copy Artifact, ma un certo numero di plug-in come il flusso di lavoro può essere d'aiuto.
Ad esempio, per creare il file delle proprietà, aggiungere un passaggio "Esegui shell", ad es.
echo "# Saving some version properties
BUILD_VERSION=${BuildVersion}
BUILD_NODE_NAME=${NODE_NAME}
SOURCE_JOB=${JOB_NAME}
" > ${WORKSPACE}/BuildVersion.properties
Naturalmente, è possibile utilizzare altri passi di costruzione, ad es. Shell di Windows, script groovy, ecc ... ognuno con la loro sintassi specifica, ovviamente.
Ci sono due modi per farlo a seconda del caso d'uso: -
1) EnvfilePlugin -
installare questo plug-in, se le variabili d'ambiente sono costanti e non cambiare al volo/dinamico allora è possibile salvarli in un file di testo e dare il giuramento del file nella pagina di configurazione del lavoro di Jenkins. Sotto Controllo ambiente di compilazione Impostare le variabili di ambiente attraverso un file. indica qui il percorso di quel file.
Se la variabile di ambiente viene creata nel primo lavoro, è possibile salvare nuovamente tutte le variabili di ambiente in un file e sfogliarlo utilizzando il metodo precedente.
2) EnvInject plugin -
installare questo plug-in e andare a paeg configurazione del processo. Selezionare "Prepara un ambiente per l'esecuzione" e salvare le proprietà come menzionato da Patrice nella risposta sopra, specificare anche il percorso dello script e altri dettagli.
È possibile effettuare i lavori a valle parametrizzati (aggiungere parametri nella pagina di configurazione del processo), quindi attivare questo lavoro da un monte Workflow lavoro, lo script del flusso di lavoro sarebbe qualcosa di simile a questo:
build job: 'my-downstream-job', parameters:
[[$class: 'StringParameterValue', name: 'MY_VAR', value: 'Hello world!']]
Poi si può utilizzare MY_VAR
come desiderato nel proprio my-downstream-job
.
- 1. Rinomina un lavoro in jenkins
- 2. Passaggi saltati nel lavoro di Jenkins
- 3. Come eseguire automaticamente un lavoro Jenkins parametrizzato
- 4. Come impostare una variabile di ambiente a livello di codice in Jenkins/Hudson?
- 5. Jenkins + Build Flow, come passare una variabile da un lavoro a un altro
- 6. come ottenere $ CAUSE nel flusso di lavoro
- 7. Come impostare su un LAVORO QUARTZ per iniziare solo quando un altro LAVORO è terminato, fermato?
- 8. Come recuperare il lavoro cancellato di Jenkins?
- 9. Può un Jenkins Trigger un lavoro su un jenkins remoto
- 10. Ritardante lavoro Jenkins post-build
- 11. Come ottenere il nome di lavoro da jenkins
- 12. Differenza tra lavoro Jenkins e progetto
- 13. Come caricare un file generico in un lavoro Jenkins?
- 14. Lavoro matrice Jenkins con virgole
- 15. Passare l'output di un lavoro in Jenkins a un altro lavoro
- 16. Come creare e configurare un nuovo lavoro Jenkins usando groovy?
- 17. Come impostare la directory di lavoro su un commit precedente?
- 18. Hopping da un lavoro C++ a un lavoro Perl/Unix
- 19. ordine di lavoro jenkins a più configurazioni
- 20. Nel lavoro jenkins, creare il file utilizzando il sistema groovy nello spazio di lavoro corrente
- 21. Come si rimuove un lavoro in pipeline inarrestabile in Jenkins?
- 22. Ignora la variabile di ambiente durante l'esecuzione su Jenkins
- 23. Come eseguire uno script PowerShell come un lavoro in Jenkins
- 24. Impostare un lavoro "su richiesta" in HangFire
- 25. Jenkins Controllo di un'area di lavoro fresca
- 26. Perché non gradle eseguire da un lavoro jenkins
- 27. Strategia per la distribuzione di Maven tramite un lavoro Jenkins
- 28. Jenkins - aggiungi un grafico all'interfaccia del lavoro
- 29. Come impostare la directory di lavoro in NAnt?
- 30. API REST Jenkins Crea lavoro
Come posso creare un file di proprietà nel primo lavoro? Esiste un plug-in? Puoi aiutarmi con un esempio? –
Aumentata la risposta con un esempio con uno scriptlet della shell (* nix) –