我想在进行覆盖时访问厨师食谱中的原始运行列表。是否有可用的对象?现在我得到:
[2016-04-12T20:14:27+00:00] WARN: Run List override has been provided.
[2016-04-12T20:14:27+00:00] WARN: Original Run List: [role[foo], role[bar]]
[2016-04-12T20:14:27+00:00] WARN: Overridden Run List: [recipe[baz]]
在食谱[baz]中我想知道角色[foo]在节点的默认运行列表中。
类似于此:
if node.original_runlist.includes?('role[foo]')
do_something
else
do_something_else
谢谢!
答案 0 :(得分:1)
如上面的评论中所述,我找到了node.primary_runlist。如果其他人有兴趣:
run_list = node.primary_runlist
if run_list.includes?('role[foo]')
do_something
else
do_something_else
end
答案 1 :(得分:0)
大多数属性都是由Ohai在厨师开始时设定的
你可以尝试在你的食谱中运行ohai作为第一个命令并捕获输出以获得基本Ohai属性的完整列表
但无论如何,应该从食谱中获得以下属性:
-
与节点关联的配方列表(以及该节点的运行列表的一部分)。
-
与节点关联的角色列表(以及其中的一部分)
节点的运行列表)
更多详情here