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ı?
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ı?
Aynı ortam değişkenlerine aynı adları kullanarak groovy'dan erişebilirsiniz (ör. JOB_NAME
veya env.JOB_NAME
). belgelerine
, özellikle birden fazla düğümleri kullanarak,Ç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
env
değiştirdikten sonra yan etkilerin sorunları önlemek için herhangi Boru Hattı işinden
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
"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.
Boru hattınızda bulunan değişkenleri görmek istiyorsanız, bu cevaba bir göz atabilirsiniz. https://stackoverflow.com/a/42138466/1238300 –