2013-10-04 21 views
15

Jenkins parametreleri büyük/küçük harfe duyarlı mı? Yapımdan önce ayarlanacak "build_parameter" adlı bir ant parametresine ihtiyaç duyan parametreli bir yapımız var. Jenkins tarafından belirlenen $ {BUILD_NUMBER} dosyasına erişmeye çalıştığımda, ant parametresi için ayarlanan değeri alırım. Yapı parametreleri büyük/küçük harfe duyarlı değilse, bu konuda bana bir çalışma önerebilir mi? Oluşturma komut dosyalarımı değiştirmek zorunda kalacağım (bu bir seçenek değil) yapı parametresi adını değiştiremiyorum. Teşekkürler!Jenkins - BUILD_NUMBER ortam değişkenine nasıl erişilir

+0

https://issues.jenkins-ci.org/browse/JENKINS-1322 –

+0

Adarsh ​​bakın eter ve ortam değişkeni $ {BUILD_NUMBER} farklı değerlere sahip. Açık olmadığım için üzgünüm. Jenkins $ {BUILD_NUMBER} değerine erişmenin bir yoluna ihtiyacım var. Bununla birlikte, çevresel değişkenler ($ {BUILD_NUMBER}) için yaptığımız gibi erişmeye çalıştığımda, diğer değeri basar. – Anand

+0

Araştırmamıza göre BUILD_NUMBER size güncel yapı numarası veriyor. Bu yüzden derleme komut dosyanızı değiştirmelisiniz. Veya yeni değişken oluşturmayı deneyin ve BUILD_NUMBER numaralı telefonun değerini ve değerini kullanarak deneyin. –

cevap

15

İlk sorunuzu yanıtlamak için, Jenkins değişkenleri büyük/küçük harf duyarlıdır. Ancak, bir windows batch betiği yazıyorsanız, bunlar büyük/küçük harf duyarsızdır, çünkü Windows bu durumu dikkate almaz.

Kurulumunuz hakkında çok net bir fikre sahip olmadığınızdan, karınca görevinizi tetiklemek için bir karınca oluşturma adımı kullandığınızı varsayalım. Jenkins görevlerini ant görevinize nasıl hazırlayacağınıza ilişkin bir örnek için the Jenkins documentation (Adarsh'ın size verdiği ama aynı bölümdeki aynı sayfaya bakın) bir göz atın.

DÜZENLEME:

Dolayısıyla, ben URL'yi oluşturmak için çevre değişkeni $ {build_number} erişmek gerekir.

$BUILD_URL neden kullanmıyorsunuz? Genişletilmiş e-posta eklentisinde mevcut değil mi? Sorunuzu ve doğru olarak kurulum, anlayışlıyımdır varsayarsak

+0

Peter: Lütfen Sagar'ın yanıtı için yukarıdaki yorumuma bakın. $ {BUILD_NUMBER} çevre değişkeninin değerini almam gerekiyor, ancak diğer parametrenin üzerine yazıldığını varsayalım (küçük harf parametresi). Mac OS kullanıyorum ve bu paramları herhangi bir bash betiğinde kullanmıyorum. Tüm yapmaya çalıştığım, Genişletilmiş E-posta Bildirimi e-posta içeriğinde kullanmaktır. – Anand

+0

Peter: Öneriniz için teşekkürler. Önerdikten sonra $ {BUILD_URL} adresini denedim. Beni yapı sayfasına götürüyor. Eserin doğrudan e-postadaki bağlantıdan yüklenmesini başlatacak şekilde doğrudan nesneyi göstermenin bir yolu var mı? – Anand

+3

$ {BUILD_URL}/artifact/

5

Eğer komut yapı numarasını kullanmaya çalışıyorsanız, seçenekler vardır:

1) çağırarak karınca, kullanımı: ant -Dbuild_parameter=${BUILD_NUMBER}

2) böylece senaryoyu değiştirin: My build_param:

<property environment="env" /> 
<property name="build_parameter" value="${env.BUILD_NUMBER}"/> 
+0

Sagar: Kullanicinin build_number parametresini girmesini (not: alt_kayimda) yapmasi ve sonra karekodumda kullanabilmesi için parametreli yapi kullanim seçenegi kullaniyorum. Ancak, yapay konum ile bir URL olarak bir e-posta göndermem gerekiyor. Bu yüzden, URL'yi oluşturmak için $ {BUILD_NUMBER} olan çevresel değişkene erişmem gerekecek. Artık kullanıcı $ {build_number} parametresini girmiş ve $ {BUILD_NUMBER} arasındaki çevresel değişken farklıdır. Ancak, URL'ye $ {BUILD_NUMBER} değerini eklerseniz, her zaman $ {build_number} içinde depolanan değeri alır. – Anand

+0

Aah tamam. Bu durumda, neden parametre listenizde "build_number" değerini "build.number" olarak değiştirmezsiniz. Hala aynı anlama sahiptir ve insanlar bunu başka bir şeyle karıştırmaz; aynı zamanda BUILD_NUMBER numaralı telefondan tamamen farklı olacak. Durumda duyarsızlık olmadığından emin değilim (sunucunuz veya istemciniz Windows'ta mı?), Ancak bu sizin en iyi yolunuz olacaktır. Komut dosyanızın iç değişkenlerini parametre ve ortam değişkenleriyle eşleştirmek için yukarıdaki 1 veya 2 numaralı noktayı kullanabilirsiniz. – Sagar

İlgili konular