请注意:问题基于旧的,现在称为“脚本化”管道格式。当使用“声明性管道”时,并行块可以嵌套在阶段块内(请参阅使用声明性管道 1.2 的并行阶段)。
我想知道并行步骤应该如何与 Jenkins 工作流/管道插件一起工作,尤其是。如何将它们与构建阶段混合。我知道一般模式:
parallel(firstTask: {
// Do some stuff
}, secondTask: {
// Do some other stuff in parallel
})
但是,我想并行运行几个阶段(在同一个节点上,它有多个执行器),所以我尝试添加这样的阶段:
stage 'A'
// Do some preparation stuff
parallel(firstTask: {
stage 'B1'
// Do some stuff
}, secondTask: {
stage 'B2'
// Do some other stuff in parallel
})
stage 'C'
// Finalizing stuff
这不能按预期工作。“do stuff”任务是并行执行的,但并行阶段立即结束并且不包含它们应该包含的东西。因此,Stage View 不会显示正确的结果,也不会链接日志。
我可以并行构建不同的阶段,还是“并行”步骤仅用于单个阶段?