docs: add cron setup instructions to README

This commit is contained in:
Claude
2026-07-28 07:21:52 +00:00
parent 1bdc8e3845
commit 7015e26fdf
+32 -2
View File
@@ -10,13 +10,43 @@ Automatischer Abgleich zwischen Proxmox-Inventar und der Homelab-Dokumentation i
## Setup
1. **Script konfigurieren:** In `scripts/proxmox-inventory-json.sh` die Variable `N8N_WEBHOOK_URL` auf die echte n8n-Webhook-URL setzen (aktuell ein Platzhalter, da diese pro Installation individuell ist).
2. **n8n-Workflow importieren:** JSON-Datei in n8n importieren. Folgende Credentials werden benötigt (nicht im Export enthalten, aus Sicherheitsgründen):
1. **Script konfigurieren:** In `scripts/proxmox-inventory-json.sh` die Variable `N8N_WEBHOOK_URL` auf die echte n8n-Webhook-URL setzen (aktuell ein Platzhalter, da diese pro Installation individuell ist). Wichtig: **Produktions-Pfad** (`/webhook/...`) verwenden, nicht `/webhook-test/...` der Test-Pfad funktioniert nur, während der Workflow im n8n-Editor auf "Listen for test event" steht.
2. **n8n-Workflow importieren:** JSON-Datei in n8n importieren und **aktivieren/publishen** (der Webhook reagiert sonst nicht auf den Produktions-Pfad). Folgende Credentials werden benötigt (nicht im Export enthalten, aus Sicherheitsgründen):
- **Outline Bearer Auth** (Header Auth, `Authorization: Bearer <Outline-API-Token>`) für alle `outline.vogt.de.com/api/...`-Requests
- **NTFY Bearer Auth** (Header Auth) für die ntfy-Benachrichtigung am Ende
3. **Webhook-Pfad in n8n** mit der URL im Script abgleichen.
4. Erst mit `--vmids=<einzelne-VMID> --dry-run` testen, bevor der volle Sync scharf geschaltet wird.
## Automatischer Betrieb per Cron
Auf dem Proxmox-Host `crontab -e` und folgende Zeile eintragen, um das Script stündlich zwischen 07:00 und 20:00 Uhr laufen zu lassen:
```cron
0 7-20 * * * /root/proxmox-inventory-json.sh >> /var/log/proxmox-inventory-sync.log 2>&1
```
- `7-20` = jede volle Stunde von 7 bis 20 Uhr (14 Läufe/Tag)
- Ausgabe (inkl. Fehler) landet in `/var/log/proxmox-inventory-sync.log`
Optionale Logrotate-Regel, damit das Log nicht unbegrenzt wächst:
```bash
cat > /etc/logrotate.d/proxmox-inventory-sync << 'EOF'
/var/log/proxmox-inventory-sync.log {
weekly
rotate 4
compress
missingok
notifempty
}
EOF
```
**Vor dem Scharfschalten prüfen:**
- Läuft das Script lokal auf dem Host mit der echten (nicht der Platzhalter-)Webhook-URL?
- Ist der n8n-Workflow aktiviert (`active: true`)?
- Ein manueller Testlauf (`./proxmox-inventory-json.sh --dry-run`) zeigt das gebaute JSON ohne etwas zu senden guter erster Check nach jeder Änderung.
## Funktionsweise (Kurzfassung)
- Script sammelt Proxmox-Daten (LXC + VM) → sendet JSON an n8n