2016-09-13 3 views
0

my_cookbook::recipe_old.rbというレシピがあるとします。このレシピはノード、ロールなどの実行リストに適用されていますレシピの名前を変更してすべてのノードの実行リストに置き換える方法

しかし、レシピの名前をrecipe_new.rbに変更する必要があるとします。私のすべてのノードと役割の実行リストを更新するにはどうしたらいいですか?

knife searchを実行してレシピが適用されたすべてのノードとロールを見つけ、実行リストに新しく名前が付けられたレシピを追加してから、実行リストから古いレシピを削除する必要があると思います。

これが最善の方法ですか、シェフがこれに適しているのですか?この

knife exec -E 'nodes.transform("*:*") {|n| n.run_list.each_index {|i| if n.run_list[i] == "recipe[my_cookbook::recipe_old]"; n.run_list[i] = "recipe[my_cookbook::recipe_new"; return true; end } false }' 

そしてroles.transformための似たようなのような

答えて

関連する問題