buildA
buildB
. 我的开发人员将提交并将代码推送到
建筑
,我想在Jenkins上启动建造工作
建筑B
每当在
建筑
回购发行。
建筑
很简单:
build job: 'buildA', parameters: [gitParameter(name: 'BRANCH', value: env.BRANCH_NAME)]
这只会触发
(下面是Jenkins文件片段):
sh label: "Install dependencies", script: 'pip install -r requirements.txt'
sh label: 'Execute tests', script: "pytest --custom-parameter ${BRANCH}"'
到目前为止效果很好。但是,我注意到我的测试需要很长时间才能运行,我希望测试只针对拉请求触发。到目前为止,我已经确定了两个选择,我想知道哪一个是更好的做法:
选项1:
.
选项2:
env.CHANGE_ID
检查拉取请求事件。因此,我的管道脚本将被修改为
script {
if (env.CHANGE_ID) {
sh label: "Install dependencies", script: 'pip install -r requirements.txt'
sh label: 'Execute tests', script: "pytest --custom-parameter ${BRANCH}"'
}
}
我的问题:
这些选项中哪一个更适合获取分支名称,并且只在来自Git的pull请求上构建?