sync: Inventory-Realabgleich + neue host_vars/roles/playbooks
Nachgezogener Arbeitsstand des Homelabs: - neue host_vars (k3s-*, gluster-*, docmost, paperless, kometa, thelounge, satisfactory, wolfstack-vm) - neue Rollen/Playbooks (net_watchdog, patchmon-agent, tc_ratelimit, sops-age, rotate-ssh-key, dns-doh, remove-postfix, checkrr-deploy) - diverse Rollen-Updates (base, borg, dns_resolver, frp_client, hawser, nvidia) Ausgeklammert (bleiben uncommittet): host_vars/docmost/vars.yml (Klartext-Token -> sollte vault-konform via vault_* referenziert werden). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
d857b72cf8
commit
bc765668a6
52 changed files with 780 additions and 222 deletions
|
|
@ -28,8 +28,27 @@ before_backup:
|
|||
|
||||
after_backup:
|
||||
- curl -fsS -m 10 "https://status.guck.tv/api/push/borg-{{ inventory_hostname }}?status=up&msg=OK&ping=" || true
|
||||
- curl -fsS -m 10 "http://10.1.1.111:9999/push?host={{ inventory_hostname }}&status=ok" || true
|
||||
- >-
|
||||
bash -c '
|
||||
STATS=$(borgmatic info --archive latest --json 2>/dev/null | python3 -c "
|
||||
import sys,json
|
||||
d=json.load(sys.stdin)[0][\"archives\"][-1]
|
||||
s=d.get(\"stats\",{})
|
||||
print(json.dumps({
|
||||
\"host\":\"{{ inventory_hostname }}\",
|
||||
\"status\":\"ok\",
|
||||
\"duration_sec\":int(s.get(\"duration\",0)),
|
||||
\"original_size\":s.get(\"original_size\",0),
|
||||
\"deduplicated_size\":s.get(\"deduplicated_size\",0),
|
||||
\"compressed_size\":s.get(\"compressed_size\",0),
|
||||
\"nfiles_new\":s.get(\"nfiles\",0)
|
||||
}))" 2>/dev/null || echo "{\"host\":\"{{ inventory_hostname }}\",\"status\":\"ok\"}");
|
||||
curl -fsS -m 10 -X POST -H "Content-Type: application/json" -d "$STATS" "http://10.1.1.111:9999/api/push" || true
|
||||
'
|
||||
|
||||
on_error:
|
||||
- curl -fsS -m 10 "https://status.guck.tv/api/push/borg-{{ inventory_hostname }}?status=down&msg=FEHLER&ping=" || true
|
||||
- curl -fsS -m 10 "http://10.1.1.111:9999/push?host={{ inventory_hostname }}&status=error&msg=Backup%20fehlgeschlagen" || true
|
||||
- >-
|
||||
curl -fsS -m 10 -X POST -H "Content-Type: application/json"
|
||||
-d '{"host":"{{ inventory_hostname }}","status":"error","message":"Backup fehlgeschlagen"}'
|
||||
"http://10.1.1.111:9999/api/push" || true
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue