[英]how to use user defined environment variables in chef
我正在尝试在模板资源路径中使用用户定义的变量,如下所示。 但是我不确定如何在Chef中检索用户定义的环境变量。 请帮忙。
template "#{user_env_variable}/sys/test.xml" do
source "test.xml.erb"
owner user1
group user1
mode '0644'
end
user_env_variable
是.bashrc
用户定义的环境变量。
您可以使用ENV
来访问ruby中的环境变量,例如ENV['PATH']
。 转换为您的代码,将是:
template "#{ENV['user_env_variable']}/sys/test.xml" do
source "test.xml.erb"
owner user1
group user1
mode '0644'
end
请注意:我会认为这样做是错误的做法。 如果Chef-client现在作为系统服务运行,或者未定义环境变量怎么办? 也许,有一种更清洁的方法可以实现您的目标(如果我们知道的话..)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.