Replace uptime kuma with gatus

This commit is contained in:
Tobias Reisinger 2024-10-07 21:17:35 +02:00
parent 849b3a277d
commit 9b7b5d3642
Signed by: serguzim
GPG key ID: 13AD60C237A28DFE
9 changed files with 315 additions and 45 deletions

69
roles/gatus/vars/main.yml Normal file
View file

@ -0,0 +1,69 @@
---
gatus_svc:
domain: status.serguzim.me
name: gatus
port: 8080
gatus_external_endpoints_backups: "{{ vault_hosts | vault_hosts_backup_to_gatus() }}"
gatus_endpoints_hosts: "{{ opentofu.hosts | hosts_to_gatus() }}"
gatus_endpoints_services: "{{ all_services | services_to_gatus() }}"
gatus_endpoints_other:
- name: matrix-federation
url: https://federationtester.matrix.org/api/report?server_name=msrg.cc
group: 9-external
interval: 5m
conditions:
- '[STATUS] == 200'
- '[BODY].FederationOK == true'
ui:
hide-url: true
alerts:
- type: ntfy
send-on-resolved: true
- type: email
send-on-resolved: true
- name: healthchecks-io
url: "{{ opentofu.healthchecksio.status.ping_url }}"
group: 9-external
interval: 5m
conditions:
- '[STATUS] == 200'
ui:
hide-url: true
gatus_yml:
storage:
type: sqlite
path: /data/data.db
connectivity:
checker:
target: 1.1.1.1:53
interval: 60s
security:
oidc:
issuer-url: "{{ opentofu.authentik_data.gatus.base_url }}"
redirect-url: "https://{{ gatus_svc.domain }}/authorization-code/callback"
client-id: "{{ opentofu.authentik_data.gatus.client_id }}"
client-secret: "{{ opentofu.authentik_data.gatus.client_secret }}"
scopes: ["openid"]
alerting:
email: "{{ vault_gatus.alerting.email }}"
ntfy: "{{ vault_gatus.alerting.ntfy }}"
external-endpoints: "{{ gatus_external_endpoints_backups }}"
endpoints: "{{ gatus_endpoints_hosts | union(gatus_endpoints_services) | union(gatus_endpoints_other) }}"
gatus_compose:
watchtower: true
image: twinproduction/gatus
volumes:
- ./config.yaml:/config/config.yaml
- data:/data
file:
volumes:
data: