{%- set mypillar = salt['pillar.get']('profile:matterbridge') -%} {%- set instances = mypillar['instances'] | default([]) -%} matterbridge_packages: pkg.installed: - pkgs: - matterbridge matterbridge_directory: file.directory: - user: root - group: matterbridge - clean: True - require: - pkg: matterbridge_packages {%- if instances | length > 0 %} - file: matterbridge_files {%- endif %} - names: - /etc/matterbridge {%- if instances | length > 0 %} matterbridge_files: file.managed: - user: root - mode: '0644' - template: jinja - source: salt:///{{ slspath }}/files/etc/matterbridge/matterbridge.toml.j2 - names: {%- for instance in instances %} - /etc/matterbridge/{{ instance }}.toml: - context: instance: {{ instance }} general: {{ instances[instance]['general'] | default({}) }} accounts: {{ instances[instance]['accounts'] }} gateways: {{ instances[instance]['gateways'] }} {%- endfor %} {%- for instance in instances %} matterbridge_{{ instance }}_service: service.running: - name: matterbridge@{{ instance }}.service - enable: True {%- endfor %} {%- endif %} matterbridge_cleanup_timer: service.running: - name: matterbridge-cleanup.timer - enable: True