From 79aacdd22f7538952bf964b71c543626ac53b71b Mon Sep 17 00:00:00 2001 From: Thomas Schneider <qsx@chaotikum.eu> Date: Sun, 14 Nov 2021 18:27:39 +0100 Subject: [PATCH] alertmanager: Add Gentoo support --- alertmanager/handlers/main.yml | 18 ++++++++++++-- alertmanager/tasks/debian.yml | 24 ++++++++++++++++++ alertmanager/tasks/gentoo.yml | 33 +++++++++++++++++++++++++ alertmanager/tasks/main.yml | 23 +---------------- alertmanager/templates/override.conf.j2 | 4 +++ 5 files changed, 78 insertions(+), 24 deletions(-) create mode 100644 alertmanager/tasks/debian.yml create mode 100644 alertmanager/tasks/gentoo.yml create mode 100644 alertmanager/templates/override.conf.j2 diff --git a/alertmanager/handlers/main.yml b/alertmanager/handlers/main.yml index 94a8c21..89ae186 100644 --- a/alertmanager/handlers/main.yml +++ b/alertmanager/handlers/main.yml @@ -1,11 +1,25 @@ --- -- name: Restart alertmanager +- name: Reload systemd + systemd: + daemon_reload: true + +- name: Restart prometheus-alertmanager systemd: name: prometheus-alertmanager.service state: restarted -- name: Reload alertmanager +- name: Reload prometheus-alertmanager systemd: name: prometheus-alertmanager.service state: reloaded + +- name: Restart alertmanager + systemd: + name: alertmanager.service + state: restarted + +- name: Reload alertmanager + systemd: + name: alertmanager.service + state: reloaded diff --git a/alertmanager/tasks/debian.yml b/alertmanager/tasks/debian.yml new file mode 100644 index 0000000..155fd4b --- /dev/null +++ b/alertmanager/tasks/debian.yml @@ -0,0 +1,24 @@ +--- + +- name: Install alertmanager + apt: + name: prometheus-alertmanager + state: present + +- name: Configure alertmanager command arguments + template: + src: default.j2 + dest: /etc/default/prometheus-alertmanager + notify: + - Restart prometheus-alertmanager + tags: + - config + +- name: Configure alertmanager + template: + src: alertmanager.yml.j2 + dest: /etc/prometheus/alertmanager.yml + notify: + - Reload prometheus-alertmanager + tags: + - config diff --git a/alertmanager/tasks/gentoo.yml b/alertmanager/tasks/gentoo.yml new file mode 100644 index 0000000..cc10dc7 --- /dev/null +++ b/alertmanager/tasks/gentoo.yml @@ -0,0 +1,33 @@ +--- + +- name: Install alertmanager + portage: + package: + - app-metrics/alertmanager + state: present + +- name: Create systemd override directory + file: + path: /etc/systemd/system/alertmanager.service.d + state: directory + +- name: Configure alertmanager command arguments + template: + src: override.conf.j2 + dest: /etc/systemd/system/alertmanager.service.d/override.conf + notify: + - Reload systemd + - Restart alertmanager + +- name: Configure alertmanager + template: + src: alertmanager.yml.j2 + dest: /etc/alertmanager/config.yml + notify: + - Reload alertmanager + +- name: Enable and start alertmanager + systemd: + name: alertmanager.service + state: started + enabled: true diff --git a/alertmanager/tasks/main.yml b/alertmanager/tasks/main.yml index 71f6185..91f8b30 100644 --- a/alertmanager/tasks/main.yml +++ b/alertmanager/tasks/main.yml @@ -1,24 +1,3 @@ --- -- name: Install alertmanager - apt: - name: prometheus-alertmanager - state: present - -- name: Configure alertmanager command arguments - template: - src: default.j2 - dest: /etc/default/prometheus-alertmanager - notify: - - Restart alertmanager - tags: - - config - -- name: Configure alertmanager - template: - src: alertmanager.yml.j2 - dest: /etc/prometheus/alertmanager.yml - notify: - - Reload alertmanager - tags: - - config +- include_tasks: "{{ ansible_distribution|lower }}.yml" diff --git a/alertmanager/templates/override.conf.j2 b/alertmanager/templates/override.conf.j2 new file mode 100644 index 0000000..a44f71d --- /dev/null +++ b/alertmanager/templates/override.conf.j2 @@ -0,0 +1,4 @@ +{# -*- systemd -*- #} +[Service] +ExecStart= +ExecStart=/usr/bin/alertmanager {{ prometheus_alertmanager_args }} -- GitLab