From 0b2823d40892ffca4c0c64536c6a821cebaf3ff6 Mon Sep 17 00:00:00 2001 From: Colin Wilk Date: Sat, 27 May 2023 19:57:38 +0200 Subject: Switch to single host per exporter configuration Before you could do multiple hosts per exporter like this: - id: node_exporter hosts: - host1 - host2 This was removed since it simplifies the code quite a bit and you can still archive the same behavior like this: - { id: node_exporter, host: host1 } - { id: node_exporter, host: host2 } Signed-off-by: Colin Wilk --- defaults/main.yml | 6 ++++-- tasks/lineinfile.yml | 7 +++---- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 8c0435b..7bf7715 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -49,7 +49,9 @@ prometheus_target_exporter_defaults: prometheus_target_exporter: [] # - id: node_exporter - # path: asd - # hosts: ['{{ inventory_hostname }}'] + # # overwrites prometheus_target_exporter_defaults.node_exporter.path + # path: /path/to/targets/file/on/prometheus/host + # # overwrites: prometheus_target_exporter_defaults.node_exporter.host + # host: '{{ inventory_hostname }}:9100' default_hostname: '{{ inventory_hostname }}' # TODO: Implement diff --git a/tasks/lineinfile.yml b/tasks/lineinfile.yml index c90e823..ff09478 100644 --- a/tasks/lineinfile.yml +++ b/tasks/lineinfile.yml @@ -1,15 +1,14 @@ --- - name: Make sure targets are deployed ansible.builtin.lineinfile: - path: '{{ item.0.path if item.0.path is defined else prometheus_target_exporter_defaults[item.0.id].path }}' + path: '{{ item.path if item.path is defined else prometheus_target_exporter_defaults[item.id].path }}' line: '{{ prometheus_target_strategy_lineinfile_prefix ~ - (item.1 if item.1 != "" else prometheus_target_exporter_defaults[item.0.id].host) ~ + (item.host if item.host is defined else prometheus_target_exporter_defaults[item.id].host) ~ prometheus_target_strategy_lineinfile_suffix }}' state: present become: true delegate_to: '{{ prometheus_target_host }}' - loop: '{{ (prometheus_target_exporter | selectattr("hosts", "defined") | subelements("hosts")) - + (prometheus_target_exporter | selectattr("hosts", "undefined") | product([""])) }}' + loop: '{{ prometheus_target_exporter }}' notify: - Run command hook - Run shell hook -- cgit v1.2.3