diff options
Diffstat (limited to 'roles/monitoring/prometheus/exporter/snmp/tasks')
-rw-r--r-- | roles/monitoring/prometheus/exporter/snmp/tasks/main.yml | 39 |
1 files changed, 36 insertions, 3 deletions
diff --git a/roles/monitoring/prometheus/exporter/snmp/tasks/main.yml b/roles/monitoring/prometheus/exporter/snmp/tasks/main.yml index 8fc93f0b..66b6f6b7 100644 --- a/roles/monitoring/prometheus/exporter/snmp/tasks/main.yml +++ b/roles/monitoring/prometheus/exporter/snmp/tasks/main.yml @@ -28,14 +28,47 @@ dest: /etc/prometheus/exporter/snmp/config.yml notify: reload prometheus-snmp-exporter -- name: extend the default configuration +- name: add extra auths to default configuration when: - prometheus_exporter_snmp_config is not defined - - prometheus_exporter_snmp_config_extra is defined + - prometheus_exporter_snmp_auths_extra is defined blockinfile: path: /etc/prometheus/exporter/snmp/config.yml + insertbefore: '^modules:' + marker: '# {mark} ANSIBLE MANAGED BLOCK auths-extra' block: | - {{ prometheus_exporter_snmp_config_extra | to_nice_yaml(indent=2) }} + {{ ' ' }}{{ prometheus_exporter_snmp_auths_extra | to_nice_yaml(indent=2) | indent(2) }} + notify: reload prometheus-snmp-exporter + +- name: remove extra auths from default configuration + when: + - prometheus_exporter_snmp_config is not defined + - prometheus_exporter_snmp_auths_extra is not defined + blockinfile: + path: /etc/prometheus/exporter/snmp/config.yml + marker: '# {mark} ANSIBLE MANAGED BLOCK auths-extra' + state: absent + notify: reload prometheus-snmp-exporter + +- name: add extra modules to default configuration + when: + - prometheus_exporter_snmp_config is not defined + - prometheus_exporter_snmp_modules_extra is defined + blockinfile: + path: /etc/prometheus/exporter/snmp/config.yml + marker: '# {mark} ANSIBLE MANAGED BLOCK modules-extra' + block: | + {{ ' ' }}{{ prometheus_exporter_snmp_modules_extra | to_nice_yaml(indent=2) | indent(2) }} + notify: reload prometheus-snmp-exporter + +- name: remove extra modules from default configuration + when: + - prometheus_exporter_snmp_config is not defined + - prometheus_exporter_snmp_modules_extra is not defined + blockinfile: + path: /etc/prometheus/exporter/snmp/config.yml + marker: '# {mark} ANSIBLE MANAGED BLOCK modules-extra' + state: absent notify: reload prometheus-snmp-exporter - name: generate systemd service unit |