Jenkins Buildflow插件:如何使可变数量的作业并行?
我使用BuildFlow创建了一个作业,该作业接收一个参数,如Jenkins Buildflow插件:如何使可变数量的作业并行?,jenkins,Jenkins,我使用BuildFlow创建了一个作业,该作业接收一个参数,如job1,job2,job1job2 在我的DSL中,我用一个拆分(“,”)来分隔参数的值,因此现在我有了一个数组:[“job1”、“job2”、“job1 job2”] 现在,我想让DSL并行运行一个具有X个构建的Subbob,其中X是数组的大小,并迭代以获取数组的每个位置作为参数传递给Subbob的构建。在DSL中尝试以下方法: subjob = "yourJobName" subjobIteration = [] ["job1
job1
,job2
,job1
job2
在我的DSL中,我用一个拆分(“,”
)来分隔参数的值,因此现在我有了一个数组:[“job1”、“job2”、“job1 job2”]
现在,我想让DSL并行运行一个具有X个构建的Subbob,其中X是数组的大小,并迭代以获取数组的每个位置作为参数传递给Subbob的构建。在DSL中尝试以下方法:
subjob = "yourJobName"
subjobIteration = []
["job1","job2","job1 job2"].each{ parameter ->
//add the closure to trigger the subjob to the list
subjobIteration.add({build( subjob, parameter )})
}
parallel( subjobIteration )
此代码段使用所记录的并行作业执行语法
Groovy在默认情况下正确地处理“并行”DSL的列表
subbobitation
,因此不需要进一步的步骤。是否有相关文档?你怎么知道要这么做的?都是关于Groovy的。在“buildflowplugin”文档中,您可以找到parallel的条目。列表子对象化由多个项组成,符合语法{build(“yourJobName”,“job1”)}、{build(“yourJobName”,“job2”)}
等。列表的解释与Groovy类似。