{%- load_yaml as server_defaults %} Debian: pkgs: - grafana service: grafana-server bind: address: 0.0.0.0 port: 3000 session: engine: file auth: engine: application ldap: enabled: false host: '127.0.0.1' port: 389 use_ssl: false bind_dn: "cn=admin,dc=grafana,dc=org" bind_password: "grafana" user_search_filter: "(cn=%s)" user_search_base_dns: - "dc=grafana,dc=org" servers: attributes: name: "givenName" surname: "sn" username: "cn" member_of: "memberOf" email: "email" admin: user: admin password: admin allow_sign_up: False allow_org_create: False auto_assign_role: Viewer dir: static: /usr/share/grafana/public dashboards: enabled: false {%- endload %} {%- set server = salt['grains.filter_by'](server_defaults, merge=salt['pillar.get']('grafana:server')) %} {%- load_yaml as client_defaults %} Debian: server: host: 127.0.0.1 port: 3000 remote_data: engine: none datasource: {} dashboard: {} {%- endload %} {%- set client = salt['grains.filter_by'](client_defaults, merge=salt['pillar.get']('grafana:client')) %} {%- load_yaml as collector_defaults %} default: storage: engine: salt-mine {%- endload %} {%- set collector = salt['grains.filter_by'](collector_defaults, merge=salt['pillar.get']('grafana:collector')) %}