Updates und Rollback
Update-Hinweis
Die Anwendung fragt höchstens alle 6 Stunden https://disk-tester.znbw.de/api/latest ab und vergleicht die Version mit der installierten (SemVer). Ist eine neuere Version verfügbar, zeigt die Fußzeile „Update verfügbar: vX“ mit einem Link auf die Release-Notes und den Befehl zum Update. Dabei wird nur eine normale HTTP-Anfrage gesendet; Fehler werden still ignoriert.
Über die Umgebungsvariablen in disk-tester.env lässt sich das ändern:
| Variable | Bedeutung | Standard |
|---|---|---|
DISK_TESTER_UPDATE_URL | Basis-URL der Update-Schnittstelle | https://disk-tester.znbw.de |
DISK_TESTER_UPDATE_CHECK | 0 schaltet die Prüfung ab | an |
Update über die Oberfläche
Wenn die Anwendung aus einer Release-Installation läuft (/appdata/disk-tester/releases/<version>) und systemd-run vorhanden ist, zeigt die Fußzeile neben dem Update-Hinweis die Schaltfläche Update installieren. Andernfalls (Mock-Modus, Quellcode-Checkout) steht dort stattdessen der Befehl für die Konsole.
- Ein Klick öffnet einen Bestätigungsdialog mit der Version, einem Link auf die Release-Notes und dem Hinweis, dass der Dienst neu startet und die Seite danach neu lädt.
- Solange ein Test oder Löschvorgang läuft oder ein Automatik-Countdown aussteht, ist Jetzt installieren deaktiviert; der Dialog nennt den Grund.
- Nach der Bestätigung läuft
update.shals eigene systemd-Einheit (disk-tester-update), damit es den Neustart des Dienstes überlebt. Die Fußzeile zeigt den Fortschritt, die Seite lädt sich neu, sobald die neue Version antwortet. - Schlägt das Update fehl, zeigt die Fußzeile das Ergebnis (fehlgeschlagen, zurückgerollt oder abgelehnt) mit kurzer Begründung. Die vorherige Version läuft weiter.
Das Ergebnis des letzten Laufs steht in /appdata/disk-tester/data/update-status.json.
Automatische Updates
Unter Einstellungen > Allgemein schaltet „Updates automatisch installieren, wenn nichts läuft“ die Automatik ein (Standard: aus). Nach jeder erfolgreichen Update-Prüfung wird eine neuere Version installiert, sobald kein Test oder Löschvorgang läuft und kein Automatik-Countdown aussteht. Schlägt eine Version fehl, wird sie nicht erneut automatisch versucht; ein manueller Klick auf Update installieren versucht sie wieder. Schlägt die Prüfung selbst fehl, wird sie nach 30 Minuten wiederholt.
Update per Konsole installieren
sudo /appdata/disk-tester/app/deploy/update.sh
Das Skript lädt das neueste Release von der Homepage, prüft die SHA256-Prüfsumme, entpackt es nach /appdata/disk-tester/releases/<version>, schaltet den Symlink /appdata/disk-tester/app auf die neue Version um und startet den Dienst neu. Einstellungen, Platten und Historie in data/ bleiben erhalten.
Argumente: latest (Standard), eine bestimmte Version wie v0.3.0 oder --rollback.
Läuft ein Test oder Löschvorgang oder steht ein Automatik-Countdown aus, bricht das Skript ab, ohne etwas zu ändern. Mit --force wird die Prüfung übersprungen.
Rollback
sudo /appdata/disk-tester/app/deploy/update.sh --rollback
Schaltet den Symlink app auf die zuvor installierte Version zurück und startet den Dienst neu. Ältere Versionen bleiben unter releases/ liegen, bis sie von Hand entfernt werden.
Technische Details stehen im Update-Vertrag.