[英]How can you use a Chef recipe to set an environment variable by reading from Shell script?
我需要从 Shell 脚本中读取凭据并将其设置为环境变量。
以前的厨师代码
ENV['password'] = '123'
现在我正在尝试使用下面的代码,但它不起作用。
bash 'set_password' do
code <<-EOH
password=$(sh /opt/get_password.sh root)
EOH
guard_interpreter :bash
environment ({ 'password' => $password })
end unless node.attribute?('ec2')
如果您想将get_password.sh
脚本的输出 (stdout) 放入环境变量中,您可以简单地执行以下操作:
ENV['password'] = `/opt/get_password.sh root`
然后这个环境变量可以在配方的其他地方引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.