[英]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.