Chef infra 厨师长角色和环境默认\u属性不可访问

Chef infra 厨师长角色和环境默认\u属性不可访问,chef-infra,Chef Infra,假设我担任以下厨师角色: 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( :cook

假设我担任以下厨师角色:

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
他们会让我相信这些可以在食谱上下文中从
节点[:cookbook\u name][:a]
节点[:cookbook\u name][:b]
获得。然而,当我试图访问我实际烹饪书中的那些内容时,我得到了
nil
。发生什么事?我是否误解了这些属性的作用?我认为值得注意的是,即使我在属性文件中为这些属性设置了默认值,我也会得到相同的结果,这让我相信我访问的属性是错误的


我做错了什么?

事情确实应该这样做。在“cookbook\u name”配方中,您应该能够访问包含两个元素的
:cookbook\u name
哈希值
:a
:b


是否已将节点上的运行列表和环境设置为包含已列出的角色和环境?运行
knife node show
应该会显示这一点。

是的,但结果表明环境未能上传。谢谢你的回答!