如何在构建上游多分支管道的任何分支或标记时触发下游项目构建?
为了专门构建 master
分支,我已成功将其放入下游项目的 Jenksinsfile 中:
triggers {
upstream(upstreamProjects: 'upstream-project/master', threshold: hudson.model.Result.SUCCESS)
}
但我希望我的工作在 upstream-project
的 any 分支构建时运行。我该怎么做?
我试过了
triggers {
upstream(upstreamProjects: 'upstream-project', threshold: hudson.model.Result.SUCCESS)
}
和
triggers {
upstream(upstreamProjects: 'upstream-project/*', threshold: hudson.model.Result.SUCCESS)
}
如果我查看项目的“配置”选项卡,两者都会显示错误,并且不会导致当前项目构建,例如upstream-project/master
建成。
实际上,我想在上游项目的标签(使用此 plugin)构建后触发该项目。我不知道,因此无法在 Jenkinsfile 中声明将来会添加哪些标签。但标签也显示为例如upstream-project/1.2.3
因此这个问题。
我意识到我可以更改上游项目并添加以下内容:
build job: 'downstream-project', parameters: [
string(name: 'Foo', value: 'Bar')
]
但我有意和设计地希望下游项目了解上游项目,反之亦然。否则答案是微不足道的:-)
“管道语法”→“声明性指令生成器”似乎也只建议个别具体的现有分支作为建议。
如果我例如尝试使用 pvm-api-service/*
如果我尝试“配置”管道,它看起来像这样: