我刚刚使用 Chef Cookbook 安装了 Java,并为所有用户更新了 PATH 环境变量(将新文件添加到 /etc/profile.d/)。
是否可以告诉厨师重新加载 PATH 变量?
当我做这样的事情时:
execute "java_check" do
command "java -version"
end
就是说找不到java。
当我注销,重新登录,然后运行厨师食谱时,它工作正常。
我不是 100% 确定您可以更新 PATH 变量以供将来的厨师运行,但您可以使用以下命令手动设置它environment
内的属性execute
节。这也可以用于其他资源。看:http://docs.opscode.com/chef/resources.html#execute
来自厨师文档,
environment
A hash of environment variables: {"ENV_VARIABLE"=>"VALUE"}.
(These environment variables must exist for a command to execute successfully.)
Default value: nil.
Run a command which requires an environment variable
execute "slapadd" do
command "slapadd < /tmp/something.ldif"
creates "/var/lib/slapd/uid.bdb"
action :run
environment ({'HOME' => '/home/myhome'})
end
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)