我目前正在测试Jenkins 2.0的管道方法,以查看它是否适用于我正在使用的构建环境。Jenkins:上游变化触发多分支管道
首先关于环境本身。它目前由多个SCM存储库组成。每个存储库都包含多个分支,用于开发的不同阶段,每个分支构建多个配置。并非所有配置都适用于每个存储库。
对于不同的配置,当前每个存储库/分支都设置为Matrix Project。每个项目都将其构建结果作为工件进行公开,这些工件将用于下游项目中。
不同的存储库相互依赖,因此成功构建上游作业会触发某些特定的下游作业。目前所有的工作,但建立一个新的分支或调整建设过程所需的工作量很多,因为许多不同的项目需要手动更改。
现在我想尝试新的管道。我的想法是创建多分支管道项目,并在存储库中放置一个Jenkinsfile
,其中包含构建的说明。
主要问题是让构建触发对方,因为基本上构建在特定的上游分支中,需要触发下游分支。上游项目不知道下游分支需要触发的信息。每个下游项目都会从某些上游分支中获取工件,理想的解决方案是,如果下游构建将在作为工件源的上游构建完成构建时触发。
问题是只有下游项目真的知道他们需要什么工件。在大多数情况下,分支名称不太可能匹配,这使得从上游项目触发构建非常困难。
目前这是使用ReverseBuildTrigger
解决。但是,只要它靠近管道,这件事就会停止工作。
我真的很茫然如何得到这个工作。有没有办法让ReverseBuildTrigger
在管道脚本里面工作?
在单个分支上游更改的情况下,也触发整个下游构建的所有分支不是一个选项。这会造成太多的平等构建。
您使用哪种SCM类型? – luka5z
@ luka5z不应该是相关的。但它是SVN。 – Nitram