Files
mailgw-salt/pmg/node_exporter.sls

40 lines
1.4 KiB
YAML+Jinja

{% set node_exporter_enabled = salt['pillar.get']('pmg:node_exporter:enabled', True) %}
{% set node_exporter_package = salt['pillar.get']('pmg:node_exporter:package', 'prometheus-node-exporter') %}
{% set node_exporter_service = salt['pillar.get']('pmg:node_exporter:service', 'prometheus-node-exporter') %}
{% set node_exporter_textfile_dir = salt['pillar.get']('pmg:node_exporter:textfile_directory', '/var/lib/prometheus/node-exporter') %}
{% set node_exporter_args = salt['pillar.get']('pmg:node_exporter:args', '--collector.textfile.directory=' ~ node_exporter_textfile_dir) %}
{% if node_exporter_enabled %}
pmg-node-exporter-package:
pkg.installed:
- name: {{ node_exporter_package }}
pmg-node-exporter-textfile-dir:
file.directory:
- name: {{ node_exporter_textfile_dir }}
- user: root
- group: root
- mode: "0755"
pmg-node-exporter-defaults:
file.managed:
- name: /etc/default/prometheus-node-exporter
- user: root
- group: root
- mode: "0644"
- contents:
- "# Managed by Salt."
- "ARGS=\"{{ node_exporter_args }}\""
pmg-node-exporter-service:
service.running:
- name: {{ node_exporter_service }}
- enable: true
- require:
- pkg: pmg-node-exporter-package
- file: pmg-node-exporter-textfile-dir
- file: pmg-node-exporter-defaults
- watch:
- file: pmg-node-exporter-defaults
{% endif %}