【发布时间】:2014-09-30 15:16:39
【问题描述】:
我有一个通用作业“构建”,由每个代码行的具体构建调用,例如'stable_build'。我有 stable_build 触发器构建并选中“阻止直到触发的项目完成构建”,这样 stable_build 的结果将反映构建的结果。这意味着每当我执行 stable_build 时,它需要 2 个执行器插槽,一个用于 stable_build,一个用于构建。我还有另一份工作“stable_tests”,它以类似的方式触发“测试”。我面临的问题是:如果同时执行 stable_build 和 stable_tests,每个将占用一个执行器插槽,而下游的“构建”和“测试”在队列中。
在 Jenkins 中是否有办法配置作业以等待 2 个打开的执行器插槽,或者可能是另一种解决方法?
【问题讨论】:
-
您是使用从节点还是从主节点运行?我认为您可以配置三个以上的执行器
-
我正在从 master 运行一切。我可以增加执行者的数量,但仍然会有竞争条件。这也是一个简化的例子;实际上,我使用 5 个代码行和每个代码行 5 个作业。