tarafından tetiklendiğinde, Jenkins'de BUILD_USER'ı nasıl alırsınız Post iş e-postasında bir jenkins işini tetikleyen kullanıcıyı göstermek istedim. Bu 'Build User Vars Plugin' eklentisi ve BUILD_USER env değişkenini kullanarak mümkündür. Ancak bu değişken, iş zamanlayıcı tarafından iş başlatıldığında başlatılamaz., işçiye
, işçiye
cevap
Bu, Jenkins 'da çok mümkündür. Yapılandırmayı başlatan kullanıcıyı tanımlayan bir dizi ortam değişkenini ortaya çıkaran, Jenkins için -Build User Vars Plugin adlı bir eklenti vardır. O .. vb BUILD_USER_ID, EMAIL gibi env değişkeni verir
inşa el ile tetiklenebilir olduğunda bu iyi çalışacak bir o
BUILD_USER_ID
için kullanıcı adı oturum giriş yapan kullanıcılar ve vermek nasıl hiç bu env değişken alışkanlıkdetaylar Bu Koşullu derleme Adım Eklentisi/Çalıştır Co kullanarak Job bir koşul enjekte ederek çözülebilir
için bir ekran görüntüsü Ekli inşa otomatik Jenkins zamanlayıcı/zamanlayıcısı tarafından tetiklendiğinde başlatıldı/değiştirilmesi ndition Plugin, her bir işin içinde, BUILD_USER_ID değişkeni, yalnızca zamanlayıcı veya zamanlayıcı tarafından oluşturulduğunda veya tetiklendiğinde, değişken ifadeyi kullanarak bir koşul ekleyebilmek için bir koşul ekleyebiliriz.
belirteci ... EnvInject Eklentisi ve bu kullanılabilir ... ama sadece bunu kullanmak ve çözümü başarmak nasıl bilmek istiyorum - bunu başarabiliriz nasıl i biz adlı bir eklentiyi var biliyorum $ BUILD_CAUSEemail-ext plugin ne arıyorsanız.
'u tıklattığınızda tam içerik belirteci başvurusunu görebilirsiniz., E-posta içeriği yapılandırmasında bağlantı günlüğü oluştur.
Bazı simgeler eklentiler tarafından eklenir, ancak bu varsayılan olarak aviable olmalıdır.
Düzenleme: Yorumlarda bishop tarafından belirtildiği gibi, EnvInject plugin kullanıldığında $ BUILD_CAUSE belirteci farklı davranmaya başlar.
Kullanıyorum 'kabuk Yürütme' ve 'Env enjekte' eklenti bir kombinasyon, aşağıdaki gibi:
- oluşturma varsayılan değerine yazmak ve bir dosya halinde bu değer yankı kabuk parametresi ikame kullanan yapı adım 'shell Yürütme'. Aşağıdaki ekran görüntüsünde vurgulanan örnek.
- Bu dosyayı ayarlamak için özellikler olarak okumak için 'Env Inject' dosyasını kullanın.
Ayrıca bkz. Http://stackoverflow.com/a/10626193/2908724 – bishop
Bu seçenek benim için çalıştı. Bu, yapı değişkenlerini başka bir işe aktardığımdan ve başka bir işte bir parametreli yapıyı tetiklemeye çalıştığımda, aynı "vars" özellik dosyasını sağladığımda çalışmadığı için benim için biraz can sıkıcıdır. Dosyayı asıl işin bir eseri olarak kaydetme ve bir şablon oluşturmak daha zor olan diğerinden alma işlemini bitirdim. – leeman24
- 1. Yansıma özel işçiye nasıl çağrı yapılır
- 2. Kereviz'de mesaj mesajları
- 3. Dosyayı web sunucusuna aktar: DataCloneError: Nesne klonlamadı
- 4. Hızlı iş parçacığı iletişim mekanizması
- 5. AWS Elastik Beanstalk İşçi - Kullanılabilir Kuyruk Mesajlarının Sayısına Dayalı Ölçek
- 6. Rails'de bir gecikmeli iş başlatma,
- 7. Standart olmayan ödev için Munkres algoritması sorunları
- 8. Web Çalışanlarını Kullanarak Olası Bellek Kaçakları (Çöp Toplayıcı)
- 9. Apache Spark ve Uzak Yöntem Çağrısı
- 10. Group_by - Ruby/Raylar + Postgres
- 11. İşçileri, gecikmiş iş + heroku ile iş havuzlarına nasıl ayırırım?
- 12. MongoDB'yi Kereviz için ileti kuyruğu olarak kullanma
- 13. Eşzamansız http isteklerini python'da bir kerede nasıl gönderirim?
- 14. ImageData ile çalışan resim sunucusu Firefox ile çalışıyor ancak Chrome ile çalışma değil
- 15. Master-Slave Kurulumu'nda Apache Solr Yük Devretme Desteği
- 16. Julia'da Paralel programlama
- 17. ThreadLocal ve bekleyin
- 18. Web çalışanı büyük bir dizi işlerken bellekten çıktı
- 19. Tembel/İstekli yükleme/Neo4j/İlkbahar-Veri alma
- 20. Nginx'in çalışan işlemi kilitleniyor ve CPU'nun tamamını alıyor
'$ BUILD_CAUSE' kullanıcı içermez. – bishop
Sizin için öyle. Derlemeye elle başladığımda mesajda ismimi görüyorum. 'BUILD_CAUSE: Gestartet durch Benutzer Dominik Gebhart' Çevirildi: Kullanıcı tarafından başlatıldı Dominik Gebhart. PostCommit kanca veya zamanlayıcı tarafından tetiklenen bir Anket tarafından başlatıldığında ve SCM değişiklikleri üzerine inşa edildiğinde, 'Build wurde durch eine SCM-Änderung ausgelöst.'Translated: SCM değişiklikleri ile tetiklenir' içerir. Değişkenin içeriğinin başka bir eklenti tarafından değiştirildiğini düşünüyor musunuz? –
Gerçekten. E-posta eklentisi [tanımlar] (https: //issues.jenkins-ci.org/browse/JENKINS-3166) dediğiniz gibi, ancak env-inject eklentisi [bunu geçersiz kılar] (https://wiki.jenkins-ci.org/display/JENKINS/EnvInject+Plugin). Lütfen cevabınızda bunu dikkate al, böylece oyları -1'den +1'e çevirebilirim! (Oylama işlemi düzenleninceye kadar oy verildi.) – bishop