summaryrefslogtreecommitdiffstats
path: root/roles/prometheus
diff options
context:
space:
mode:
authorAhmed Abdelhalim <[email protected]>2026-06-18 16:30:12 +0200
committerAhmed Abdelhalim <[email protected]>2026-06-18 16:32:15 +0200
commit6a0fd11c6bd782a42b0b90d2f2365859a7953bb7 (patch)
treebf50fdd6ee47a5fde5bd3a05b96006138100dee8 /roles/prometheus
parentc7a4dfce1ad0b545b05a8043e321ad49e48873a6 (diff)
Implement support for conditional proxy (nginx or caddy)
Diffstat (limited to 'roles/prometheus')
-rw-r--r--roles/prometheus/handlers/main.yml10
-rw-r--r--roles/prometheus/tasks/main.yml15
-rw-r--r--roles/prometheus/templates/prometheus.caddy.j23
3 files changed, 26 insertions, 2 deletions
diff --git a/roles/prometheus/handlers/main.yml b/roles/prometheus/handlers/main.yml
index b42a2391..7ee44e81 100644
--- a/roles/prometheus/handlers/main.yml
+++ b/roles/prometheus/handlers/main.yml
@@ -6,7 +6,17 @@
state: "restarted"
- name: "Restart nginx"
+ listen: "Restart proxy"
become: true
ansible.builtin.systemd_service:
name: "nginx"
state: "restarted"
+ when: proxy_type == "nginx"
+
+- name: "Restart caddy"
+ listen: "Restart proxy"
+ become: true
+ ansible.builtin.systemd_service:
+ name: "caddy"
+ state: "restarted"
+ when: proxy_type == "caddy"
diff --git a/roles/prometheus/tasks/main.yml b/roles/prometheus/tasks/main.yml
index 8e315bec..123c1216 100644
--- a/roles/prometheus/tasks/main.yml
+++ b/roles/prometheus/tasks/main.yml
@@ -64,7 +64,7 @@
- name: "Create prometheus nginx vhost configuration"
become: true
- when: prometheus_hostname | length > 0
+ when: proxy_type == "nginx" and prometheus_hostname | length > 0
ansible.builtin.template:
src: "prometheus.nginx.conf.j2"
dest: "/etc/nginx/vhosts.d/prometheus.conf"
@@ -75,4 +75,15 @@
validate: >
bash -c 'echo "events { worker_connections 64; } http { include %s; }" > /tmp/nginx-vhost.conf;
sudo nginx -T -c /tmp/nginx-vhost.conf; ec=$?; rm -f /tmp/nginx-vhost.conf; exit $ec'
- notify: "Restart nginx"
+ notify: "Restart proxy"
+
+- name: "Create prometheus caddy configuration"
+ become: true
+ when: proxy_type == "caddy" and prometheus_hostname | length > 0
+ ansible.builtin.template:
+ src: "prometheus.caddy.j2"
+ dest: "/etc/caddy/sites/prometheus.caddy"
+ owner: "root"
+ group: "caddy"
+ mode: "0640"
+ notify: "Restart proxy"
diff --git a/roles/prometheus/templates/prometheus.caddy.j2 b/roles/prometheus/templates/prometheus.caddy.j2
new file mode 100644
index 00000000..c346da59
--- /dev/null
+++ b/roles/prometheus/templates/prometheus.caddy.j2
@@ -0,0 +1,3 @@
+{{ prometheus_hostname }} {
+ reverse_proxy localhost:{{ prometheus_port }}
+}