salt stack `os:...` 模式在 top.sls 中不匹配

salt stack `os:...` 模式在 top.sls 中不匹配

我试图区分使用以下方式管理的虚拟机top.sls中的文件中的 Ubuntu 框和 Arch 框Virtualbox 5.0.4vagrant 1.7.4salt 2015.8.1 (Beryllium)

这不起作用:

base:
    'os:Arch':
        - base.arch

工作:

base:
    {% if grains['os'] == 'Arch' %}
    '*':
        - base.arch
    {% endif %}

摘录自salt-call grains.items

os:
    Arch
os_family:
    Arch
osarch:
    x86_64
oscodename:
osfullname:
    Arch Linux
osrelease:

有人有任何见解吗?

答案1

这应该有效:

base:
  'os:Arch':
    - match: grain
    - base.arch

https://docs.saltstack.com/en/latest/ref/states/top.html

相关内容