Groovy脚本设置执行程序的数量

时间:2016-01-22 14:37:53

标签: jenkins groovy jenkins-cli

请帮助我,我试图改变jenkins上执行者的数量。当我运行此代码时,它可以正常运行:

import jenkins.model.Jenkins
Jenkins jenkins = Jenkins.getInstance()
jenkins.setNumExecutors(4)
jenkins.save()

当我使用下一个功能时:

void set_executors(int number) {

Jenkins jenkins = Jenkins.getInstance()
jenkins.setNumExecutors(number)
jenkins.save()
}

跑步:

java -jar jenkins-cli.jar -s http://localhost:8080 groovy /var/lib/jenkins/executor.groovy set_executors 4

我得到了:

groovy.lang.MissingMethodException: No signature of method:
Actions.set_executors() is applicable for argument types
(java.lang.String) values: [4]
Possible solutions: set_executors(int)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:55)

请帮忙!

1 个答案:

答案 0 :(得分:2)

从命令行运行时,groovy将参数作为字符串传递。正在使用String参数调用 set_executors 函数,而不是函数所需的整数。您需要修改代码以接受String参数并将其转换为整数。