• latest 0074e48e09

    TESM latest Stable

    alientim released this 2026-08-22 14:29:48 +02:00 | 51 commits to main since this release

    Zeigt immer auf die aktuellste Version. Aktuell: v1.0.10 -- responsive Fixes per echtem Browsertest verifiziert.

    Downloads
  • v1.0.9 a3f5f028f2

    v1.0.9 Stable

    alientim released this 2026-08-22 12:34:48 +02:00 | 52 commits to main since this release

    Responsives CSS ausgebaut fuer Handy (iPhone) und Tablet (iPad): Tabellen scrollen horizontal statt Overflow/Clipping, settings-grid-Overflow-Bug behoben, Button-/Toolbar-Zeilen brechen auf schmalen Screens um.

    Downloads
  • v1.0.8 5bca29f3da

    v1.0.8 Stable

    alientim released this 2026-08-22 12:24:28 +02:00 | 53 commits to main since this release

    NGINX-Seite: Sichtbarkeit/Kontrolle der automatischen Let's-Encrypt-Verlaengerung (Timer-Status, Dry-Run-Test, manuelle Verlaengerung).

    Downloads
  • v1.0.7 4de5828573

    v1.0.7 Stable

    alientim released this 2026-08-22 12:15:32 +02:00 | 54 commits to main since this release

    Erneutes Release von v1.0.7: NGINX-Seite (vormals SSL/TLS) ausgebaut um Domain/Port-Konfiguration, RAW-Config-Anzeige und Let's-Encrypt-Zertifikatsanforderung mit automatischer Verlaengerung. Flask/gunicorn bindet nur noch an 127.0.0.1 -- Zugriff ausschliesslich ueber nginx.

    Downloads
  • v1.0.6 befc76819e

    v1.0.6 Stable

    alientim released this 2026-08-22 11:11:59 +02:00 | 57 commits to main since this release

    Bugfix: TESM_LOG_DIR (/var/log/tesm) war 0o777 (world-writable), wodurch logrotate seit den aktuellen Haertungen jede Rotation mit 'insecure permissions' verweigert hat -- live.log wuchs unbegrenzt, die Verlauf-Seite blieb leer. Verzeichnis jetzt 0755 (self-healing bei jedem App-Start) plus 'su root root' in der generierten logrotate-Config als Absicherung.

    Downloads
  • v1.0.5 99d4d3cd01

    v1.0.5 Stable

    alientim released this 2026-08-22 10:54:39 +02:00 | 58 commits to main since this release

    Live-Log: 300-Zeilen-Tail statt komplettem Datei-Read (behebt Ladezeit-Probleme auf groesseren Umgebungen), neues RAW-Popup fuer das komplette Live-Log (Stil des bestehenden 'Ungespeicherte Aenderungen'-Modals) sowie eine neue Unterseite 'Verlauf' fuer aeltere, von logrotate rotierte Logs -- mit eigenem Recht logs_history.view.

    Downloads
  • v1.0.4 c30ad41101

    v1.0.4 Stable

    alientim released this 2026-08-22 10:30:46 +02:00 | 59 commits to main since this release

    TESM (TimEShepManager) v1.0.4 -- fortlaufendes Update, kein Reset. Datenbank-Schema unveraendert (SCHEMA_VERSION weiterhin 1).

    Aenderungen seit v1.0.3

    • WICHTIGER FIX: v1.0.3s install.sh-Sicherheitsnetz (Backup vor dem Update, Health-Check danach, automatischer Rollback bei Fehlschlag) griff nur bei einer erkannten SCHEMA_VERSION-Aenderung. Ein rein code-seitiger Fehler im neuen Paket (mit dem DB-Schema voellig unabhaengig) konnte dadurch bei unveraendertem Schema ungeschuetzt live gehen. Das Sicherheitsnetz greift jetzt bei JEDEM Update einer bestehenden Installation.
    • Rollback-Fix: verwendet jetzt cp -a statt mv beim Zurueckspielen, plus die fehlgeschlagene Installation wird separat beiseitegelegt (/srv/tesm-failed-update-) statt geloescht -- vorher verschwand das Backup beim Zurueckspielen selbst als eigenstaendige Sicherung.
    • Live in allen drei Pfaden verifiziert: erfolgreiches Update, Migration mit unveraenderter Struktur, und ein absichtlich herbeigefuehrter Fehlschlag mit anschliessendem automatischem Rollback (Dienst/Daten danach nachweislich wiederhergestellt).

    Installation (frischer Host)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.4.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.4/tesm-v1.0.4.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.4.tar.gz -C tesm --strip-components=1
    sudo bash tesm/install.sh
    sudo /srv/tesm/venv/bin/python3 /srv/tesm/create_admin.py
    

    Update / Reinstall (bestehender Host, jede Alt-Generation)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.4.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.4/tesm-v1.0.4.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.4.tar.gz -C tesm --strip-components=1
    sudo bash tesm/update.sh
    

    install.sh ist jetzt auch direkt (ohne update.sh) aus einem entpackten Paket heraus update-faehig. Fuer die jeweils neueste Version statt einer festen Versionsnummer latest verwenden.

    Downloads
  • v1.0.3 e17d91743a

    v1.0.3 Stable

    alientim released this 2026-08-22 10:09:27 +02:00 | 60 commits to main since this release

    TESM (TimEShepManager) v1.0.3 -- fortlaufendes Update, kein Reset. Datenbank-Schema unveraendert (SCHEMA_VERSION weiterhin 1).

    Aenderungen seit v1.0.2

    • install.sh ist jetzt selbst update-faehig: erkennt eine bestehende Installation (an sqlite.db) und macht daraus automatisch ein Update statt einer Frischinstallation. Bei unveraendertem DB-Schema laeuft ein einfaches In-Place-Update (Datenbank bleibt unangetastet). Bei einer Schema-Aenderung (oder unbekannter Version) wird VOR der Migration automatisch die komplette bisherige Installation (Code+venv+Datenbank) gesichert; kommt der Dienst danach per HTTP-Check nicht gesund hoch, wird automatisch komplett zurueckgerollt (Backup bleibt erhalten), sonst wird das Backup nach erfolgreicher Pruefung geloescht.
    • update.sh ist dadurch auf einen schlanken Bootstrapper reduziert (Download + Entpacken + Aufruf von install.sh) und nur noch fuer das Abloesen aelterer, TESM vorausgehender Installationsstufen zustaendig (PoE Manager, urspruengliches Bash-Setup).
    • install.sh ist dadurch jetzt auch OHNE update.sh direkt aus einem entpackten Release-Paket lauffaehig und erkennt ein Update trotzdem korrekt.

    Installation (frischer Host)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.3.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.3/tesm-v1.0.3.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.3.tar.gz -C tesm --strip-components=1
    sudo bash tesm/install.sh
    sudo /srv/tesm/venv/bin/python3 /srv/tesm/create_admin.py
    

    Update / Reinstall (bestehender Host, jede Alt-Generation)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.3.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.3/tesm-v1.0.3.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.3.tar.gz -C tesm --strip-components=1
    sudo bash tesm/update.sh
    

    Fuer die jeweils neueste Version statt einer festen Versionsnummer latest verwenden.

    Downloads
  • v1.0.2 bc360a0b7f

    v1.0.2 Stable

    alientim released this 2026-08-14 09:10:09 +02:00 | 66 commits to main since this release

    TESM (TimEShepManager) v1.0.2 -- fortlaufendes Update, kein Reset. Datenbank-Schema unveraendert (SCHEMA_VERSION weiterhin 1) -- bereits installierte Hosts aktualisieren sich per update.sh automatisch In-Place, die Datenbank bleibt vollstaendig erhalten.

    Aenderungen seit v1.0.1

    • Produktiver WSGI-Server (Gunicorn) statt Flasks Entwicklungsserver fuer tesm.service -- keine 'WARNING: This is a development server'-Meldung mehr. Ein Worker-Prozess (In-Memory-Zustand fuer Wartungs-Jobs/Import-Vorschauen), gthread-Worker mit 16 Threads (fuer das WebSocket-SSH-Terminal), Timeout deaktiviert (lange SSH-Sitzungen). Live inkl. WebSocket-Terminal-Regressionstest verifiziert.
    • install.sh: 'python3 -m pip' statt des 'pip'-Skripts direkt -- dessen Shebang kann nach einer venv-Umbenennung/-Verschiebung auf einen nicht mehr existierenden Pfad zeigen und fehlschlagen ('cannot execute: required file not found'), live auf POETEST reproduziert (Altlast aus der Umbenennung poe_manager -> tesm).

    Installation (frischer Host)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.2.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.2/tesm-v1.0.2.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.2.tar.gz -C tesm --strip-components=1
    sudo bash tesm/install.sh
    sudo /srv/tesm/venv/bin/python3 /srv/tesm/create_admin.py
    

    Update / Reinstall (bestehender Host, jede Alt-Generation)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.2.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.2/tesm-v1.0.2.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.2.tar.gz -C tesm --strip-components=1
    sudo bash tesm/update.sh
    

    update.sh erkennt selbst In-Place-Update vs. Fresh-Install per SCHEMA_VERSION-Vergleich. Fuer die jeweils neueste Version statt einer festen Versionsnummer latest verwenden.

    Downloads
  • v1.0.1 9b3051c984

    v1.0.1 Stable

    alientim released this 2026-08-14 01:09:33 +02:00 | 67 commits to main since this release

    TESM (TimEShepManager) v1.0.1 -- fortlaufendes Update auf v1.0.0, kein Reset. Datenbank-Schema unveraendert (SCHEMA_VERSION weiterhin 1) -- bereits auf v1.0.0 installierte Hosts aktualisieren sich per update.sh automatisch In-Place, die Datenbank (Geraete, Switche, Zugangsdaten, Benutzer, Einstellungen) bleibt dabei vollstaendig erhalten.

    Aenderungen seit v1.0.0

    • Fix: 'database is locked' beim LDAP-/DHCP-Import behoben (_import_ldap/_import_dhcp schreiben jetzt direkt auf die vom Aufrufer uebergebene Verbindung statt ueber set_setting() eine zweite zu oeffnen)
    • Wartung: Linux-Client-Update ueberarbeitet -- einzeln benannte Schritte (apt update -> initramfs MODULES=most dauerhaft setzen -> apt upgrade -> apt full-upgrade -> apt clean -> apt autoremove), jeweils mit eigenem Erfolgs-/Fehlschlag-Marker im Live-Fenster; bei einem mit Exit-Code fehlgeschlagenen Update zusaetzliche Logdatei unter /var/log/tesm/clientupdate/.error

    Installation (frischer Host)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.1.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.1/tesm-v1.0.1.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.1.tar.gz -C tesm --strip-components=1
    sudo bash tesm/install.sh
    sudo /srv/tesm/venv/bin/python3 /srv/tesm/create_admin.py
    

    Update / Reinstall (bestehender Host, jede Alt-Generation)

    curl -fsSL -u <gitea-user>:<token> -o tesm-v1.0.1.tar.gz https://gitea.int.eertmoed.net/alientim/tesm/releases/download/v1.0.1/tesm-v1.0.1.tar.gz
    mkdir -p tesm && tar xzf tesm-v1.0.1.tar.gz -C tesm --strip-components=1
    sudo bash tesm/update.sh
    

    update.sh erkennt selbst, ob ein In-Place-Update (Schema unveraendert) oder eine frische Installation (Schema geaendert oder unbekannt) noetig ist -- sagt das VOR der Bestaetigung an. Fuer die jeweils neueste Version statt einer festen Versionsnummer latest verwenden.

    Downloads