假设我有两本食谱,Foo 和 Bar。在食谱 Foo 中,attributes/default.rb 包含以下内容:
default[:test] = [{:baz => 'A', :qux => 'B'}]
在食谱 B 中,我想用另一个对象扩展该数组(即合并两个数组): {:baz => 'C', :qux => 'D'},最好是从一个食谱中。
我尝试放置以下 Bar 的配方或属性文件:
default[:test] = [{:baz => 'C', :qux => 'D'}]
期望两者合并并导致:
node[:test] == [{:baz => 'A', :qux => 'B'}, {:baz => 'C', :qux => 'D'}]
但事实并非如此。相反,在 Chef-Solo 运行期间,数组中仅包含两个对象之一。我也尝试过default.override并default.set得到相同的结果。如何合并两个数组?
谢谢。