当其他 MultiJob 为 运行 时,MultiJob 不应启动
MultiJob should not start when other MultiJob is running
我正在使用插件 http://entagen.github.io/jenkins-build-per-branch/ 为功能分支创建作业。生成这些作业效果很好,但我在执行构建时 运行 遇到了问题。
我的模板作业计划每 15 分钟检查一次 SCM(Git)。当生成功能分支作业时,它们将被触发,因为它们都是新的。问题是这些作业都是 MultiJob 作业,这导致我的执行者都很忙,没有地方在 MultiJob 中启动作业。
For example:
MultiJob 1 - running
MultiJob 2 - running
MultiJob 1 需要启动 InsideJob 1(MultiJob 1 中的作业之一)但是由于 MultiJob 2 已经启动 运行 InsideJob 1 已经没有位置了。
所以在某种程度上我希望能够说 'do not start a MultiJob when there is still another MultiJob running'。由于生成作业名称并使用功能分支的 number/name 我无法指定其他作业应等待的名称。
有没有人有办法阻止第 2 个工作开始 运行。增加节点的执行程序只会使 MultiJob 3 启动等等,所以这不是我正在寻找的解决方案。
此问题已通过使用 Build Blocker 插件解决。 https://wiki.jenkins-ci.org/display/JENKINS/Build+Blocker+Plugin。我将插件设置为阻止所有与我生成的作业具有相同前缀的作业,因此当时只执行 1 个 MultiJob。
我正在使用插件 http://entagen.github.io/jenkins-build-per-branch/ 为功能分支创建作业。生成这些作业效果很好,但我在执行构建时 运行 遇到了问题。
我的模板作业计划每 15 分钟检查一次 SCM(Git)。当生成功能分支作业时,它们将被触发,因为它们都是新的。问题是这些作业都是 MultiJob 作业,这导致我的执行者都很忙,没有地方在 MultiJob 中启动作业。
For example: MultiJob 1 - running MultiJob 2 - running
MultiJob 1 需要启动 InsideJob 1(MultiJob 1 中的作业之一)但是由于 MultiJob 2 已经启动 运行 InsideJob 1 已经没有位置了。
所以在某种程度上我希望能够说 'do not start a MultiJob when there is still another MultiJob running'。由于生成作业名称并使用功能分支的 number/name 我无法指定其他作业应等待的名称。
有没有人有办法阻止第 2 个工作开始 运行。增加节点的执行程序只会使 MultiJob 3 启动等等,所以这不是我正在寻找的解决方案。
此问题已通过使用 Build Blocker 插件解决。 https://wiki.jenkins-ci.org/display/JENKINS/Build+Blocker+Plugin。我将插件设置为阻止所有与我生成的作业具有相同前缀的作业,因此当时只执行 1 个 MultiJob。