从其他多分支管道触发多分支管道作业

时间:2017-07-10 11:15:48

标签: jenkins continuous-integration jenkins-plugins jenkins-pipeline multibranch-pipeline

我有一个场景但我有2个项目(A和B),两个都是在Jenkins中配置多分支管道作业,问题是项目B依赖于项目A.

所以我发现有时在我检查项目A中的代码时,我还需要在构建A后构建ProjectB。在我开始调查管道构建之前,我每个分支都有一个工作,然后在Jenkins中为适当的分支触发项目B的相应工作。

我想在Jenkins文件中设置什么,以便在ProjectA / develop执行时,然后触发ProjectB和同一分支的multibranch管道作业。

我有:

stage ('Trigger Tenant Builds') {
        build job: "ProjectB/${branch}", wait: false
    }

但我的ProjectA管道失败了:

ERROR: No parameterized job named ProjectB/develop found

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

我现在已经解决了这个问题。我正在做的是在项目B的Jenkinsfile中定义上游触发器:

pipelineTriggers([ 
    upstream( 
       threshold: hudson.model.Result.SUCCESS, 
       upstreamProjects: "/ProjectA/" + env.BRANCH_NAME.replaceAll("/", "%2F") 
    )
])