2
并行作业所以我试图生成可变数量的测试作业并行运行,但我遇到的情况下传递参数将是所有执行的最大值。我怎样才能动态生成与詹金斯工作流程/管道
这里是Groovy代码的简化版本,我使用
jobs=[:]
unitSplits = 5
println "split units $unitSplits times"
for (int i = 0; i < unitSplits; i++) {
jobs["unit tests ${i} of ${unitSplits}"] = {
group -> {-> test(group)}
}(i)
}
jobs.each{ k, v -> v() }
def test(group) {
println "testing group ${group}"
}
预期输出:
split units 5 times
testing group 0
testing group 1
testing group 2
testing group 3
testing group 4
实际输出:
split units 5 times
testing group 5
testing group 5
testing group 5
testing group 5
testing group 5
我需要这个group
参数知道运行哪组测试。
任何想法如何使这项工作?
例如,请参阅http://stackoverflow.com/questions/32228590/start-a-job-multiple-times-concurrently-with-workflow-plugin。 –
是的,你认为真实的例子会使用并行步骤是正确的,在groovyConsole会话中做测试并不容易。 – Jeff