使用Groovy设置Jenkins中的执行程序数

时间:2014-02-24 18:10:11

标签: groovy jenkins jenkins-plugins

我正在尝试使用Groovy设置Jenkins中的执行程序数。我找到了一个方法hudson.model.Hudson.instance.setNumExecutors(int)但它似乎并没有真正起作用。问题是在运行Groovy脚本后修改后的值出现在配置面板中,但是我必须在该面板中单击“保存”才能真正更改它。

这是代码(作为Jenkins Groovy插件的构建步骤执行):

import hudson.model.*

// Initial number of executors is 1, let's increase the number of executors to 2
Hudson hudson = Hudson.getInstance()
hudson.setNumExecutors(2)
hudson.save()

def job = hudson.getJob("some_other_job")
def future = job.scheduleBuild2(0, new Cause.UpstreamCause(build))
subBuild = future.get()

// Set the number of executors back to 1
hudson.setNumExecutors(1)
hudson.save()

2 个答案:

答案 0 :(得分:6)

解决方法是在致电hudson.setNodes(hudson.getNodes())后致电setNumExecutors()

答案 1 :(得分:0)

如果一切按预期工作,除非您必须手动按下保存按钮以使更改保持不变,这听起来就像您在进行更改后没有在Jenkins实例上调用save