在詹金斯管道
问题描述:
我创建一个詹金斯管道,其在不同环境下使用获取全局变量/构建。每个版本都有不同的参数:部署目标,密码,用户名等在詹金斯管道
我有一些共同的设置,所有这些构建共享,我已经在“Jenkins” - >“配置” - >“全局属性”中添加了核心价值。
可以说,我已经添加了一个键值相提并论: 名称:的CommonName 值:钱
我现在希望能够在我的管道,访问此的CommonName变量。 我试过了一切。
println "{$params.CommonName}"
println "{$env.CommonName}"
println "{$CommonName}"
Nothing从全局配置中返回值。
甚至无参数键值的构建是这样的: 姓名:姓名 价值:$ {}的CommonName
然后试图访问“$ {} params.Name”,在静止空返回。
基线是,我想有共享变量在不同的版本,其中我可以在詹金斯改变。
答
println "${env.CommonName}"
println "${CommonName}"
它应该如果你移动$字符。 我已经试过以下两者的工作:
println GLOBAL_VAR
println env.GLOBAL_VAR
打印
[Pipeline] echo
global_var_value
[Pipeline] echo
global_var_value
谢谢! - 你能解释一下吗? –
什么部分?要在字符串中插入att变量,正确的做法是$ {variable/command}不是“{$ variable}”。除此之外,jenkins管道插入变量,以便它们可以在脚本中访问,这样,如果你愿意,你可以跳过env。因此,println GLOBAL_VAR与println“$ {GLOBAL_VAR}”相同 – MaTePe