मैं शेल स्क्रिप्ट को निष्पादित करने की कोशिश कर रहा हूं यदि या तो बिल्ड पास या जेनकिंस में पोस्ट-बिल्ड के बाद विफल हो जाता है। मैं लक्ष्य बनाने के अलावा कुछ शेल स्क्रिप्ट निष्पादित करने के लिए पोस्ट बिल्ड में यह विकल्प नहीं देख सकता।
जवाबों:
पोस्ट बिल्ड टास्क प्लगइन के साथ बहुत आसानी से किया जाता है ।
आप ग्रूवी पोस्ट बिल्ड का उपयोग करके मनमाना कमांड भी चला सकते हैं - और जब वे चलते हैं और आगे बढ़ते हैं तो इससे आपको बहुत अधिक नियंत्रण मिलेगा। हम असफल या अस्थिर बनाता है कि मामले में 'उंगली की दोष' खोल स्क्रिप्ट चलाने के लिए उपयोग करें।
if (manager.build.result.isWorseThan(hudson.model.Result.SUCCESS)) {
item = hudson.model.Hudson.instance.getItem("PROJECTNAMEHERE")
lastStableBuild = item.getLastStableBuild()
lastStableDate = lastStableBuild.getTime()
formattedLastStableDate = lastStableDate.format("MM/dd/yyyy h:mm:ss a")
now = new Date()
formattedNow = now.format("MM/dd/yyyy h:mm:ss a")
command = ['/appframe/jenkins/appframework/fob.ksh', "${formattedLastStableDate}", "${formattedNow}"]
manager.listener.logger.println "FOB Command: ${command}"
manager.listener.logger.println command.execute().text
}
(हमारी कमान अंतिम स्थिर बिल्ड तिथि और वर्तमान समय को मापदंडों के रूप में लेती है ताकि यह जांच हो सके कि किसने निर्माण को तोड़ दिया है, लेकिन आप जो कुछ भी आदेश दे सकते हैं उसे उसी तरह से चला सकते हैं)
अगर मैं आपके प्रश्न को सही से पढ़ रहा हूं, तो आप पोस्ट बिल्ड एक्शन भाग में स्क्रिप्ट चलाना चाहते हैं।
मैं स्वयं बिल्ड के बाद चलने वाली कलाकृतियों और प्रकाशित परीक्षा परिणामों के बाद चलने के लिए PostBuildScript प्लगइन का उपयोग करता हूं git clean -fxd
। मेरे जेनकिंस दासों में SSD डिस्क हैं, इसलिए मेरे पास कार्यक्षेत्र में उत्पन्न फ़ाइलों को रखने की जगह नहीं है।
आपको बैच टास्क प्लगइन के साथ ऐसा करने में सक्षम होना चाहिए ।
एक विकल्प पोस्ट बिल्ड टास्क प्लगइन भी हो सकता है ।
आपको पोस्ट-बिल्ड शेल स्क्रिप्ट को एक अलग जेनकींस जॉब के रूप में स्थापित करना होगा और इसे पोस्ट-बिल्ड चरण के रूप में ट्रिगर करना होगा। ऐसा लगता है कि आपको पैरामीटाइज्ड ट्रिगर प्लगिन का उपयोग करने की आवश्यकता होगी क्योंकि मानक "बिल्ड अन्य प्रोजेक्ट्स" विकल्प केवल तभी काम करता है जब आपका ट्रिगर बिल्ड सफल हो।