2013-11-01 7 views
8

के कारण निर्माण से बचें क्या विशेष प्रतिबद्धता संदेश पैटर्न के कारण जेनकींस में नौकरी रद्द करना या छोड़ना संभव है? मैंने सोचा कि जॉब कॉन्फ़िगरेशन में "बहिष्कृत कमिट टिप्पणियां" विकल्प मेरे लिए बॉक्स के बाहर है, जैसा कि here का उल्लेख किया गया है। लेकिन इससे कोई फर्क नहीं पड़ता कि मैं इस क्षेत्र में कौन सी नियमित अभिव्यक्ति लिखता हूं, फिर भी निर्माण किया जाता है।जेनकींस: प्रतिबद्ध संदेश

उदाहरण के लिए: मैं केवल निर्माण कार्य करना चाहता हूं यदि प्रतिबद्ध संदेश में अभिव्यक्ति "रिलीज़" शामिल है। तो मैं बहिष्कृत कमिट टिप्पणी क्षेत्र में नियमित अभिव्यक्ति [^ (?: रिलीज)] लिखता हूं। मैंने सोचा कि अगर मैं संशोधन करता हूं, उदाहरण के लिए "परीक्षण प्रतिबद्ध" बिल्ड-जॉब प्रदर्शन नहीं करता है, है ना? क्या पोस्ट-प्रतिबद्ध हुक का उपयोग न करने का यह सही तरीका है?

+0

क्या आपने सरल अभिव्यक्तियों की कोशिश की है? किसी भी मैच को प्राप्त करने का प्रयास करें जिसमें कोई फर्क नहीं पड़ता कि कितना आसान है। – hofan41

उत्तर

4

जेनकिंस गिट प्लगइन आपको पर्यावरण परिवर्तनीय GIT_COMMIT का खुलासा करता है, जिसमें वर्तमान गिट प्रतिबद्ध हैश शामिल है। उपयोग [जेनकींस सशर्त चरण] और एक कदम है जो निम्नलिखित बैश खोल निष्पादित निर्माण:

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

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

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

और निशान है कि अगर खोल विफल रहता है, का निर्माण असफल।

+1

मुझे लगता है कि उपरोक्त कोड करीब है, लेकिन बिल्कुल सही नहीं है। यह मेरे लिए काम करता है ... 'कोड' अगर [[$ (गिट शो $ GIT_COMMIT | grep" [प्रतिबद्धता छोड़ने के लिए स्ट्रिंग] "| wc -m) -ne 0]]; तो गूंज "इस प्रतिबद्धता को छोड़ना" निकास 0 अन्य गूंज "ठीक बनाने के लिए" fi 'कोड' – adampasz

3

देर जबाब लेकिन भविष्य में कुछ एक मदद मिल सकती है, वहाँ Git प्रतिबद्ध संदेश के आधार पर निर्माण को छोड़ने के लिए एक प्लगइन है, बस एक [ci-छोड़] प्रतिबद्ध संदेश junkin में निर्माण

jenkins-ci-skip-plugin छोड़ देगा शामिल

संबंधित मुद्दे