Фон
Мой hiera.yaml выглядит как
version: 5
defaults:
datadir: /etc/puppet/hieradata
hierarchy:
- name: "YAML data: environments, stages, roles, common"
data_hash: yaml_data
paths:
- "roles/%{role}/common.yaml"
- "roles/common.yaml"
- "common.yaml"
В папке hieradata есть следующие файлы
/etc/puppet/hieradata/roles/development/common.yaml
/etc/puppet/hieradata/roles/common.yaml
/etc/puppet/hieradata/common.yaml
все перечисленные выше файлы имеют следующее содержимое
---
foo : "bar"
мой вывод факсов указан ниже
[root@allinone puppet]# facter role
development
Постановка задачи
при выполнении команды puppet lookup foo
выводит bar
, как и ожидалось.
Я удалил файл /etc/puppet/hieradata/common.yaml
и по-прежнему выводит bar
.Это нормально.
Но когда я удалил /etc/puppet/hieradata/roles/common.yaml
, вывод также ничего не показывает.Это не относится к файлу /etc/puppet/hieradata/roles/development/common.yaml
Есть причина?
Я вижу факт role
, используя команду facter.Но мой hiere не уважает это.
Я также попробовал следующее в hiera.yaml
- "roles/%{::role}/common.yaml"
- "roles/%{facts.role}/common.yaml"
, но ничего не помогает