2016-06-06 8 views
11

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

तो, क्या इसे जेनकिन्सफाइल, या संगठन फ़ोल्डर्स, या मल्टीब्रैंच बिल्ड डील के साथ स्थापित करने का कोई तरीका है?

उत्तर

18

multi-branch plugin प्लगइन के साथ संयोजन में github-organization-folder प्लगइन वास्तव में इस भयानक सुविधा प्रदान करता है: यह Jenkinsfile रों के लिए एक पूरे संगठन (वैकल्पिक रेपो/शाखा के नाम में कुछ नमूनों के लिए प्रतिबंधित) को स्कैन करता है और कार्य अपने कहते हैं। यह पुल अनुरोधों के लिए भी होता है।

एक बार पीआर बंद हो जाने पर, यह स्वचालित रूप से नौकरी को हटा देता है।

मनमाने ढंग से कोड निष्पादन से बचने के लिए, एक संगठन के सदस्य को नौकरी बनाने (जीपीआरबी प्लगइन के लिए) को ट्रिगर करना पड़ता है। वाक्यांश जेनकींस सिस्टम सेटिंग्स में कॉन्फ़िगर किया जा सकता है।
संपादित करें: जेनकिन्स में उन्नत अनुभाग के तहत, आपको विकल्पों के बारे में विकल्प मिलते हैं कि आप किस प्रकार के पीआर बनाना चाहते हैं। यदि आप कांटा पीआर बनाते हैं, तो पहले बिना निरीक्षण किए चलने वाले कोड को रोकने के लिए कोई रास्ता नहीं है।


एक उदाहरण है, यह कैसे लगता है कि: जवाब के लिए

PR on Github


PR in Jenkins

+0

धन्यवाद। मुझे अभी एहसास हुआ कि पुल अनुरोध बिल्ड मल्टी-शाखा प्लगइन में निर्मित हैं- दस्तावेज़ों में कहीं भी इसका उल्लेख नहीं किया गया है :) अभी भी खींचने के अनुरोध के लिए कुछ अलग करने का तरीका जानने की आवश्यकता है, लेकिन मुझे लगता है कि यह सिर्फ प्रोग्रामिंग है। –

+6

यदि आप पीआर बिल्ड पर अलग-अलग व्यवहार करना चाहते हैं तो आप 'env.BRANCH_NAME.starts के साथ ('PR -') 'देख सकते हैं। –

+4

या 'env.CHANGE_ID! = Null' –

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