Jenkins groovy:在引用之间设置环境变量

时间:2018-04-02 00:36:41

标签: jenkins groovy

我正在尝试将环境变量设置为http请求标头。 例如

""" --header 'Authorization: "${auth}"' """

但是由于引用' ...',$ {auth}未正确设置。

一个简单的例子:

job(jobName) {
    wrappers {
        environmentVariables {
            env('auth', 'something I want to set')
        }
    }
    steps {
        shell(''' echo "${auth}" ''')
    }
}

我的测试:

shell(''' echo "${auth}" ''') --> correctly echo
shell(''' echo '"${auth}"' ''') --> not echo correctly
shell(""" echo '"${auth}"' """) --> not echo correctly

1 个答案:

答案 0 :(得分:1)

每个字符转义:\"

~ auth="test"
~ echo "\"${auth}\""
"test"

连接:'"' ${auth} '"'

~ echo '"'${auth}'"'
"test"