У меня проблема с управлением несколькими доменами в одном top.sls
файл становится трудным. Как я мог написать top.sls
так что он берет только те столбы, которые соответствуют моему имени миньона / имени хоста.
Например:
deplo1.domain1.app
миньонdomain1_app
из pillar/domain1_app/init.sls
Текущий pillar/top.sls
base:
'*':
- global
'system.*':
- system
'deploy*.*':
- deploy
'*.domain1.app':
- domain1_app
deploy0.domain1.app:
- domain1_app.deploy0
Из https://www.reddit.com/r/saltstack/comments/5b4l9v/storing_pillars_specific_to_a_host/ пользователем "dekonnection":
Поместите что-то подобное в свой столб top.sls
:
base:
'*':
[...stuff that can be shared for multiple hosts defined here...]
'{{ grains.host }}':
- ignore_missing: True
- hosts.{{ grains.host }}
Теперь вы можете написать конкретный <pillar root>/hosts/<hostname>.sls
файл для специфичных для хоста настроек для каждого хоста, который в них нуждается, и если хосту не нужно ничего специфического для него, ignore_missing: True
позволяет опустить файл.
При необходимости можно сделать то же самое с любыми другими зернами.