我的 Jenkins (1.6) 设置遇到了问题,到目前为止还没有找到解决方案。
我想做什么:
我有 4 个作业(StartJob、TestA、TestB、ReleaseJob),我想要一个"管道",上面写着:
- 从"启动作业"开始
- 之后,并行构建"TestA"和"TestB"
- 当"TestA"和"TestB"都完成后,让我手动触发发布作业
到目前为止我尝试过什么
我正在使用交付管道插件来获得一个漂亮的管道视图,并能够设置手动触发器,您可以简单地在构建后操作中定义这些触发器。到目前为止,这工作得很好。
我第一次尝试是使用加入插件,它根本不起作用。它总是立即触发最后一个构建 - 无论"TestA"和"TestB"是否真的成功。
对于我的第二次尝试,我使用了多作业插件并定义了两个阶段:第一个阶段仅包含"StartJob",第二个阶段包括"TestA"和"TestB"。之后,我将"ReleaseJob"定义为构建后操作中的手动触发器。这工作正常,但我还没有达到如果我触发"ReleaseJob",它不会将其作为"Maven 版本"运行的程度。
我的问题
- 有没有办法强制将"Maven 发布"
作业构建为"Maven 发布"?(即您不应该简单地使用"立即构建"功能)
您对我如何以不同的方式解决此问题有什么建议吗?
附加说明:
我还没有在 Jenkins 2 中使用新的管道系统 - 我只是为一个小测试设置了它。如果你不知道旧 Jenkins 的解决方案,但知道如何在 Jenkins 2 中将其设置为"编码管道",我也会对此非常感兴趣。
非常感谢和干杯,
/tehK
我认为Pipline插件的前身是Buildflow插件,我没有看到你提到已经尝试过。在另一个 SO 线程中有一个示例:
如何在多个同时进行的上游作业成功后启动 Jenkins 作业?
也许这会让你对如何使用它有所了解
你的问题已经 2 岁了,但既然我想知道你是否找到了解决方案......
您是否尝试在构建后操作中使用 HTTP Post 来触发 Jenkins 作业上的 M2-Release-Plugin? 这是我的解决方法,因为 Jenkins 团队可能不会在短期内完成这项任务。