Chef
為什麼廚師食譜無法從 bash 環境變數中讀取值?
這是我的 shell 腳本的內容:
export TARGET_ROLE=play vagrant up
我正在使用腳本導出環境變數,以便在我的廚師食譜中設置一些變數
role = ENV['TARGET_ROLE'] Chef::Log.info("Using role #{role}") node.override[:mainapp][:target_role] = role seq = ENV['SEQ'] Chef::Log.info("Using seq #{seq}") node.override[:mainapp][:server_seq] = seq
這是我在日誌中看到的內容:
==> default: [2015-09-14T07:22:35+00:00] DEBUG: Found recipe mainapp_common_env in cookbook mainapp ==> default: [2015-09-14T07:22:35+00:00] INFO: Using role ==> default: [2015-09-14T07:22:35+00:00] INFO: Using seq
我做錯了什麼?
您在主機上設置環境變數。– 但是 Chef 在您的 Virtualbox VM 中執行。
要為其設置環境變數,請使用Vagrant 文件
binary_env
中描述的選項,用於 Chef 配置。