У нас есть соль 2019.2.0:
# salt --version
salt 2019.2.0 (Fluorine)
/srv/pillar/stack/httpd.yml
имеет:
# cat /srv/pillar/stack/httpd.yml
{% load_yaml as httpd_definitions %}
web_servers:
enable: true
default:
enable: false
{% endload %}
{% set httpdnew = __salt__['pillar.filter_by'](httpd_definitions,
pillar='roles') %}
httpdold:
{% if (pillar.get('roles') and
('web_servers' in pillar.get('roles'))) %}
enable: true
{% endif %}
httpdnew: {{ httpdnew | json() }}
# salt <id> pillar.items
httpdnew:
----------
enable:
False
httpdold:
----------
enable:
True
roles:
- web_servers
- dev_web_servers
Почему не работает __salt__['pillar.filter_by']
? Я ожидаю, что httpdnew.enable = True, так же, как httpdold.enable.