クックブックで、シェフのレシピが 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/files/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 に答える