Jenkins,照本宣科管道:为什么回显多余字符?

qzlgjiam  于 2022-11-02  发布在  Jenkins
关注(0)|答案(1)|浏览(118)

尝试使用以下脚本打印所有列表项。

node {       
    env.myJobs = [ "abc",
...
            "def"]

    stage('Regression') { 
        echo "Test"            
        build_jobs(myJobs)
    }
}

@NonCPS
def build_jobs(list) {
    list.tokenize(',').each { item ->
        echo "${item}"
    }
}

下面是构建日志。对于第一个和最后一个项目,它会打印额外的括号,并在其他项目中添加一个空格。
如何在没有额外字符的情况下遍历列表?

[Pipeline] echo
[abc
...
[Pipeline] echo
 def]
yxyvkwin

yxyvkwin1#

谢谢你的Szymon Stepniak
1.将list定义为字符串并以,分隔
1.使用正则表达式split()获取每个项

node {
    env.myJobs = 'abc,\
                 ...
                 def' 

    stage('Regression') {
        echo "Test"
        build_jobs(myJobs)
   }

}

@NonCPS
def build_jobs(list) {
   list.split(/, */).each { item ->
        echo "${item}"
    } 
}

相关问题