From b9c6c991205b86ef806c2959ef99854a5b1e9b4b Mon Sep 17 00:00:00 2001 From: Stefan Koelle Date: Fri, 7 Aug 2026 21:01:48 +0200 Subject: [PATCH] sync healthcheck documentation --- README.md | 5 ++++- SPEC.md | 9 ++++++++- config/README.md | 4 ++++ 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0987f84..b334aa1 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,10 @@ vim config/accounts.json ``` Trage für jede Apple-ID einen Eintrag mit eindeutigem `name`, -`apple_email`, `apple_app_password` und `authelia_user` ein. Diese Datei +`apple_email`, `apple_app_password` und `authelia_user` ein. Optional +kann pro Account eine `healthcheck_url` konfiguriert werden, die nach +jedem erfolgreichen Sync aufgerufen wird (z.B. für Uptime-Monitoring). +Diese Datei bleibt lokal auf dem Host, sie ist in `.gitignore` ausgeschlossen und wird nur als Volume in den Container gemountet. diff --git a/SPEC.md b/SPEC.md index 3bd8b47..cd090c1 100644 --- a/SPEC.md +++ b/SPEC.md @@ -39,7 +39,7 @@ außerhalb des Apple-Ökosystems. ```json { "accounts": [ - { "name": "markus", "apple_email": "markus@icloud.com", "apple_app_password": "xxxx-xxxx-xxxx-xxxx", "authelia_user": "mmustermann" }, + { "name": "markus", "apple_email": "markus@icloud.com", "apple_app_password": "xxxx-xxxx-xxxx-xxxx", "authelia_user": "mmustermann", "healthcheck_url": "https://healthchecks.example.de/ping/abc123" }, { "name": "partner", "apple_email": "partner@icloud.com", "apple_app_password": "yyyy-yyyy-yyyy-yyyy", "authelia_user": "pmustermann" } ], "admins": ["mmustermann"] @@ -77,6 +77,13 @@ außerhalb des Apple-Ökosystems. mehr statt (Unterschied zu v1). - Vorteil bei 2.000+ Kontakten: reguläre 15-Minuten-Läufe übertragen nur die tatsächlichen Änderungen, nicht den kompletten Bestand. +- **Healthcheck-URL**: Das optionale Feld `healthcheck_url` pro Account + in `accounts.json` wird nach jedem erfolgreichen Sync-Lauf dieses + Accounts per `GET` aufgerufen (Timeout 10 Sekunden). Dient dem + Uptime-Monitoring (z.B. Healthchecks.io, Uptime Kuma). Bei + Sync-Fehlern oder wenn das Feld leer/fehlend ist, wird kein Aufruf + ausgeführt. Fehler beim Aufruf werden geloggt, brechen den + Sync-Prozess aber nicht ab. ## 5. Datenmodell (MariaDB) diff --git a/config/README.md b/config/README.md index c5e0d59..cebddf7 100644 --- a/config/README.md +++ b/config/README.md @@ -15,6 +15,10 @@ Felder pro Account: `Remote-User`-Header an die Web-Ansicht/API durchreicht. Dieser Wert bestimmt, welchen Account ein eingeloggter Benutzer in der Web-Ansicht sieht. +- `healthcheck_url` (optional): URL, die nach jedem erfolgreichen + Sync-Lauf dieses Accounts aufgerufen wird (z.B. für Uptime-Monitoring + wie Healthchecks.io). Bei Sync-Fehlern wird die URL nicht aufgerufen. + Leer lassen oder weglassen, um deaktiviert. Optionales Feld `admins` (Liste von `authelia_user`-Werten): diese Benutzer sehen in der Web-Ansicht/API die Kontakte aller Accounts,