我正在尝试实现hiera合并。 hier是我的hiera.yaml
---
:hierarchy:
- fqdn/%{fqdn}
- roles/%{role}
- os/%{osfamily}
- common
:backends:
- yaml
# options are native, deep, deeper
:merge_behavior: deeper
:yaml:
:datadir: /etc/puppet/environments/%{environment}/data
然后我有: common.yaml
---
classes:
- a
- b
和fqdn / some.host.yaml
---
classes:
- c
- d
运行
hiera --debug -c /etc/puppet/hiera.yaml classes fqdn=some.host environment=development
["c", "d"]
和
hiera --debug -c /etc/puppet/hiera.yaml classes fqdn=blablahost environment=development
["a", "b"]
所以“blablahost”采用common.yaml并应用“a”和“b”类..但是fqdn = some.host应该应用a,b,c,d ..而不仅仅是c,d ..我做错了什么?
此致
答案 0 :(得分:5)
要启用array merging,您需要添加--array
选项。
hiera --array -c /etc/puppet/hiera.yaml classes fqdn=some.host environment=development