首页 > 解决方案 > 如何将詹金斯参数作为数组传递给bash脚本?

问题描述

我想将 jenkins 参数作为数组参数传递给我的 bash 脚本。

我在下面尝试过,但没有运气。

   stage('Foo Step') {
        steps {
            script {
                sh "chmod 755 runFooBar.sh"
                sh """
                    ./runFooBar.sh --baz="${params.BAZ[@]}" --bar="${params.BAR}" --foo="${params.FOO[@]}"
                """
            }
        }
    }

当我在上面运行脚本时出现此错误。

 WorkflowScript: 48: unexpected token: @ @ line 48, column 75.
 ./runFooBar.sh  --baz="${params.BAZ[@]}" --bar
                                     ^

先感谢您。

干杯!

标签: bashjenkins

解决方案


有类似的问题要解决。尝试删除 '[@]' 因为 groovy 似乎不喜欢这一点。

就我而言,它看起来如下并且到目前为止有效:

steps {
    script {
        RECIPIENTS = '"user1@domain" "user2@domain" "user3@domain"'
        sh "./send_email.sh ${RECIPIENTS}"
    }
}


推荐阅读