1

我正在使用 Jenkins 多分支管道。我在流水线语法生成器的帮助下创建了一个 Jenkins 文件。我的 Jenkinsfile 工作正常且符合预期。

但是现在我想集中管理这个 Jenkinsfile,所以我不必将它复制到我所有的 (git) 存储库中。我看到有一些选项可以使用通用的 groovy 脚本并将方法作为模块加载。但这意味着我必须用不同的语法重写我的 Jenkinsfile?

我尝试了几种选择,但都没有成功。例如,我已将 jenkinsfile 添加到其自己的 git 存储库中,并将该存储库作为子模块添加到(代码)存储库中。然后我尝试在 Jenkins 中进行如下图所示的配置

这是前进的方向吗,有什么(简单的)方法可以实现我想要完成的工作吗?

詹金斯配置示例

4

2 回答 2

1

你是对的,但另一个 stackoverflow awnser 帮助我解决了我的问题。奇怪的是我再也找不到它了:(。

简而言之:

我将整个管道减速定义为全局变量(在名为 var\soaPipeline.groovy 的文件中)

def createSOAStandardDeclarativePipeline() {
        node {
            stage('checko.....

将 Jenkinsfile 添加到代码仓库。该文件包含以下行:

soaPipeline.createSOAStandardDeclarativePipeline()

然后在jenkins中配置: jenkins配置

于 2017-09-27T11:54:25.677 回答
1

Jenkins 共享库插件可以帮助您。查看文档

于 2017-09-26T14:59:22.113 回答