現在の環境が "dev"の場合のみ、cookbook_fileリソースを実行したいと思います。これはどのように表現できますか?
ドキュメントはこれを示唆しています:
レシピでは、次のようなコードブロックが役立ちます。
qa_nodes = search(:node,"chef_environment:QA") qa_nodes.each do |qa_node| # Do useful specific to qa nodes only end
しかし、それが私が望むことかどうかはわかりません-ループであるという事実は間違っているようです。
ノードのchef_environment Ruby属性(通常のChef属性ではない))を確認します。
if node.chef_environment == "dev"
# stuff
end
別のエレガントな方法:
if ['production','development'].include? node.chef_environment
#do something here
end