diff options
Diffstat (limited to 'roles/monitoring/prometheus/target/tasks')
-rw-r--r-- | roles/monitoring/prometheus/target/tasks/main.yml | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/roles/monitoring/prometheus/target/tasks/main.yml b/roles/monitoring/prometheus/target/tasks/main.yml new file mode 100644 index 00000000..69ea94f2 --- /dev/null +++ b/roles/monitoring/prometheus/target/tasks/main.yml @@ -0,0 +1,26 @@ +--- +- name: enable/disable job targets + vars: + job_targets: "{{ vars | prometheus_job_targets(prometheus_server_jobs) }}" + block: + - name: install files for enabled targets + loop: "{{ job_targets | selectattr('enabled') }}" + loop_control: + loop_var: target + label: "{{ target.job }} -> {{ target.instance }}" + delegate_to: "{{ prometheus_server }}" + template: + src: "{{ lookup('first_found', {'paths': ['templates'], 'files': [target.job + '.yml.j2', 'generic.yml.j2']}) }}" + dest: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml" + notify: reload prometheus + + - name: remove files for disabled targets + loop: "{{ job_targets | rejectattr('enabled') }}" + loop_control: + loop_var: target + label: "{{ target.job }} -> {{ target.instance }}" + delegate_to: "{{ prometheus_server }}" + file: + path: "/etc/prometheus/targets/{{ target.job }}/{{ target.instance }}.yml" + state: absent + notify: reload prometheus |