Jenkins:触发其他项目构建

查阅了大量资料,了解了Jenkins中触发项目构建的多种方法,记录一下:

  • 通过『Build Triggers -> Build after other projects are built』,其中针对多分支流水线需要指定具体分支,不支持通配符、正则等逻辑。原因是:相关源码中,仅支持传入一个 String 类型的参数。如果是在分支流水线中使用该功能,则Jenkins脚本为:
properties([
    pipelineTriggers([
        triggers: [
            [
                $class: 'jenkins.triggers.ReverseBuildTrigger',
                upstreamProjects: "some_project", threshold: hudson.model.Result.SUCCESS
            ]
        ]
    ]),
])
  • 通过『Post-build Actions -> Trigger parameterized build on other projects』需要插件Parameterized Trigger plugin,如果是在分支流水线中使用该功能,则Jenkinsfile脚本为:
stage ('Starting ART job') {
    build job: 'RunArtInTest', parameters: [[$class: 'StringParameterValue', name: 'systemname', value: systemname]]
}
  • 通过Promoted Builds Plugin插件,由于没有实际使用研究,仅记录。
posted @ 2021-06-15 11:34  Feng1024  阅读(1375)  评论(0编辑  收藏  举报