【发布时间】:2018-12-09 17:40:40
【问题描述】:
目前在 Jenkins 上有多个管道(A、B、C)和节点(X、Y、Z)。我们启用了 Throttle Concurrent Builds 插件,以确保只有一个来自管道的构建在单个节点上运行。
问题是,使用这种方法,来自不同管道的构建可能会发生冲突(例如,管道 A 可能已经在节点 X 上执行,并且我们不希望在管道 A 完成之前在节点 X 上执行任何其他管道) . TCB 插件确保来自单个管道的多个构建不会在一个节点上运行,但它不会阻止多个管道在单个节点上生成一个构建。
如何配置 Jenkins,使节点只能运行一个构建,而不是每个管道?
【问题讨论】:
-
每个节点只配置一个执行器,这样在任何时间点都只能执行一个构建,其他任何一个构建都触发等待,直到当前作业完成执行