у меня есть много проектов в различных хранилищах, которые разделяют те же основные CI-технологический процесс, который я могу легко выразить как трубопровод декларативной:Как разделить трубопровод декларативного по многим проектам
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
}
}
}
Я хотел бы использовать тот же декларативный трубопровод во всех моих проектах и иметь возможность изменять определение Pipeline только в одном месте и автоматически менять изменения во всех проектах.
По сути то, что я бы делать в проекте; s Jenkinsfile это:
loadPipelineFromScm 'repository', 'pipeline.groovy'
Я уже могу сделать это с помощью разделяемых библиотек, но я не могу больше использовать декларативной Pipeline.
Есть ли способ поделиться Декларативный Трубопровод по многим хранилищам?
Вы уверены, что декларативная трубопровод не может работать в общей библиотеке? Документ [Декларативный трубопровод: уведомления и общие библиотеки] (https://jenkins.io/blog/2017/02/15/declarative-notifications/), похоже, делает именно это. Не могли бы вы сделать что-то подобное? – herm