Updates & Wartung

Halte deine Wundio Box aktuell – System-Updates und Code-Updates

🔧

wundio-update

System & Dependencies

Aktualisiert Betriebssystem-Pakete, Python-Bibliotheken und startet Services neu.

sudo bash /opt/wundio/scripts/update.sh

Nutze dies für: Sicherheits-Patches, Library-Updates, Bug-Fixes in Dependencies

🔄

wundio-pull

Code aus GitHub

Zieht neueste Code-Änderungen direkt aus GitHub – schnell, sicher, mit Backup.

sudo wundio-pull

Nutze dies für: Neue Features, UI-Updates, API-Änderungen

Schnellreferenz

Backend-Update (Python):

sudo wundio-pull

⚡ Schnell (~10 Sekunden)

Full-Update (Backend + Frontend):

sudo wundio-pull --full

⏱️ Langsamer (~5 Minuten Pi 3, ~2 Minuten Pi 4)

System-Update:

sudo bash /opt/wundio/scripts/update.sh

🔧 Aktualisiert OS-Pakete + Python-Libs

Service neu starten:

sudo systemctl restart wundio-core

Nach jedem Code-Update erforderlich

wundio-pull – Details

Verwendung

Standard (Backend only):

sudo wundio-pull
  • • Erstellt automatisches Backup
  • • Pullt neueste Commits von GitHub
  • • Zeigt Changelog
  • Neustart erforderlich: sudo systemctl restart wundio-core

Full Update (mit Frontend-Rebuild):

sudo wundio-pull --full
  • • Alles wie oben +
  • • Baut React-UI neu (npm run build)
  • • Kopiert Build nach /core/static/web/
  • • Dauert länger: Pi 3 ~5-15 min, Pi 4 ~2-5 min

Andere Optionen:

sudo wundio-pull --branch dev

Pull von anderem Branch (z.B. Beta-Testing)

sudo wundio-pull --force

Verwirft lokale Änderungen ohne Nachfrage

wundio-pull --help

Zeigt alle Optionen

Safety Features

🛡️ Automatisches Backup

Vor jedem Pull wird /opt/wundio/core nach /opt/wundio-backups/ kopiert. Die letzten 5 Backups werden behalten.

⚠️ Warnung bei lokalen Änderungen

Falls du Dateien auf dem Pi geändert hast, fragt das Script vor dem Pull nach:

[WARN] Lokale Änderungen gefunden:
  M core/config.py
  ?? test.py

Änderungen verwerfen? (j/n):

🔄 Rollback möglich

Falls nach dem Update etwas nicht funktioniert:

sudo cp -r /opt/wundio-backups/wundio-20260424-143022-core /opt/wundio/core
sudo systemctl restart wundio-core

Beispiel-Workflow

1️⃣ Auf PC: Code pushen

git add .
git commit -m "Fix: Spotify OAuth Redirect-URI"
git push origin main

2️⃣ Auf Pi: Update ziehen

sudo wundio-pull
# Output: "Updates gezogen: abc123 → def456"
# "Fix: Spotify OAuth Redirect-URI"

sudo systemctl restart wundio-core

3️⃣ Fertig!

Update dauert ~10 Sekunden. Kein FileZilla, kein manuelles Kopieren.

Wann welches Command?

wundio-pull

Nutze wenn: Neue Features, Bug-Fixes im Code, UI-Updates

Beispiel: "Spotify OAuth wurde gefixt" → wundio-pull

update.sh

Nutze wenn: Sicherheits-Patches, Python-Library-Updates

Beispiel: "FastAPI 0.115 ist raus" → update.sh

Beide zusammen

Für vollständiges Update (empfohlen einmal pro Monat):

sudo wundio-pull --full
sudo bash /opt/wundio/scripts/update.sh
sudo reboot

Troubleshooting

❌ "Not a git repository"

Ursache: Installation wurde nicht via Git gecloned

Lösung: Nutze update.sh stattdessen, oder re-install

❌ "Fetch fehlgeschlagen"

Ursache: Keine Internetverbindung

Lösung: Prüfe: ping github.com

❌ Service startet nicht nach Update

Logs prüfen:

sudo journalctl -u wundio-core -n 50

Rollback: Siehe Backup-Anleitung oben

Weitere Fragen? Schau in die FAQ