{%- load_yaml as base_defaults %} Debian: pkgs: - elasticsearch curator_pkgs: - python-elasticsearch-curator - cron service: elasticsearch version: '1.4.4' RedHat: pkgs: - elasticsearch curator_pkgs: - python-elasticsearch-curator service: elasticsearch version: '1.4.4' {%- endload %} {%- set server = salt['grains.filter_by'](base_defaults, merge=salt['pillar.get']('elasticsearch:server')) %} {%- load_yaml as client_defaults %} Debian: pkgs: - python-elasticsearch server: host: 127.0.0.1 port: 9200 RedHat: pkgs: - python-elasticsearch server: host: 127.0.0.1 port: 9200 {%- endload %} {%- set client = salt['grains.filter_by'](client_defaults, merge=salt['pillar.get']('elasticsearch:client')) %}