blob: 687e13b1259047fc14425a64cbac741a950152ee [file] [log] [blame]
{%- from "heka/map.jinja" import server with context %}
{%- if server.enabled %}
heka_packages:
pkg.installed:
- names: {{ server.pkgs }}
purge-heka-conf-dir:
file.directory:
- name: /etc/heka/conf.d/
- clean: True
/etc/heka/conf.d/00-hekad.toml:
file.managed:
- source: salt://heka/files/00-hekad.toml
- template: jinja
- mode: 640
- group: heka
- require:
- pkg: heka_packages
- file: purge-heka-conf-dir
heka_service:
service.running:
- enable: true
- name: heka
- watch:
- file: /etc/heka/conf.d/00-hekad.toml
- require:
- user: heka_user
heka_user:
user.present:
- name: heka
- shell: /bin/false
- groups: {{ server.groups }}
- require:
- pkg: heka_packages
{%- for name,values in server.input.iteritems() %}
/etc/heka/conf.d/15-input-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/input/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- for name,values in server.output.iteritems() %}
/etc/heka/conf.d/60-output-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/output/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- for name,values in server.filter.iteritems() %}
/etc/heka/conf.d/20-filter-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/filter/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- for name,values in server.splitter.iteritems() %}
/etc/heka/conf.d/30-splitter-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/splitter/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- for name,values in server.encoder.iteritems() %}
/etc/heka/conf.d/40-encoder-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/encoder/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- for name,values in server.decoder.iteritems() %}
/etc/heka/conf.d/10-decoder-{{ name }}-{{ values['engine'] }}.toml:
file.managed:
- source: salt://heka/files/decoder/{{ values['engine'] }}.toml
- template: jinja
- mode: 640
- group: heka
- require:
- file: /etc/heka/conf.d/00-hekad.toml
- watch_in:
- service: heka_service
- defaults:
name: {{ name }}
values: {{ values }}
{%- endfor %}
{%- endif %}