मैं अलग खजाने जो हिस्सा एक ही मौलिक सीआई-कार्यप्रवाह, जो मैं आसानी से एक घोषणात्मक पाइपलाइन के रूप में व्यक्त कर सकते हैं में परियोजनाओं की एक बहुत कुछ है भर में एक घोषणात्मक पाइपलाइन साझा करने के लिए:कितने परियोजनाओं
pipeline {
agent any
options {
buildDiscarder(logRotator(numToKeepStr: '20'))
}
stages {
stage('CI') {
steps {
echo 'Do CI'
}
}
stage('QA') {
steps {
echo 'Do QA'
}
}
}
post {
always {
junit allowEmptyResults: true, testResults: '**/target/surefire-reports/TEST-*.xml'
// etc...
}
failure {
echo 'Failure mail'
// etc
}
}
}
मैं चाहूँगा मेरी सभी परियोजनाओं में एक ही घोषणात्मक पाइपलाइन का उपयोग करने के लिए और केवल एक ही स्थान पर पाइपलाइन की परिभाषा को बदलने की क्षमता है और सभी परियोजनाओं में स्वचालित रूप से उपयोग किए जाने वाले परिवर्तन हैं।
अनिवार्य रूप से क्या मैं एक परियोजना में क्या करना होगा की Jenkinsfile यह है:
loadPipelineFromScm 'repository', 'pipeline.groovy'
मैं पहले से ही साझा पुस्तकालयों के साथ ऐसा कर सकते हैं, लेकिन तब मैं अब और घोषणात्मक पाइपलाइन सुविधाओं का उपयोग करने में सक्षम नहीं हूँ।
क्या साझा करने का कोई तरीका है घोषणात्मक कई रिपॉजिटरीज़ में पाइपलाइन?
आप यह सुनिश्चित करें कि एक कथात्मक पाइपलाइन एक साझा लाइब्रेरी में काम नहीं कर सकता हैं:
निम्न समस्या जेनकींस के पीछे टीम द्वारा अस्वीकार कर दिया देखते हैं? [घोषणात्मक पाइपलाइन: अधिसूचनाएं और साझा पुस्तकालय दस्तावेज] (https://jenkins.io/blog/2017/02/15/declarative-notifications/) वास्तव में ऐसा करने लगते हैं। क्या आप कुछ ऐसा नहीं कर सके? – herm