formula-consul/consul/config.sls

43 lines
1.0 KiB
Plaintext

{% from slspath + "/map.jinja" import consul with context %}
consul-config:
file.serialize:
- name: /etc/consul.d/config.json
{% if consul.service != False %}
- watch_in:
- service: consul
{% endif %}
- user: consul
- group: consul
- require:
- user: consul
- formatter: json
- dataset: {{ consul.config }}
{% for script in consul.scripts %}
consul-script-install-{{ loop.index }}:
file.managed:
- source: {{ script.source }}
- name: {{ script.name }}
- template: jinja
- context: {{ script.get('context', {}) | yaml }}
- user: {{ consul.user }}
- group: {{ consul.group }}
- mode: 0755
{% endfor %}
consul-script-config:
file.serialize:
- name: /etc/consul.d/services.json
{% if consul.service != False %}
- watch_in:
- service: consul
{% endif %}
- user: {{ consul.user }}
- group: {{ consul.group }}
- require:
- user: consul
- formatter: json
- dataset:
services: {{ consul.register }}