2016-11-07 4 views
5

मैं एक netcoreapp1.0 कि मैं Bitbucket पाइपलाइनों का उपयोग कर निर्माण और dotnet pack साथ पैक MyAssembly.Api.1.0.0 बीटा है, और ऑक्टोपस के लिए धक्का एक पैकेज के रूप में तैनात -। * Nupkg जहां * है एक प्रतिबद्ध संख्या/निर्माण संख्या (या कोई अन्य स्थिर वृद्धि संख्या) होना चाहिए।वृद्धि Bitbucket पाइपलाइनों में एक नंबर

चूंकि जीआईटी में प्रतिबद्ध पहचानकर्ता यूयूआईडी हैं, इसलिए मैंने प्रतिबद्धता प्राप्त करने के लिए निम्नलिखित आदेशों (नीचे देखें) की कोशिश की है, लेकिन परिणामी प्रतिबद्धता गिनती बहुत अविश्वसनीय है और उम्मीद के अनुसार काम नहीं करती है। स्थानीय रूप से मुझे यह ठीक काम मिल रहा है और मेरे स्थानीय रिपो में किए गए हर प्रतिबद्धता के लिए प्रतिबद्धता गिनती बढ़ी है। दुर्भाग्य से, कोई भी आदेश पाइपलाइन में काम नहीं करता है (एक डॉकर कंटेनर में चल रहा है)। किसी कारण से प्रतिबद्धता गिनती वही रहती है या कभी-कभी घट जाती है।

मैंने कहीं पढ़ा है कि इसे "उथला/अनशोला" गिट रेपो ब्लैब्ला ... के साथ करना है, और यह हर बार लॉग इन करके (जीआईटी में) हल करके हल किया जा सकता है। मैं ऐसा नहीं करना चाहता हूं अगर मैं इससे बच सकूं, और मुझे यह बहुत ही विडंबना मिलती है कि मुझे बिटबकेट के भीतर जीआईटी में लॉगिन करने की आवश्यकता होगी।

git shortlog | grep -cE '^[ ]+\w+' 
git rev-list HEAD --count 
git rev-list --all --count 
git rev-list --no-merges --count HEAD 
git log --pretty=format:'' | wc -l 
git log master --pretty=oneline | wc -l 

क्यू: वहाँ एक मूल्य को बढ़ा देते हैं और एक पाइप लाइन में एक चर के रूप में यह तक पहुँचने के लिए किसी भी अन्य रास्ता नहीं है?

उत्तर

2

जैसा कि आप पहले से ही खोज चुके हैं कि यह गिट रिपोजिटरी या इतिहास से सीधे वृद्धिशील संख्या प्राप्त करने के लिए आसान नहीं है या नहीं।

बिटबकेट पाइपलाइनों में चर पढ़ने और सेट करने का एक और तरीका "Environement variables" है।

इस समस्या को हल करने के लिए मैं क्या करूँगा वांछित प्रारंभिक मूल्य के साथ एक पर्यावरण चर सेट करना है और फिर बिटकबकेट पाइपलाइनों में चलने वाली स्क्रिप्ट में सीधे इस पर्यावरण चर में संख्या को बढ़ाएं।

+0

"तो स्क्रिप्ट जो Bitbucket पाइपलाइन में चलाता में सीधे इस वातावरण चर में संख्या को बढ़ा देते?" जैसा कि मैंने समझा है, मेरे पास पर्यावरण चर के लिए लेखन पहुंच नहीं है? – Marcus

+2

बिटबकेट एपीआई https://developer.atlassian.com/bitbucket/api/2/reference/resource/repositories/%7Busername%7D/%7Brepo_slug%7D/pipelines_config/variables/% का उपयोग करके भंडार स्तर कस्टम चर अद्यतन करना संभव है 7Bvariable_uuid% 7 डी। मैं काउंटर अपडेट करने के लिए इसका उपयोग करने के लिए एक दृष्टिकोण पर काम कर रहा हूं –

0

हम अभी बिल्ड नंबर प्राप्त करने के लिए $ BITBUCKET_BUILD_NUMBER पर कॉल कर सकते हैं, जो आपके भंडार में प्रत्येक निर्माण के लिए एक वृद्धिशील बिल्ड नंबर है जो पर्यावरण चर के रूप में उपलब्ध है। आप यह कैसे किया जा होगा पर विस्तृत कर सकते हैं -

https://bitbucket.org/site/master/issues/12838/build-number-that-increments-on-every

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