在我的食谱中,我应该如何检查厨师食谱是否被配置到 Macintosh 机器上?
问问题
1151 次
2 回答
5
更好的解决方案是使用platform_family检查。适用于 OS X 和 OS X 服务器(来源OHAI-345)。
cookbook_file "/etc/nginx/nginx.conf" do
source "nginx.conf"
not_if platform_family?("mac_os_x")
end
一个更好的解决方案是让厨师做所有的工作。使用单个cookbook_file声明:
cookbook_file "/etc/nginx/nginx.conf" do
source "nginx.conf"
end
并将特定于平台的文件与您的食谱一起发布:
- mycookbook/files/default/nginx.conf
- mycookbook/files/mac_os_x/nginx.conf
- mycookbook/文件/ubuntu/nginx.conf
- ..
于 2013-08-23T22:36:33.373 回答
1
利用
node[:platform] == "mac_os_x"
去检查。
你可以做一个这样的not_if
块:
cookbook_file "/etc/nginx/nginx.conf" do
source "nginx.conf"
not_if { node[:platform] == "mac_os_x" }
end
于 2013-08-23T21:19:54.327 回答