Je veux exécuter une ressource cookbook_file uniquement si l'environnement actuel est "dev". Comment cela peut-il s'exprimer?
La documentation suggère ceci:
Dans une recette, un bloc de code comme celui-ci serait utile:
qa_nodes = search(:node,"chef_environment:QA") qa_nodes.each do |qa_node| # Do useful specific to qa nodes only end
Mais je ne suis pas sûr que ce soit ce que je veux - le fait qu'il s'agisse d'une boucle semble incorrect.
Regardez dans l'attribut chef_environment Ruby (pas un attribut Chef normal) sur le nœud:
if node.chef_environment == "dev"
# stuff
end
une autre manière élégante:
if ['production','development'].include? node.chef_environment
#do something here
end