我有2个连接同一github项目的多分支jenkins管道作业。我正在触发第一个MB作业。开发。分支,现在成功完成此任务后,我想使用相同的分支名称触发第二个MB任务。 (我已经将Jenkinsfile和MB都分开了。)
我尝试了以下选项,但没有用:
(1)
build job: 'jobName', parameters: [[$class: 'StringParameterValue', name: 'BRANCH_NAME', value: env.BRANCH_NAME]]
这给了我错误“不支持等待非工作项目”
(2)
build job: 'jobName/${branch_name}'
这给了我jobname / $ {branch_name}不存在,意味着这里的变量无法解析,我已经在环境指令中创建了这个变量
简单的jobName / dev,如果我在Jenkinsfile中提供硬代码,那么它就可以了,但是我需要通过自动选择分支名称来实现。
请告知,谢谢。
答案 0 :(得分:0)
我找到了解决此问题的另一种方法:
在带有gitParameter的jenkinsfile触发管道作业中:
build job: 'jobName', parameters: [gitParameter(name: 'GITBRANCH', value: env.BRANCH_NAME)]
安装了“ git parameter”插件,并在jenkinsfile中触发的作业中进行配置
parameters {
gitParameter branchFilter: 'origin/(.*)', defaultValue: 'master', name: 'GITBRANCH', type: 'PT_BRANCH'
}
并在结帐代码时调用此参数
stage("Checkout Branch wise"){
steps{
git branch: "${params.GITBRANCH}", url: 'https://xxx/xxx/xxxx.git'
}
}
解决了这个问题。