我正在尝试使用Jenkinsfile构建Jenkins声明式管道。 Jenkinsfile将出现在该项目的仓库中。
Jenkins文件类似于以下内容:
pipeline {
agent any
stages {
stage('Build') {
steps {
echo 'Building..'
}
}
stage('Test') {
steps {
echo 'Testing..'
}
}
stage('Deploy') {
steps {
echo 'Deploying....'
}
}
} }
但是,无论文件如何,我都希望在Jenkins中强制执行某些阶段。因此,例如,管道将从文件运行Build-> Test-> Deploy阶段以及在Jenkins上预定义的其他阶段,就像它是脚本管道一样。
您知道这是否可行吗?我该怎么办?
答案 0 :(得分:1)
您可以使用shared library重用代码。它不会像您希望的那样平滑,但是您可以使用global variables和/或custom steps来封装通用功能。
这将需要一些粘合代码(@Library()
,script { }
等),但是这种方法非常明确和强大-您可以在管道的任何位置使用库。
答案 1 :(得分:1)
也许你可以试试Jenkins Templating Engine。 它为您提供全面的 Jenkins 管道治理和模板功能。