Zum Hauptinhalt springen

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:

VariableBedeutungStandard
DISK_TESTER_UPDATE_URLBasis-URL der Update-Schnittstellehttps://disk-tester.znbw.de
DISK_TESTER_UPDATE_CHECK0 schaltet die Prüfung aban

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.

  1. 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.
  2. Solange ein Test oder Löschvorgang läuft oder ein Automatik-Countdown aussteht, ist Jetzt installieren deaktiviert; der Dialog nennt den Grund.
  3. Nach der Bestätigung läuft update.sh als 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.
  4. 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.