Jenkins:在每个节点上为一个作业只运行一个构建

Jenkins:在每个节点上为一个作业只运行一个构建,jenkins,jenkins-plugins,jenkins-pipeline,Jenkins,Jenkins Plugins,Jenkins Pipeline,我们有一个项目,我们有几个詹金斯的工作: 运行交付(A)的一种作业类型 一个只进行编译和单元测试(B) 及 一个运行集成测试、静态代码分析等(C) 我们在四个Jenkins节点(主节点+三个从节点)上运行,我们的作业是声明性管道作业和手动单击Jenkins作业的混合 我们一次只希望每个节点运行一个集成测试构建。然而,我们希望运行尽可能多的交付(A)和代码质量(B)构建,因为有执行者 到目前为止,Throttle concurrent builds()插件已经满足了我们的需求。然而,这个插件不支持

我们有一个项目,我们有几个詹金斯的工作: 运行交付(A)的一种作业类型

一个只进行编译和单元测试(B)

一个运行集成测试、静态代码分析等(C)

我们在四个Jenkins节点(主节点+三个从节点)上运行,我们的作业是声明性管道作业和手动单击Jenkins作业的混合

我们一次只希望每个节点运行一个集成测试构建。然而,我们希望运行尽可能多的交付(A)和代码质量(B)构建,因为有执行者

到目前为止,Throttle concurrent builds()插件已经满足了我们的需求。然而,这个插件不支持声明性管道构建,也根本不支持更新

可锁定资源插件()似乎很有希望,但我们还没有找到任何方法来用动态设置的资源名称锁定整个构建。也就是说,当我们启动一个C构建时,我们希望它锁定“resource_{name of server}”。 此插件允许在options指令中设置整个构建锁, נ但是我们还没有弄清楚如何评估那里的环境变量


如有任何建议,将不胜感激

因此,我们这边的解决办法是将管道脚本从声明式语法重写为脚本式语法。然后,throttle并发构建插件就成了一种魅力

当bug被修复后,插件也将与声明性管道一起工作