8

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

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

我想在 Jenkinsfile 中设置什么,以便在 ProjectA/develop 执行时触发 ProjectB 和同一分支的多分支管道作业。

我有:

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

但是我的 ProjectA 管道失败了:

ERROR: No parameterized job named ProjectB/develop found

有任何想法吗?

4

1 回答 1

6

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

pipelineTriggers([ 
    upstream( 
       threshold: hudson.model.Result.SUCCESS, 
       upstreamProjects: "/ProjectA/" + env.BRANCH_NAME.replaceAll("/", "%2F") 
    )
])
于 2017-07-12T20:28:31.580 回答