我希望了解如何最好地处理以下内容。
我的主分支上有一个运行类似
的Jenkins文件node {
stage 'Build stage 1'
git branch: 'master', credentialsId: '${JENKINS_CREDENTIALS_ID}', url: 'git@github.com:application_1'
stage 'Build stage 2'
git branch: 'master', credentialsId: '${JENKINS_CREDENTIALS_ID}', url: 'git@github.com:application_2'
stage 'Build stage 3'
git branch: 'master', credentialsId: '${JENKINS_CREDENTIALS_ID}', url: 'git@github.com:application_3'
}
因此,它构建了3个独立的应用程序,这些应用程序在此过程中都相互连接。
我要做的是有一种方法,当创建一个功能分支时,构建需要在每个应用程序的不同分支上运行。虽然可以手动更改并提交,但是当完成任何合并到主服务器中时,该信息仍然存在,然后更改主构建。
有没有一种有效的方法来处理这种设置?
由于
答案 0 :(得分:0)
如果我在某种程度上了解您的需求,您需要定义一个构建脚本,该脚本可用于构建主分支或任何其他功能分支。
然后,基本思想是使分支成为构建的参数。您可以为Jenkins构建作业定义参数,并在管道脚本中将这些参数呈现为Groovy变量。
您可以将变量默认为" master"。
您从正在观察存储库中的提交事件的任何内容中生成构建,并且您可以执行" buildWithParameters" Jenkins URL,传递分支名称。
这是基本想法。