0
我正在寫一個HWRP,我需要訪問客戶端運行期間將會聚的所有配方。 我正在使用node.run_list.recipe_names來訪問此。但似乎是而不是包括通過角色設置的食譜。如何訪問廚師的run_list的所有食譜?
For example, I have a node with run_list
role[role1] that has cookbook1::recipe2
role[role2] that has cookbook2::recipe1
cookbook3::recipe1
cookbook4::default
如果我使用node.run_list.recipe_names它返回我
cookbook3::recipe1
cookbook4::default
node.run_list._to_s返回
"role[role1],
role[role2],
recipe[cookbook3::recipe1],
recipe[cookbook4::default].
角色不擴大。 如何創建一個只有食譜的變量纔會被收斂? 像
"recipe[cookbook1:recipe2],
recipe[cookbook2:recipe1],
recipe[cookbook3::recipe1],
recipe[cookbook4::default]"
謝謝@coderanger,但是這會損失收斂的順序。有沒有辦法保存它? – sidxz
它不應該,這是基於運行列表擴展以及通過'include_recipe'添加的任何內容。 – coderanger
我的壞,它是爲了,但我不想包括食譜。只是在運行列表中定義的配方列表。我期待訪問在lib/chef/client.rb(Chef :: Client#expanded_run_list)或類似的東西上定義的變量expanded_run_list。 – sidxz