2015-09-09 5 views
14

का उपयोग करके विशिष्ट शाखा में पुल अनुरोध बनाएं, मैं टीमसिटी को विशिष्ट लक्ष्य शाखा में सभी पुल अनुरोधों को बनाना चाहता हूं, उदा। developTeamCity और Github

develop...foo_branch 
develop...bar_branch 

और छोड़ इस:

+:refs/pull/*/head 

या:

master...foo_branch 
master...bar_branch 

TeamCity में मैं सभी अनुरोधों को खींच का निर्माण करने के branch specification परिभाषित कर सकते हैं
तो, मैं निम्नलिखित पुल अनुरोध का निर्माण करना चाहते स्रोत शाखा द्वारा फ़िल्टर को परिभाषित करें:

-:refs/heads/(spikes-*) 

लेकिन मुझे लक्ष्य शाखा द्वारा फ़िल्टर की आवश्यकता है। क्या यह संभव है?

+0

इस से थोड़ा जवाब देंगे, इससे थोड़ा सा। –

+0

भी उत्तर जानना चाहते हैं। – MartinCz

+0

मेरे पास एक ही सवाल है। जवाब प्राप्त करना अच्छा लगेगा – ppapapetrou

उत्तर

3

वर्तमान में टीमसिटी में अपनी लक्षित शाखा के आधार पर पुल अनुरोध शाखाओं को अलग करना संभव नहीं है। अनुरोध https://youtrack.jetbrains.com/issue/TW-43759 अनुरोध के लिए कृपया देखें/वोट करें जो आगामी रिलीज के लिए योजनाबद्ध है।

5

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

https://gist.github.com/dzzh/a6d8631e9617777fb5237bc9ec7b356b

स्क्रिप्ट के लिए काम करने के लिए, आप एक कमांड लाइन तर्क के रूप में पीआर की आईडी प्रस्तुत करना होगा। हम अपने निर्माण को चलाने के लिए अनुशंसित रेफस्पेक (रेफ/पुल/*/हेड) का उपयोग करते हैं, मैं पीआर आईडी निकालता हूं और इसके साथ स्क्रिप्ट का आह्वान करता हूं।

+0

आप अपने गिटहब पीआरएस में दिखाई देने वाले विफलता संदेशों के बिना बिल्ड को कैसे रद्द कर सकते हैं? मुझे https://confluence.jetbrains.com/display/TCD10/Build+Failure+Conditions मिल गया है जो मुझे गलत बिल्ड (ओं) को तुरंत बंद करने का कारण बनता है, लेकिन फिर भी वह गिटहब में असफल बिल्ड की रिपोर्ट नहीं करेगा ? तो अगर मैं अपनी 'रिलीज-2.6' शाखा के खिलाफ पीआर का निर्माण करता हूं लेकिन मेरे पास 3 बिल्ड कॉन्फ़िगरेशन हैं, तो मुझे 2 विफलता स्थिति संदेश दिखाई देंगे "बिल्ड' मास्टर 'विफल"; "बिल्ड 'रिलीज-2.5' असफल" और केवल एक सफलता स्थिति संदेश "बिल्ड 'रिलीज-2.6' सफल हुआ"। क्या आप जानते हैं कि गिटहब में विफलता की रिपोर्ट किए बिना निर्माण को कैसे रोकें? – rmunn