假设我有以下厨师角色:
name "test"
description "role for test"
run_list %w(recipe[cookbook_name])
default_attributes(
:cookbook_name => {
:a => 1
}
)
以及对应的环境:
name "test environment"
description "environment for test"
default_attributes(
:cookbook_name => {
:b => 2
}
)
然后在我的食谱的属性中,我有类似的东西:
parent = default[:cookbook_name]
parent[:c] = 3
属性文档会让我相信这些将在配方上下文中可用node[:cookbook_name][:a]
或node[:cookbook_name][:b]
。但是,当我尝试访问我实际食谱中的那些时,我得到nil
. 这是怎么回事?我是否误解了这些属性的作用?我认为值得注意的是,即使我在属性文件中为这些属性设置了默认值,我也会得到相同的结果,这让我相信我错误地访问了这些属性。
我究竟做错了什么?