Skip to content

Clients einfach updaten

Ich hab hier mal 2 Scripts geschrieben:

  • prepare-client.py
    • Ein Python-Script für die Verwendung am Debian-Server, welches ...
    • den Client an die Unternehmensumgebung anpasst (Kieselstein-Server-IP),
    • eine EXE mit launch4j baut (keine schwarzen cmd-fenster mehr beim client!)
    • die Dateipfade über Versionen hinweg normalisiert (weil Versionsnummern in Pfadnamen sind Stolpersteine, wenn man automatisch Client-Updates installieren möchte)
    • und als ganze als ZIP-Archiv in den clients Ordner verpackt, welches immer gleich heißt.
  • kieselstein-client-updater
    • Ein dazu passendes Python-Programm für Windows (.exe) das man ausführen kann um den neuesten Kieselstein-Client am PC zu installieren bzw. zu aktualisieren (= neu drüberkopieren).
    • Beim ersten Mal starten wird nach der Server-IP-Adresse gefragt
    • Aktuell noch eher proof of concept. Besser wäre es vmtl, wenn:
      • Das Tool direkt als Starter des Clients vorschalten wäre.
      • Vor dem Download prüft, ob die Version eh schon die aktuellste ist, anstatt sie blind herunterzuladen

Hab das derweil mal hier als gitlab-snippet bereitgestellt. Kann aber gerne in die Codebase übernommen werden. Bei starkem Interesse würde ich das auch noch weiter entwickeln:
https://gitlab.com/-/snippets/4772437

Warum das alles in Python?

  • ich kann Python.
  • Annahme: (Linux-)Sysadmins können oft eher Python als Java. Dieses Script ist eher was zum Anpassen, weil Unternehmen den Client evtl unterschiedlich anpassen wollen.
  • läuft grundsätzlich überall, ist relativ OS-agnostisch und weniger messy als ein bash oder bat script.
Edited by Andreas Demmelbauer