2017-01-12 20 views
12

Jenkins Boru Hattı Başlığı almak için herhangi bir ortam değişkeni var mı?Ortam değişkeni Jenkins boru hattında

$JOB_NAME, freestyle job, için başlığı almak için biliyorum ama Pipeline adını almak için kullanılabilecek bir şey var mı?

+0

Boru hattınızda bulunan değişkenleri görmek istiyorsanız, bu cevaba bir göz atabilirsiniz. https://stackoverflow.com/a/42138466/1238300 –

cevap

30

Aynı ortam değişkenlerine aynı adları kullanarak groovy'dan erişebilirsiniz (ör. JOB_NAME veya env.JOB_NAME). belgelerine

:

Çevre değişkenleri Groovy kodu env.VARNAME olarak veya sadece VARNAME olarak erişilebilir.

env.MYTOOL_VERSION = '1.33' 
node { 
    sh '/usr/local/mytool-$MYTOOL_VERSION/bin/start' 
} 

Bu tanımlar, yapı sırasında veya tamamlanmasından sonra geriye kalan API ile sunulacak ve üst boru hattından bir yapı kullanılarak ortaya koyar: Eğer (. Yalnızca env öneki kullanılarak) ve ayrıca bu tür özelliklere yazabilen adım. belgelerin geri kalanı için

, özellikle birden fazla düğümleri kullanarak, env değiştirdikten sonra yan etkilerin sorunları önlemek için herhangi Boru Hattı işinden enter image description here

+0

Teşekkürler, env.MyVariable kullanıyorum ve şimdi benim şu anda çalışıyorum, ortam değişkenlerini boru hattından tanımlayabilirim. Bana biraz zaman ayırdığınız için teşekkürler. – Akki

15

"Boru Hattı sözdizimi" bağlantısına tıklayın, ayarlamanın daha iyi olduğunu geçici bir bağlam. çevreyi değiştirmek için

Tek güvenli yoludur:

withEnv(['MYTOOL_HOME=/usr/local/mytool']) { 
    sh '$MYTOOL_HOME/bin/start' 
} 

Bu yaklaşım komut yürütme sonrasında env zehir etmez.

İlgili konular