Groovy-如何简化嵌入式函数参数
我在jenkins中运行groovy,我想从功能中分离数据。我曾尝试创建一个带有变量名和值的映射,但函数中的函数似乎把它搞砸了。我想取出CurrentBuildNo、ProjectName、Results\u文件夹,它们对于每个并行运行都是不同的,而不需要重复代码Groovy-如何简化嵌入式函数参数,groovy,jenkins,Groovy,Jenkins,我在jenkins中运行groovy,我想从功能中分离数据。我曾尝试创建一个带有变量名和值的映射,但函数中的函数似乎把它搞砸了。我想取出CurrentBuildNo、ProjectName、Results\u文件夹,它们对于每个并行运行都是不同的,而不需要重复代码 autotests = parallel ( { ignore(ABORTED) { retry ( 2 ) { build("AutoTest", CurrentBuildNo: CurrentBuil
autotests = parallel (
{ ignore(ABORTED) {
retry ( 2 ) {
build("AutoTest", CurrentBuildNo: CurrentBuildNo, ProjectName: params["ProjectName"], Results_Folder: Results_Folder)
} } },
{ ignore(ABORTED) {
retry ( 2 ) {
build("AutoTest", CurrentBuildNo: CurrentBuildNo, ProjectName: params["ProjectName"], Results_Folder: Results_Folder)
} } }
)
我想要的逻辑是:
tests = {{CurrentBuildNo: CurrentBuildNo, ...},{CurrentBuildNo: CurrentBuildNo, ...}}
autotests = parallel (
for (i in tests){
ignore(ABORTED) {
retry ( 2 ) {
build("AutoTest", test[i]['CurrentBuildNo'], test[i]['ProjectName']...)
} } }
}
)
啊,我想你会想要这样的东西:
def tests = [ [ CurrentBuildNo: CurrentBuildNo, ... ],
[ CurrentBuildNo: CurrentBuildNo, ... ] ]
parallel tests.collect { t ->
{
ignore( ABORTED ) {
retry( 2 ) {
build( 'AutoTest', t.CurrentBuildNo, ... )
}
}
}
}
函数内部的函数出错意味着什么?你试过什么?那是怎么失败的?您的理想解决方案是什么样的?我不确定如何编写第二个代码块的语法