在厨师如何检测厨师是否在Mac上运行?

时间:2013-08-23 21:18:37

标签: chef

在我的食谱中,我应该如何检查是否将主厨配方配置到Macintosh机器上?

2 个答案:

答案 0 :(得分:4)

更好的解决方案是使用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 / files / ubuntu / nginx.conf
  • ..

答案 1 :(得分:0)

使用

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