Vérification installation

Questions about WAPT Packaging / Requêtes et aides autour des paquets Wapt.
Règles du forum
Règles du forum communautaire
* English support on www.reddit.com/r/wapt
* Le support communautaire en français se fait sur ce forum
* Merci de préfixer le titre du topic par [RESOLU] s'il est résolu.
* Merci de ne pas modifier un topic qui est taggé [RESOLU]. Ouvrez un nouveau topic en référençant l'ancien
* Préciser version de WAPT installée, version complète ET numéro de build (2.2.1.11957 / 2.2.2.12337 / etc.) AINSI QUE l'édition Enterprise / Discovery
* Les versions 1.8.2 et antérieures ne sont plus maintenues. Les seules questions acceptées vis à vis de la version 1.8.2 sont liés à la mise à jour vers une version supportée (2.1, 2.2, etc.)
* Préciser OS du serveur (Linux / Windows) et version (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019)
* Préciser OS de la machine d'administration/création des paquets et de la machine avec l'agent qui pose problème le cas échéant (Windows 7 / 10 / 11 / Debian 11 / etc.)
* Eviter de poser plusieurs questions lors de l'ouverture de topic, sinon il risque d'être ignorer. Si plusieurs sujet, ouvrir plusieurs topic, et de préférence les uns après les autres et pas tous en même temps (ie ne pas spammer le forum).
* Inclure directement les morceaux de code, les captures d'écran et autres images directement dans le post. Les liens vers les pastebin, les bitly et autres sites tierces seront systématiquement supprimés.
* Comme tout forum communautaire, le support est fait bénévolement par les membres. Si vous avez besoin d'un support commercial, vous pouvez contacter le service commercial Tranquil IT au 02.40.97.57.55
Avatar de l’utilisateur
Mathieu
Messages : 91
Inscription : 18 août 2016 - 10:24

27 oct. 2018 - 19:36

- Version de WAPT installée (1.6.2.7 Entreprise )
- OS du serveur (Linux) et version (Debian Strech)
- OS de la machine d'administration/création des paquets (Windows 10)


Bonjour,

nous allons bientôt mettre en place WAPT dans notre parc sauf que je rencontre un soucis sur certains de mes packages.

Certains de mes packages ont des lignes de commandes apres l'installation run ou install_exe_if_needed ( copie de fichier, création de clé de registre ...)
pour éviter la réécriture de certaines données et la perte de configuration sur les postes déjà installé j'ai pris en copie une partie du code d'un package pour vérifier que le soft est bien installé.

J'ai essayé plusieurs méthode mais certains packages ne s'installe pas

1.

Code : Tout sélectionner

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 : Tout sélectionner

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')
je préfère le code 1 car il va vérifié la version installé car si je doit mettre à jour mon soft l'update ne va pas ce faire car il va détecter que le soft est déjà installé. sauf que je rencontre un soucis car lorsque je fait une désinstallation et après je test mon script il ne fait rien a part mon print.

Lorsque je fait un print de ma variable elle est vide mon script devrait faire l'installation.

avez vous une méthode plus simple pour le déploiement sur des postes déja en place ?

je viens vers vous car ça fait plusieurs semaines que je me casse la tête pour trouver une solution et la date de mise en prod arrive bientôt

je vous remercie.
- WAPT 2.2.3.12463 Entreprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

28 oct. 2018 - 14:58

Votre premier code doit fonctionner je ne constate pas d'erreur

En revanche, a vérifier que le soft installé a bien une version inférieur a 12.0.6002.5
Avatar de l’utilisateur
Mathieu
Messages : 91
Inscription : 18 août 2016 - 10:24

01 nov. 2018 - 10:43

par contre j'ai garder la solution 1 mais par exemple pour un autre soft, rien ne s'installe alors que le soft n'est pas présent sur le poste la variable Sofware affiche rien.

Quand je fait un print j'ai comme retour [] .

la commande fonctionne bien pour la vérification du poste mais pour une nouvelle installation rien ne ce passe alors qu'il devrait s'installer vu qu'il ne voit pas le soft
- WAPT 2.2.3.12463 Entreprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Avatar de l’utilisateur
Mathieu
Messages : 91
Inscription : 18 août 2016 - 10:24

05 nov. 2018 - 10:16

Je pense avoir trouvé une solution mais je ne suis pas sur

je fait deux vérification et pour le moment ça fonctionne

Code : Tout sélectionner

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 Entreprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Avatar de l’utilisateur
sfonteneau
Expert WAPT
Messages : 1783
Inscription : 10 juil. 2014 - 23:52
Contact :

05 nov. 2018 - 14:31

Pourquoi ne pas utiliser install_exe_if_needed a la place du run?

Il fait déjà toute ces vérification. (si besoin copier coller la fonction install exe if needed)

https://github.com/tranquilit/WAPT/blob ... s.py#L4152
Avatar de l’utilisateur
Mathieu
Messages : 91
Inscription : 18 août 2016 - 10:24

05 nov. 2018 - 14:40

Pour certains exe ou msi via cette solution ça ne fonctionne pas pour cela que je suis passer par un run

et nous avons certaines commande à mettre pour la configuration des softs ( configuration ODBC, copie de fichier de conf ect ...) sans vérification même avec un install_exe_if_needed le package va exécuter les commandes de configuration, je veux éviter que les confs soit modifié.

c'est pour ça que je cherche un moyen de faire une vérification si le soft est installé sur le poste mais que si il est pas installé que le packages s’exécute.
- WAPT 2.2.3.12463 Entreprise
- Debian 9.9
- Windows 10 21H2 & Windows 11 22h2
Verrouillé