2013-05-14 7 views
35

मैं दो गीट भंडारों का उपयोग करके एक परियोजना बनाना चाहता हूं। उनमें से एक स्रोत कोड के होते हैं, जबकि दूसरे में निर्माण और तैनाती स्क्रिप्ट होती है।जेनकींस: एक परियोजना के लिए एकाधिक गिट भंडार

मेरी समस्या यह है कि मुझे परियोजना के विभिन्न हिस्सों (बड़ी परियोजना, एकाधिक भंडार, समान निर्माण और तैनाती स्क्रिप्ट) के निर्माण और तैनाती के लिए एक भंडार की आवश्यकता है, लेकिन जेनकींस इसे संभालने में सक्षम नहीं प्रतीत होता है (या मुझे नहीं पता/कैसे नहीं मिला)।

+0

यह http://stackoverflow.com/questions/14843696/checkout-multiple-git-repos-into-same-jenkins-workspace –

उत्तर

29

अद्यतन

एकाधिक एस सी एम एस प्लगइन अब पदावनत गया है ताकि उपयोगकर्ता Pipeline plugin को माइग्रेट कर लेना चाहिए।

पुराना जवाब

हाँ, जेनकींस इस संभाल कर सकते हैं। स्रोत कोड प्रबंधन के तहत बस Multiple SCMs का उपयोग करें, अपनी रिपॉजिटरीज़ जोड़ें और फिर प्रत्येक संग्रह के उन्नत अनुभाग पर जाएं। यहां आपको Local subdirectory for repo (optional) और Unique SCM name (optional) सेट करने की आवश्यकता है।

आपकी रिपॉजिटरी को आपके द्वारा सेट की गई स्थानीय उपनिर्देशिका में खींचा जाएगा ताकि आप उन्हें किसी भी क्रम में बना सकें।

प्रति harish के उत्तर को अपडेट करना - आपको इस कार्यक्षमता को प्राप्त करने के लिए Multiple SCMs Plugin इंस्टॉल करने की आवश्यकता है।

+0

एकाधिक एससीएम प्लगइन अब बहिष्कृत के रूप में सूचीबद्ध है। –

18

पेट्र मेन्सिक से उत्तर सही है लेकिन यह जेनकींस में डिफ़ॉल्ट रूप से उपलब्ध नहीं प्रतीत होता है। इस सुविधा को प्राप्त करने के लिए एकाधिक एससीएम प्लगइन स्थापित करने की आवश्यकता है: https://wiki.jenkins-ci.org/display/JENKINS/Multiple+SCMs+Plugin

2

एकाधिक एससीएम से निपटने के दौरान बस अपना अनुभव साझा करना। यदि आप अपने जेनकींस बिल्ड में एकाधिक गिट रिपॉजिटरीज जोड़ना चाहते हैं, तो सुनिश्चित करें कि अन्य गिट प्लगइन संस्करण एकाधिक एससीएम प्लगइन के साथ संगत हैं।

  • GitHub एपीआई प्लगइन 1.44
  • जेनकींस GIT क्लाइंट प्लग इन 1.6.2
  • जेनकींस GIT प्लगइन 2.0.1
  • Git सर्वर प्लगइन 1.2
  • : यहाँ प्लगइन संस्करण के साथ जो मेरे लिए काम किया की एक सूची है
  • एकाधिक एससीएम 0.2

इससे पहले मैंने एकाधिक एससीएम 0.3 में अपग्रेड किया था और मैं उस खंड में कोई भी गिट रेपो जोड़ने में सक्षम नहीं था।

Rgds, मनु

9

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

नीचे एक नमूना कॉन्फ़िगरेशन है कि मैं इसे पाइपलाइन के साथ कैसे करने में कामयाब रहा।

node() { 
    stage ('Extract') { 
    parallel 'Extract':{ 
     dir('project1') { 
     git url: 'ssh://[email protected]/project1.git' 
     } 
     dir('project2') { 
     git url: 'ssh://[email protected]/project2.git' 
     } 
    } 
    } 
} 
+1

यह स्वीकार्य उत्तर होना चाहिए! तुमने मेरी जान बचाई। – renelopez

0

जब आप एकाधिक एससीएम प्लगइन के माध्यम से एक और एससीएम जोड़ते हैं और गिट चुनते हैं। आप रेपो के लिए 'अतिरिक्त व्यवहार' विकल्पों के माध्यम से 'उप-निर्देशिका में जांचें' को निर्दिष्ट कर सकते हैं। इस प्रकार आप वर्कस्पेस में एकाधिक रिपोज़ प्राप्त कर सकते हैं।

+0

मुझे एहसास है कि यह एक पुराने प्रश्न का उत्तर है, लेकिन मैं एक ही मुद्दे के साथ प्रश्न में आया और एक समाधान मिला। – enkor

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