1

我的 Jenkins (1.6) 设置有问题,到目前为止还没有找到解决方案。

我想做的事:

我有 4 个工作(StartJob、TestA、TestB、ReleaseJob),我想要一个“管道”,上面写着:

  • 从“StartJob”开始
  • 之后,并行构建“TestA”和“TestB”
  • 当“ TestA“TestB”都完成后,让我手动触发 ReleaseJob

到目前为止我尝试过的

我使用 Delivery Pipeline Plugin能够获得漂亮的管道视图并能够设置手动触发器,您可以在 Post-Build Actions 中简单地定义这些触发器。到目前为止,这工作得很好。

我的第一次尝试是使用Join Plugin,它根本不起作用。它总是一次触发最后一次构建——不管“TestA”和“TestB”是否真的成功。

对于我的第二次尝试,我使用了Multijob 插件并定义了 2 个阶段:第一个阶段仅包含“StartJob”,第二个包含“TestA”和“TestB”。之后,我将“ReleaseJob”定义为构建后操作中的手动触发器。这工作正常,但我不认为如果我触发“ReleaseJob”,它不会将它作为“Maven 发布”运行。

我的问题

  • 有没有办法强制将“Maven 发布”作业构建为“Maven 发布”?(即您不应该简单地使用“立即构建”功能)

  • 你对我如何以不同的方式解决这个问题有什么建议吗?

附加说明:

我还没有在 Jenkins 2 中使用过新的流水线系统——我只是为一个小测试设置了它。如果您不知道旧 Jenkins 的解决方案,但知道如何在 Jenkins 2 中将其设置为“编码管道”,我也会对此非常感兴趣。

非常感谢和欢呼,

/tehK

4

2 回答 2

1

我认为 Pipline 插件的前身是 Buildflow 插件,我没有看到您提到尝试过。在另一个 SO 线程中有一个示例:

在多个同时上游作业成功后,如何让 Jenkins 作业开始?

也许这会让你对如何使用它有一些了解

于 2016-07-14T12:24:38.367 回答
0

我知道您的问题已有 2 年历史了,但是由于我想知道您是否找到了解决方案...

您是否尝试在构建后操作中使用HTTP Post来触发Jenkins 作业中的M2-Release-Plugin ?这是我的解决方法,因为Jenkins 团队可能不会在短期内完成这项任务。

于 2016-12-05T18:33:20.030 回答