Jenkins 参数化下游构建触发器插件 - 仅在某些分支上?

mac*_*mac 5 jenkins jenkins-plugins

我有以下场景:Build A 正在构建多个分支(用于 github 存储库的 CI 构建),我希望它触发 Build B,但前提是分支 ==“master”。

我发现我可以在“构建后操作”>“在其他项目上触发参数化构建”下启用下游触发器。我选择了下游项目,并且仅在稳定时进行构建。到现在为止还挺好。

然后,我发现我可以执行“将矩阵执行限制为一个子集”并将其放入:

"${BRANCH}"=="master"
Run Code Online (Sandbox Code Playgroud)

但是,无论分支是主分支还是完全不同的分支,它仍然会构建下游项目 B(顺便说一句,它使用与项目 A 相同的分支构建下游项目)。

我在这里误解了什么吗?这不是过滤下游执行的方式吗?

如果根本没有,有没有其他方法可以只在分支为“master”时构建下游项目?

这是参数化触发器插件顺便说一句。

mac*_*mac 2

根据此拉取请求中的讨论,实际上找到了一个似乎运行良好的解决方案

解决方案是使用灵活的发布插件并提出构建的条件。然后,在操作下,选择参数化触发器插件来启动另一个构建。

对于条件,您可以使用“当前构建状态”仅在成功构建时触发,然后我使用字符串匹配器来确保分支等于“master”。我认为布尔条件选项也会起作用。

根据该线程,我想直接在具有执行矩阵限制的参数化触发器插件中执行的任何操作都将不起作用。