jenkins 中关于构建拦截器和多作业插件集成的问题
Issue on Build Blocker and Multijob plugin Integration in jenkins
我在我的 jenkins 作业中使用构建拦截器和 MultiJob 插件来编排管道。
这里只是我想要实现的一小部分。
工作中的依赖
JobA --> Job B -(Join Plugin) --> Job C and Job D --> JobE (Join Plugin End)
另一份工作
作业 A1(构建拦截器插件包含作业 B 到作业 E 的列表)
现在我在多作业阶段创建了 2 个阶段,套件 1 和套件 2,在套件 1 中我只是 运行 JOb A(然后将调用作业 B 等等),在套件 2 中我我正在调用作业 A1
问题:
jobA 完成后,多作业插件认为该阶段已完成,因此它将 A1 作业放入队列中,但由于此时作业 B 也是 运行,因此 A1 仍留在队列中(由于 buildblocker) .
所以此时的队列中包含作业B和作业A1,但是一旦作业B完成并且能够将作业C和作业D放入队列之前,作业A1就开始执行。
这个问题有什么解决办法吗?上面的例子只是我想要实现的一小部分,我知道有一些方法可以以简单的方式实现它,但我需要编排一个更大的管道,其中多个作业以复杂的方式相互依赖,所以需要一个上述问题的解决方案。
谢谢,
马尼什·乔希
我通过结合使用 Build Flow 和 MultiJob 插件获得了这个结果。
我创建了一个构建流程作业并将其命名为 Suite1,其中包含
建造("jobA1")
建造("jobB1")
平行线(
{构建("jobC1")},
{构建("jobD1")}
)
建造("jobE1")
在另一份工作 Suite2 中,我是 运行 工作 A2,然后 运行 Suite1 和 Suite2 在 multijob plugin
阶段
因此现在工作 A2 正在等待直到我想要实现的工作 E1 完成。
谢谢,
马尼什
我在我的 jenkins 作业中使用构建拦截器和 MultiJob 插件来编排管道。
这里只是我想要实现的一小部分。
工作中的依赖 JobA --> Job B -(Join Plugin) --> Job C and Job D --> JobE (Join Plugin End)
另一份工作 作业 A1(构建拦截器插件包含作业 B 到作业 E 的列表)
现在我在多作业阶段创建了 2 个阶段,套件 1 和套件 2,在套件 1 中我只是 运行 JOb A(然后将调用作业 B 等等),在套件 2 中我我正在调用作业 A1
问题:
jobA 完成后,多作业插件认为该阶段已完成,因此它将 A1 作业放入队列中,但由于此时作业 B 也是 运行,因此 A1 仍留在队列中(由于 buildblocker) . 所以此时的队列中包含作业B和作业A1,但是一旦作业B完成并且能够将作业C和作业D放入队列之前,作业A1就开始执行。
这个问题有什么解决办法吗?上面的例子只是我想要实现的一小部分,我知道有一些方法可以以简单的方式实现它,但我需要编排一个更大的管道,其中多个作业以复杂的方式相互依赖,所以需要一个上述问题的解决方案。
谢谢, 马尼什·乔希
我通过结合使用 Build Flow 和 MultiJob 插件获得了这个结果。
我创建了一个构建流程作业并将其命名为 Suite1,其中包含 建造("jobA1") 建造("jobB1") 平行线( {构建("jobC1")}, {构建("jobD1")} ) 建造("jobE1") 在另一份工作 Suite2 中,我是 运行 工作 A2,然后 运行 Suite1 和 Suite2 在 multijob plugin
阶段因此现在工作 A2 正在等待直到我想要实现的工作 E1 完成。
谢谢, 马尼什