This repository has been archived on 2025-11-20. You can view files and clone it, but cannot push or open issues or pull requests.
Files
salt-master/base/packages/prometheus/init.sls
2022-01-31 21:17:58 +01:00

54 lines
1.7 KiB
Plaintext

{%
set has_promexporter = salt['pillar.get'](
'chaos-role',
default={}
)
%}
{% set orig_prom_path = '/var/lib/prometheus/node-exporter' %}
# This has to be here, otherwise:
# https://stackoverflow.com/questions/59268721/saltstack-use-include-twice-in-one-sls-file
#
{%- if 'prometheus-node_exporter' in has_promexporter %}
include:
- prometheus
- systemd.reload
{%- endif %}
{%- if 'prometheus-node_exporter' in has_promexporter %}
systemd-prometheus-node-exporter-service-override:
file.managed:
- name: /etc/systemd/system/prometheus-node-exporter.service.d/override.conf
- user: node_exporter
- group: node_exporter
- makedirs: True
- contents: |
[Service]
ExecStartPre=mkdir -p {{ salt['pillar.get']('prometheus:service:node_exporter:args:collector.textfile.directory') }}
ExecStartPre=chown prometheus:prometheus {{ salt['pillar.get']('prometheus:service:node_exporter:args:collector.textfile.directory') }}
ExecStartPre=chmod 755 {{ salt['pillar.get']('prometheus:service:node_exporter:args:collector.textfile.directory') }}
- watch_in:
- cmd: reload_systemd_configuration
{% if salt['file.directory_exists' ](orig_prom_path) %}
delete-orig-prom-path:
file.absent:
- name: {{ orig_prom_path }}
{% endif %}
link-orig-prom-path:
file.symlink:
- name: {{ orig_prom_path }}
- target: {{ salt['pillar.get']('prometheus:service:node_exporter:args:collector.textfile.directory') }}
- require:
- file: delete-orig-prom-path
{% if grains['oscodename'] != 'bullseye' %}
patch-smartmon.sh:
file.managed:
- name: /usr/share/prometheus-node-exporter/smartmon.sh
- source: salt://base/packages/prometheus/files/smartmon.sh
- mode: 0755
{% endif %}
{%- endif %}