首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在每个循环Jenkinsfile中同时传递两个列表中的项

在每个循环Jenkinsfile中同时传递两个列表中的项
EN

Stack Overflow用户
提问于 2018-11-08 22:32:02
回答 1查看 2K关注 0票数 1

我有一个列表foo = ['tea',''sugar','milk']col = ['black','white','pink'],我要做的是嵌套循环

代码语言:javascript
复制
def foo = ['tea','sugar','milk']
def col = ['black','white','pink']

[foo, col].transpose().each { x, y ->
   sh """aws deploy push --application-name "${x}" --source "${y}" """
}

期望结果

代码语言:javascript
复制
--application-name "tea" --source "black" 
--application-name "sugar" --source "white" 
--application-name "milk" --source "pink"

我得到的结果

代码语言:javascript
复制
[Pipeline] script
[Pipeline] {
[Pipeline] echo
--application-name "[tea, black]" --source "null" 
[Pipeline] echo
--application-name "[sugar, white]" --source "null" 
[Pipeline] echo
--application-name "[milk, pink]" --source "null" 
[Pipeline] }
[Pipeline] // script
[Pipeline] }

我希望将foocol中的列表项逐一注入到上面的shell脚本中,有一种方法可以同时将两个列表项传递给上面的shell脚本

参考文献 loops in Groovy

我们能做些像(foo,col).each这样的事情吗?

或者可能使用for循环for(x in foo && y in col)

参考我的詹金斯档案

代码语言:javascript
复制
pipeline {
agent any
stages {
    stage('hello'){
        steps{
        script{ 
        def foo = ['tea','sugar','milk']
        def col = ['black','white','pink']

        [foo, col].transpose().each { x, y ->
        sh """aws deploy push --application-name "${x}" --source "${y}" """
        //echo """--application-name \"${x}\" --source \"${y}\" """
        }
      }
    }
}      

}}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-08 22:37:03

我相信转置是你想要的方法,把这两个列表对起来,然后你可以迭代结果:

代码语言:javascript
复制
[foo, col].transpose().each { x, y ->
    ...
}

更新

这就是我的目标。请注意,为了简洁起见,移除了一些参数。

代码语言:javascript
复制
def foo = ['tea','sugar','milk']
def col = ['black','white','pink']

[foo, col].transpose().each { x, y ->
   println """--application-name "${x}" --source "${y}" """
}

结果

代码语言:javascript
复制
--application-name "tea" --source "black" 
--application-name "sugar" --source "white" 
--application-name "milk" --source "pink"
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53217148

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档