मेरे पास 3 पायथन पैकेज proj1
, proj12
और proj13
हैं। proj12
और proj13
proj1
(from proj1.xxx import yyy
के साथ) पर निर्भर करता है।परस्पर निर्भर व्हील के परीक्षण/निर्माण का प्रबंधन करने के लिए गिटलाब-सीआई का उपयोग कैसे करें
3 परियोजनाएं निजी गिटलैब उदाहरण पर हैं, प्रत्येक के पास इसका अपना .gitlab-ci
है।
में proj1http://gitlab.me.com/group/proj1/.gitlab-ci.yml
हम unittest चलाने और एक पहिया एक विरूपण साक्ष्य ::
# http://gitlab.me.com/group/proj1/.gitlab-ci.yml
image: python:2
mytest:
artifacts:
paths:
- dist
script:
- apt-get update -qy; apt-get install -y python-dev python-pip
- pip install -r requirements.txt
- python setup.py test
- python setup.py bdist_wheel
look:
stage: deploy
script:
- ls -lah dist
proj12 और proj13 में जैसे के लिए के रूप में सामने आ रहा बनाने http://gitlab.me.com/group/proj12/.gitlab-ci.yml
हम भी परीक्षण करना चाहते हैं, लेकिन मुझे इसे चलाने के लिए proj1
पहिया स्थापित करने की आवश्यकता है।
सभी 3 परियोजनाएं एक ही गिटलैब निजी समूह में हैं।
यह करने के लिए gitlab तरीका क्या है?
- एक artifact
-
इस मामले मैं कैसे फोन/
- साथ
proj12
कोproj1
पहिया पारित करने के लिए? यह वही गिटलैब है, एक ही समूह है, लेकिन एक अलग परियोजना है।
http://gitlab.me.com/group/proj12/.gitlab-ci.yml
में विरूपण साक्ष्य प्राप्त करने के लिए पता नहीं है में - साथ
proj12/.gitlab-ci.yml
मेंproj2
क्लोन करने के लिए ssh_keys स्टोर करने के लिए एक gitlab गुप्त चर का प्रयोग करें?- https://gitlab.com/gitlab-org/gitlab-ce/issues/4194
- से संबंधित इस तथ्य का लाभ नहीं ले करता है कि
proj1
,proj12
औरproj13
ही gitlab और एक ही समूह, व्यक्ति जो करने के लिए प्रमाणिकता के रूप में एक परियोजना के लिए निर्माण कर में हैं अन्य शामिल हैं। सभी 3 उपयोगकर्ता निजी टोकन से जुड़े हुए हैं।
मैं devpi या समाधान की तरह pypiserver को तैनात करने के लिए से बचने के लिए प्रयास करें।
-
:
तो मैं क्या proj12.gitlab-ci.yml
में लिखने के लिए हमारे मुद्दे से संबंधित
# http://gitlab.me.com/group/proj12/.gitlab-ci.yml
image: python:2
mytest12:
script:
- apt-get update -qy; apt-get install -y python-dev python-pip
- pip install -r requirements.txt
- pip install .
- => some way here to get the proj1 wheel
- pip install proj1-0.42-py2-none-any.whl
- python setup.py test
लिंक proj1 मिसाल निर्माण :: से dist/proj1-0.42-py2-none-any.whl
पहिया पाने के लिए पर देख रहा हूँ
मैंने आपकी टिप्पणियों के साथ अपने प्रश्न को प्रभावित किया है, मुझे नहीं पता कि हम किसी अन्य परियोजना के 'gitlab-ci.yml'' में एक परियोजना के निर्माण में बनाए गए आर्टिफैक्ट का उपयोग कर सकते हैं। – user3313834
@ user3313834 आप आर्टिफैक्ट को पथ के रूप में आपूर्ति करते हैं, यह आपके अगले निर्माण में उसी पथ में उपलब्ध है। आप पथ दूर है इसलिए बस अपने अगले निर्माण में पहले चरण के रूप में 'ls dist' करें और आप इसे देखेंगे। –
हां मैंने वास्तव में आर्टिफैक्ट गिटलैब दस्तावेज़ीकरण को ध्यान से पढ़ा है, आर्टिफैक्ट उसी कंटेनर के पथ ** में ** ** एक ही प्रोजेक्ट में ** ** ** ** iit ** gitlab-ci.yml के काम से पहुंचा जा सकता है। हमें प्रोजे 12 में प्रोजेक्ट 1 में उपलब्ध आर्टिफैक्ट की आवश्यकता है, एक अलग गिटलैब प्रोजेक्ट, एक अलग गिट रिपोजिटरी। मुझे शायद कुछ याद आती है लेकिन प्रलेखन जो आप एक ही परियोजना के काम के साथ आर्टिफैक्ट साझा करते हैं। – user3313834