2013-11-01 20 views
8

Özel işitme mesaj kalıpları nedeniyle Jenkins'deki bir işi iptal etmek veya atlamak mümkün mü? here belirtildiği gibi, iş konfigürasyonunda "Dışlanmış yorumları yorumla" seçeneğinin bu kutunun dışında olduğunu düşündüm. Ancak bu alanda yazdığım düzenli ifade ne olursa olsun, yapı yine de gerçekleştirilir.Jenkins: İletim nedeniyle oluşabilecek yapılardan kaçınınız

Örneğin: Yapım işini, yalnızca yürütme işlemi "serbest bırakma" ifadesini içeriyorsa gerçekleştirmek istiyorum. Bu yüzden Hariç Tutulan Gönderim alanında normal ifadeyi [^ (?: release)] yazıyorum. Bir revizyon gerçekleştirirsem, örneğin "test taahhüdü" yapı işini yapmazsa, düşündüm. Bu işlem sonrası bir kanca kullanılmadığında yapılması gereken doğru yol mu?

+0

Daha basit ifadeler denediniz mi? Ne kadar basit olursa olsun, herhangi bir eşleşme elde etmeye çalışın. – hofan41

cevap

4

Jenkins Git eklentisi, GIT_COMMIT numaralı ortam değişkenini gösterir; tabi ki geçerli go commit hash değerini içerir. kullanın [Jenkins Koşullu Adım] ve aşağıdaki bash kabuğunu yürütmek bir adım inşa:

echo "===========================" 

if [ "git show $GIT_COMMIT | grep "your-pattern-here" == false ] ; then 
     echo "pattern failed"; 
     exit 1 
else 
     echo "ok" 
fi 

echo "===========================" 

Ve kabuk başarısız olursa, yapı başarısız işaretleyin.

+1

Yukarıdaki kodun yakın olduğunu düşünüyorum, ancak doğru değil. Bu benim için işe yaradı ... 'code' [[$ (git $ GIT_COMMIT | daha sonra echo "bu işlemi atlama" çıkış 0 diğer echo – adampasz

3

Geç cevap ancak gelecekte bir tane yardımcı olabilir, git mesajı taahhüt bağlı yapı atlamak için bir eklenti yok, sadece bir build

jenkins-ci-skip-plugin atlayacak taahhüt mesajı Junkin içinde [ci-atlamak] şunlardır