具有外部定义的Jenkinsfile的多分支配置

我有一个开源项目,该项目位于GitHub上,并使用由Jenkins控制的构建场构建。

我想使用管道以分支方式构建它,但是我不想在代码内存储Jenkinsfile。有没有办法做到这一点?

回答:

首先,为什么不希望在代码中使用Jenkinsfile?管道和构建文件一样,是代码的一部分。

除此之外,您还可以加载常规文件以将其评估为管道脚本。您可以使用from SCM选项从其他位置执行此操作,然后签出实际代码。但这将迫使您手动处理分支构建。

另一个选择是拥有一个非常基本的Jenkinsfile,它仅签出一个外部管道。

您将获得如下内容:

node{

deleteDir()

git env.flowScm

def flow = load 'pipeline.groovy'

stash includes: '**', name: 'flowFiles'

stage 'Checkout'

checkout scm // short hand for checking out the "from scm repository"

flow.runFlow()

}

pipeline.groovy文件将包含实际管道的位置如下所示:

def runFlow() {

// your pipeline code

}

// Has to exit with 'return this;' in order to be used as library

return this;

以上是 具有外部定义的Jenkinsfile的多分支配置 的全部内容, 来源链接: utcz.com/qa/402397.html

回到顶部