【发布时间】:2017-08-21 08:58:23
【问题描述】:
我想在我的 Jenkins 管道中执行多个并行步骤。我需要的所有变量都是通过 ArrayLists 给出的。现在我想通过字符串生成器和 for 循环来构建代码。之后我想将字符串作为代码执行
伪代码:
sb << try{ \n
for(i=0; i<TMP; i++) {
sb <<
parallel(
build VARIABLE{
def BUILDJOBNAME = build job: BUILDJOBVARIABLE, parameters:
[
string(name: 'parametername', value: PARAMETER)
]
}
}
sb << catch(e){
(...)
}
但是我怎么能执行这个呢?我试过GroovyShell.evaluate(sb.toString()) 但这会导致以下错误:
hudson.remoting.ProxyException:groovy.lang.MissingMethodException:没有方法签名:java.lang.Class.evaluate() 适用于参数类型:(java.lang.String)
【问题讨论】:
-
GroovyShell.evaluate是实例方法而不是类方法。
标签: jenkins groovy jenkins-pipeline