gpt4 book ai didi

jenkins - 通过构建参数将环境变量传递到管道节点

转载 作者:行者123 更新时间:2023-12-02 12:02:49 28 4
gpt4 key购买 nike

我有一个参数化管道构建,其中包含一个“字符串”参数 BuildOutDir,其值为 ${WORKSPACE}/out/

我的管道脚本是:

node ('windows') {
stage ('Test') {
echo "$WORKSPACE"
echo "$BuildOutDir"
}
}

输出是:

[Pipeline] stage
[Pipeline] { (Test)
[Pipeline] echo
D:\jenkins\workspace\test_pipeline
[Pipeline] echo
${WORKSPACE}\out\
[Pipeline] }
[Pipeline] // stage

有没有办法扩展作为构建参数传递的环境变量?这可以在非管道构建作业中正确扩展。

最佳答案

您不显示调用此管道的脚本或作业。

但是,这很可能是由于不正确的 string interpolation 。在 groovy 中,您需要使用双引号,以便对变量进行插值(= 替换)。如果您使用简单引号,则不会解释参数字符串,并且您的工作区变量也不会被替换。所以基本上你想要做的就是替换以下行:

build job: 'yourPipeline', parameters: [string(name: 'BuildOutDir', value: '${WORKSPACE}')]

与:

build job: 'yourPipeline', parameters: [string(name: 'BuildOutDir', value: "${WORKSPACE}")]

在您的调用管道中。同样,唯一的区别是 ${WORKSPACE} 变量周围的双引号而不是单引号.

关于jenkins - 通过构建参数将环境变量传递到管道节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42100309/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com