Installationsprüfung

Fragen zu WAPT-Paketen / Anfragen und Hilfe bezüglich WAPT-Paketen.
Forumregeln
Community-Forumregeln
* Englischer Support auf www.reddit.com/r/wapt
* Französischer Community-Support ist in diesem Forum verfügbar.
* Bitte kennzeichnen Sie gelöste Themen mit [GELÖST].
* Bitte bearbeiten Sie keine Themen, die mit [GELÖST] markiert sind. Erstellen Sie stattdessen ein neues Thema und verweisen Sie auf das alte.
* Geben Sie die installierte WAPT-Version, die vollständige Versionsnummer und die Build-Nummer (2.2.1.11957 / 2.2.2.12337 / usw.) sowie die Enterprise-/Discovery-Edition an.
* Versionen 1.8.2 und älter werden nicht mehr unterstützt. Fragen zu Version 1.8.2 werden nur beantwortet, wenn sie sich auf ein Upgrade auf eine unterstützte Version (2.1, 2.2 usw.) beziehen.
* Geben Sie das Server-Betriebssystem (Linux/Windows) und die Version (Debian Buster/Bullseye – CentOS 7 – Windows Server 2012/2016/2019) an.
* Geben Sie gegebenenfalls das Betriebssystem des Administrations-/Paketerstellungsrechners und des Rechners mit dem problematischen Agenten an (Windows 7/10/11/Debian 11/etc.).
* Vermeiden Sie es, mehrere Fragen in einem Thema zu stellen, da diese sonst möglicherweise ignoriert werden. Falls mehrere Themen relevant sind, erstellen Sie bitte separate Themen, vorzugsweise nacheinander und nicht gleichzeitig (d. h. vermeiden Sie Spam im Forum).
* Fügen Sie Code-Snippets, Screenshots und andere Bilder direkt in Ihren Beitrag ein. Links zu Pastebin, Bitly und anderen Drittanbieterseiten werden systematisch entfernt.
* Wie in jedem Community-Forum erfolgt die Unterstützung freiwillig durch die Mitglieder. Für kommerziellen Support kontaktieren Sie bitte den Vertrieb von Tranquil IT unter +44 2 40 97 57 55.
Gesperrt
Benutzeravatar
Mathieu
Nachrichten: 91
Anmeldung: 18. August 2016 - 10:24 Uhr

27. Oktober 2018 – 19:36 Uhr

- Installierte WAPT-Version (1.6.2.7 Enterprise)
- Server-Betriebssystem (Linux) und Version (Debian Stretch)
- Betriebssystem des Administrations-/Paketerstellungsrechners (Windows 10)


Guten Morgen,

Wir werden WAPT demnächst in unserem Park einführen, allerdings habe ich ein Problem mit einigen meiner Pakete.

Einige meiner Pakete enthalten nach der Installation Befehlszeilen (run oder install_exe_if_needed) zum Kopieren von Dateien, Erstellen von Registrierungsschlüsseln usw
Um zu vermeiden, dass bestimmte Daten überschrieben werden und die Konfiguration auf bereits installierten Rechnern verloren geht, habe ich einen Teil des Codes aus einem Paket kopiert, um zu überprüfen, ob die Software ordnungsgemäß installiert ist.

Ich habe verschiedene Methoden ausprobiert, aber einige Pakete lassen sich nicht installieren

1.

Code: Alle auswählen

def install():

    global uninstallkey
    from common import Wapt

    softname = 'DameWare Remote Support'
    check_installed_out = installed_softwares(softname)
    Software = [ soft for soft in installed_softwares(softname) if Version(soft['version']) < Version('12.0.6002.5') ]

    if Software:
        print('installing futur-DameWareRS')
        run('DameWareRS.exe /args "/qn reboot=reallysuppress SILENT=yes INSTALLSTANDALONE=0 CENTRALSERVERHOSTNAME=*****.****.***.fr CENTRALSERVERPORT=6133"')
    else:
        print('already installed')
2.

Code: Alle auswählen

def install():

    softname = 'DameWare Remote Support'
    check_installed_out = installed_softwares(softname)
    
    if not check_installed_out:
        print('installing futur-DameWareRS')
        run('DameWareRS.exe /args "/qn reboot=reallysuppress SILENT=yes INSTALLSTANDALONE=0 CENTRALSERVERHOSTNAME=*****.*****.****.fr CENTRALSERVERPORT=6133"')
    else:
        print('already installed')
Ich bevorzuge Code 1, da er die installierte Version prüft. Wenn ich also meine Software aktualisieren muss, wird das Update nicht durchgeführt, da erkannt wird, dass die Software bereits installiert ist. Allerdings stoße ich auf ein Problem: Wenn ich die Software deinstalliere und anschließend mein Skript teste, passiert nichts außer der Ausgabe.

Wenn ich meine Variable ausgeben lasse, ist sie leer; mein Skript sollte die Installation durchführen.

Gibt es bei Ihnen bereits eine einfachere Methode für die Bereitstellung auf Arbeitsstationen?

Ich wende mich an Sie, weil ich mir seit mehreren Wochen den Kopf zerbreche, um eine Lösung zu finden, und der Produktionsstarttermin immer näher rückt

Danke schön.
- WAPT 2.2.3.12463 Enterprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

28. Oktober 2018 – 14:58 Uhr

Ihr erster Code sollte funktionieren; ich sehe keine Fehler.

Bitte überprüfen Sie jedoch, ob die installierte Softwareversion niedriger als 12.0.6002.5 ist.
Benutzeravatar
Mathieu
Nachrichten: 91
Anmeldung: 18. August 2016 - 10:24 Uhr

1. November 2018 - 10:43 Uhr

Ich habe Lösung 1 beibehalten, aber beispielsweise lässt sich bei einer anderen Software nichts installieren, obwohl die Software nicht auf dem Rechner vorhanden ist; die Variable `Software` zeigt nichts an.

Die Ausgabe von `print` ist `[]`.

Der Befehl funktioniert einwandfrei, um den Rechner zu überprüfen, aber bei einer Neuinstallation passiert nichts, obwohl die Software installiert werden sollte, da sie nicht erkannt wird.
- WAPT 2.2.3.12463 Enterprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Benutzeravatar
Mathieu
Nachrichten: 91
Anmeldung: 18. August 2016 - 10:24 Uhr

5. November 2018 - 10:16 Uhr

Ich glaube, ich habe eine Lösung gefunden, bin mir aber nicht sicher

Ich führe zwei Überprüfungen durch und im Moment funktioniert es

Code: Alle auswählen

def install():

    global uninstallkey
    from common import Wapt

    softname = 'DameWare Remote Support'
    check_installed_out = installed_softwares(softname)
    Software = [ soft for soft in installed_softwares(softname) if Version(soft['version']) < Version('12.1.0.34') ]

    if Software or not check_installed_out:
- WAPT 2.2.3.12463 Enterprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Benutzeravatar
Sfonteneau
WAPT-Experte
Nachrichten: 2322
Registriert: 10. Juli 2014 - 23:52 Uhr
Kontakt:

5. November 2018 – 14:31 Uhr

Warum nicht `install_exe_if_needed` anstelle von `run` verwenden?

Es führt bereits alle diese Prüfungen durch. (Bei Bedarf die Funktion `install_exe_if_needed` kopieren und einfügen.)

https://github.com/tranquilit/WAPT/blob ... s.py#L4152
Benutzeravatar
Mathieu
Nachrichten: 91
Anmeldung: 18. August 2016 - 10:24 Uhr

5. November 2018 – 14:40 Uhr

Bei einigen .exe- oder .msi-Dateien funktioniert diese Lösung nicht, weshalb ich auf einen Ausführungsbefehl umgestiegen bin.

Wir verwenden bestimmte Befehle zur Konfiguration der Software (ODBC-Konfiguration, Kopieren von Konfigurationsdateien usw.). Ohne Überprüfung führt das Paket, selbst mit `install_exe_if_needed`, die Konfigurationsbefehle aus. Ich möchte verhindern, dass die Konfigurationen verändert werden.

Daher suche ich nach einer Möglichkeit zu prüfen, ob die Software auf dem Rechner installiert ist, und das Paket nur dann auszuführen, wenn dies nicht der Fall ist.
- WAPT 2.2.3.12463 Enterprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Gesperrt