Utiliser WAPT en ligne de commande

L’agent WAPT installé permet l’utilisation de WAPT en ligne de commande à l’aide du programme wapt-get.

The Windows Command Line utility

Invite de commande Windows

Note

  • par défaut la ligne de commande va essayer d’effectuer les actions demandées avec le compte qui a lancé la console cmd.exe ;

  • si l”Utilisateur n’est pas un Administrateur Local ou si le cmd.exe n’a pas été lancé avec les droits Administrateur Local, la commande sera passée au waptservice ;

  • par sécurité, certaines actions demandent un identifiant et un mot de passe ;

  • seuls les membres du groupe Administrateur Local de la machine et les membres du groupe de sécurité waptselfservice de l’Active Directory sont autorisés ;

  • pour forcer le passage par le service WAPT en tant qu”Administrateur Local, ajouter simplement -S après wapt-get ;

Utiliser les fonctions les plus courantes de la ligne de commande

wapt-get update

La commande update permet de mettre à jour la liste des paquets disponibles.

L’agent WAPT local télécharge le fichier Packages depuis le dépôt et le compare avec sa base de données.

  • si des mises à jour sont disponibles, l’agent bascule alors les paquets concernés dans l’état TO-UPDATE ;

  • si de nouveaux logiciels ont été ajoutés sur le dépôt, ils deviennent téléchargeables sur le poste client ;

Note

L’action update ne télécharge pas les paquets, elle met uniquement à jour la base locale des paquets.

La commande wapt-get update renvoie :

Update package list
Total packages: 751
Added packages:

Removed packages:

Upgradable packages:
upgrade
additional
install
remove
Repositories URL:
https://srvwapt.mydomain.lan/wapt
https://srvwapt.mydomain.lan/wapt-host

wapt-get upgrade

La commande upgrade lance l’installation des paquets en attente de mise à jour ou d’installation.

L’agent WAPT local télécharge si nécessaire les paquets WAPT dans son cache local puis installe les paquets.

Indication

Il est recommandé de lancer un update avant de lancer un upgrade ;

Sans un update préalable, l’agent WAPT n’installera rien ;

La commande wapt-get upgrade renvoie :

Installing tis-mumble
Shutting down Mumble
installing Mumble 1.2.8
Installing w7demo.domain.lan

=== install packages ===
w7demo.domain.lan (=3) | w7demo.domain.lan (3)

=== additional packages ===
tis-mumble                     | tis-mumble (1.2.8-1)

wapt-get install

La commande install lance l’installation d’un paquet.

La commande prend un argument en paramètre. Cet argument est le nom du paquet contenant le préfixe.

Pour l’installation de Mozilla Firefox il faudra taper la commande wapt-get install <prefix>-firefox.

Note

Si le paquet n’est pas téléchargé au préalable, la commande install téléchargera préalablement le paquet en cache.

Attention

L’installation d’un paquet WAPT avec install n’ajoute pas le paquet en dépendance au poste.

Il est installé sur la machine, mais en cas de réinstallation du poste il ne sera pas réinstallé automatiquement.

La commande wapt-get install tis-firefox renvoie :

installing WAPT packages tis-firefox
Installing tis-firefox.local/wapt/tis-firefox_50.0.2-73_all.wapt: 44796043 / 44796043 (100%) (33651 KB/s)
Firefox Setup 50.0.2.exe successfully installed.
Disabling auto update
Disabling profile migration from ie
Override User UI

=== install packages ===
tis-firefox                    | tis-firefox (50.0.2-73)

wapt-get remove

La commande remove lance la désinstallation d’un paquet.

La commande prend un argument en paramètre. Cet argument est le nom du paquet contenant le préfixe.

Pour désinstaller Mozilla Firefox il faudra taper la commande : wapt-get remove <prefix>-firefox.

Attention

La désinstallation d’un paquet WAPT avec remove ne supprime pas la dépendance entre le paquet machine et le paquet.

Le paquet sera effectivement désinstallé de la machine, mais il sera réinstallé automatiquement lors du prochain upgrade.

Afin de supprimer totalement un paquet d’un poste il faut faire un remove puis éditer la configuration de la machine via la console et supprimer la dépendance au paquet.

La commande wapt-get remove tis-firefox renvoie :

Removing tis-firefox ...

=== Removed packages ===
  tis-firefox

wapt-get clean

La commande clean supprime du cache les paquets dans le répertoire C:\Program Files (x86)\wapt\cache.

La commande clean est lancée à chaque fin de mise à jour pour économiser le stockage sur le disque dur de la machine.

La commande wapt-get clean renvoie :

Removed files:
C:\Program Files (x86)\wapt\cache\tis-mumble_1.2.8-1_all.wapt
C:\Program Files (x86)\\wapt\cache\tis-vlc_2.2.4-2_all.wapt

Utiliser les lignes de commande spéciales

wapt-get register

La commande wapt-get register <description> permet de remonter l’inventaire matériel et logiciel de la machine sur le serveur d’inventaire WAPT.

Indication

Vous pouvez préciser une description supplémentaire en paramètre de register, cette description sera affichée dans la console WAPT comme description du poste.

Vous pouvez donc profiter de WAPT pour améliorer la gestion administrative de votre parc en affectant à la machine le nom d’un service ou le nom du principal utilisateur de la machine.

La commande wapt-get register "PC de Thomas ne renvoie rien ;

wapt-get download

La commande wapt-get download <nom du paquet> télécharge le paquet dans le cache local WAPT : C:\Program Files\wapt\cache.

La commande wapt-get download tis-7zip renvoie :

Downloading packages tis-7zip (=16.4-8)

Downloaded packages:
  C:\Program Files (x86)\wapt\cache\tis-7zip_16.4-8_all_all.wapt

wapt-get download-upgrade

La commande wapt-get download-upgrade télécharge les paquets à mettre à jour, en prévision de leur installation, dans le cache local WAPT C:\Program Files (x86)\wapt\cache.

La commande wapt-get download-upgrade renvoie :

=== downloaded packages ===
C:\Program Files (x86)\wapt\cache\tis-firebird_2.5.5.26952-1_all.wapt

wapt-get show

La commande wapt-get show <nom du paquet> affiche les informations contenues dans l’index Packages.

Si plusieurs versions du paquet sont disponibles sur le dépôt, toutes les versions sont affichées.

La commande wapt-get show tis-firebird renvoie :

Display package control data for tis-firebird

package           : tis-firebird
version           : 2.5.5.26952-1
architecture      : all
section           : base
priority          : optional
maintainer        : Hubert TOUVET
description       : Firebird database SQL superserver with admin tools (Firebird Project)
filename          : tis-firebird_2.5.5.26952-1_all.wapt
size              : 7012970
repo_url          : https://srvwapt.mydomain.lan/wapt
md5sum            : 6f6d70630674f5d58a5259b1e6752221
repo              : global

wapt-get list

La commande wapt-get list affiche la liste des paquets WAPT actuellement installés sur la machine.

La commande wapt-get list renvoie :

package

version

install status

install_date

description

tis-7zip

16.4-8

OK

2016-12-01T17:43

compression archivage 7-zip pour x86 et x64

tis-brackets

1.8-1

OK

2016-12-01T17:44

Brackets propose un éditeur de code léger, libre et développé par Adobe.

tis-ccleaner

5.23.5808-0

OK

2016-12-01T18:55

utilitaire de choix pour nettoyer, réparer et optimiser rapidement Windows

tis-rsat-win7x64

2

OK

2016-12-02T10:46

package for MS RSAT Remote server admin windows6.1-kb958830-x64 pour Win7 SP1

tis-rsat-x64

1

OK

2016-12-02T10:51

package for MS RSAT Remote server admin windows6.1-kb958830-x64 pour Win7 SP1

tis-dotnetfx4.6

4.6.2-1

OK

2016-12-09T16:05

dot net FX 4.6.2 Framework CLient. replace 4/4.5/4.5.1/4.5.2/4.6/4.6.1

wapt-get upgradedb

La commande wapt-get upgradedb met à jour le schéma de la base de données locale WAPT si nécessaire.

La commande wapt-get upgradedb renvoie :

WARNING upgrade db aborted: current structure version 20161109 is newer or equal to requested structure version 20161109
No database upgrade required, current 20161109, required 20161109

wapt-get setup-tasks - wapt-get enable-tasks - wapt-get disable-tasks

La commande wapt-get setup-tasks ajoute des tâches planifiées update et upgrade

Indication

Cette fonction est utile lorsque que l’on ne souhaite pas utiliser le service waptservice, sinon le service waptservice s’en chargera.

Pour que cela fonctionne, il faut au préalable avoir configuré les paramètres dans le fichier wapt-get.ini :

  • waptupdate_task_maxruntime;

  • waptupgrade_task_maxruntime;

  • waptupdate_task_period;

  • waptupgrade_task_period;

Alors :

  • la commande wapt-get enable-tasks activera les tâches planifiées ;

  • la commande wapt-get disable-tasks désactivera les tâches planifiées ;

wapt-get add-upgrade-shutdown - wapt-get remove-upgrade-shutdown

  • la commande wapt-get add-upgrade-shutdown ajoute la stratégie locale waptexit des scripts d’arrêt du système pour waptexit ;

  • la commande wapt-get remove-upgrade-shutdown supprime la stratégie locale des scripts d’arrêt du système pour waptexit ;

wapt-get inventory

La commande wapt-get inventory affiche le contenu de l’inventaire local de la machine au format JSON.

La commande wapt-get inventory renvoie :

{
  "wapt": {
    "setuphelpers-version": "1.3.8",
    "waptserver": {
      "dnsdomain": "mydomain.lan",
      "proxies": {
        "http": null,
        "https": null
      },
      "server_url": "https://srvwapt.mydomain.lan"
},
...

wapt-get update-status

La commande wapt-get update-status renvoie l’inventaire local vers le serveur d’inventaire WAPT.

Note

Si un composant matériel a changé sur la machine, cette commande ne remontera pas la nouvelle information au serveur WAPT.

Dans ce cas, il faudra lancer la commande inventory.

La commande wapt-get update-status renvoie :

Inventory correctly sent to server https://srvwapt.mydomain.lan.

wapt-get setlocalpassword

La commande wapt-get setlocalpassword permet de définir un mot de passe local pour installer des paquets WAPT.

La commande wapt-get setlocalpassword renvoie :

Local password:
Confirm password:
Local auth password set successfully

wapt-get reset-uuid

La commande wapt-get reset-uuid permet de récupérer le UUID de la machine à partir du BIOS et le remonter au serveur WAPT.

La commande wapt-get wapt-get reset-uuid renvoie :

New UUID: B0F23D44-86CB-CEFE-A8D6-FB8E3343FE7F

wapt-get generate-uuid

La commande wapt-get generate-uuid permet de générer un UUID aléatoire pour la machine et de le remonter au serveur WAPT.

Indication

Certaines machines ont un BIOS avec des UUID identiques. Cette anomalie est un défaut de paramétrage du BIOS par le constructeur de la machine car les UUID devraient être uniques.

La commande command:generate-uuid existe pour résoudre ce problème.

La commande wapt-get generate-uuid renvoie :

New UUID: 6640f174-de90-4b00-86f7-d7834ceb45bc

wapt-get get-server-certificate

La commande wapt-get get-server-certificate permet de télécharger le certificat SSL du serveur WAPT, quand on utilise HTTPS pour les échanges avec le serveur.

Le certificat téléchargé est stocké dans C:\Program Files (x86)\wapt\ssl\server.

La commande wapt-get get-server-certificate renvoie :

Server certificate written to C:\Program Files (x86)\wapt\ssl\server\srvwapt.mydomain.lan.crt

wapt-get enable-check-certificate

La commande wapt-get enable-check-certificate permet de télécharger le certificat SSL du serveur WAPT et active le contrôle des échanges avec le serveur.

La commande wapt-get enable-check-certificate renvoie :

Server certificate written to C:\Program Files (x86)\wapt\ssl\server\srvwapt.mydomain.lan.crt
wapt config file updated

wapt-get session-setup

La commande wapt-get session-setup lance l’exécution des personnalisations logicielles en contexte utilisateur.

Indication

Les instructions en session-setup sont définies dans le fichier setup.py des paquets applicatifs.

L’ensemble des instructions est sauvegardé en base locale.

Le script session-setup est lancé à chaque démarrage mais l’exécution d’un session-setup ne se fait qu’une fois par utilisateur et par version de paquet.

Note

Le paramètre ALL lancera le session-setup de tous les paquets WAPT installés sur la machine.

La commande wapt-get session-setup ALL renvoie :

Configuring tis-7zip ... No session-setup. Done
Configuring tis-ccleaner ... Already installed. Done
Configuring tis-vlc ... No session-setup. Done
Configuring mdl-tightvnc ... No session-setup. Done
Configuring tis-brackets ... No session-setup. Done
Configuring mdl-firefox-esr ... No session-setup. Done
Configuring tis-rsat-x64 ... No session-setup. Done
Configuring tis-dotnetfx4.6 ... No session-setup. Done
Configuring tis-rsat-win7x64 ... No session-setup. Done
Configuring tis-mumble ... No session-setup. Done
Configuring tis-paint.net ... No session-setup. Done
Configuring wsagauvrit.domain.lan ... No session-setup. Done

Utiliser la ligne de commande pour créer des paquets WAPT

wapt-get make-template

La commande wapt-get make-template <msi or exe file> <package name> permet de générer un modèle de paquet logiciel à partir d’un installeur exécutable au format MSI ou EXE.

Vous trouverez ici la procédure complète pour créer des paquets WAPT.

Indication

  • Si vous avez au préalable installé le paquet tis-waptdev sur votre machine de développement, l’éditeur PyScripter se lancera automatiquement en ouvrant le projet de création de paquet.

La commande wapt-get make-template C:\Users\User\Downloads\tightvnc-2.8.5-gpl-setup-64bit.msi tis-tightvnc renvoie :

Template created. You can build the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-package C:\waptdev\tis-tightvnc-wapt
You can build and upload the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-upload C:\waptdev\tis-tightvnc-wapt

wapt-get make-host-template

La commande wapt-get make-host-template <host FQDN> permet de générer un modèle de paquet machine vide.

La commande wapt-get make-host-template host01.mydomain.lan renvoie :

Template created. You can build the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-package C:\waptdev\host01.mydomain.lan-wapt
You can build and upload the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-upload C:\waptdev\host01.mydomain.lan-wapt

wapt-get make-group-template

La commande wapt-get make-group-template <name of group> permet de générer un modèle de paquet groupe vide.

La commande wapt-get make-group-template accounting renvoie :

Template created. You can build the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-package C:\waptdev\accounting-wapt
You can build and upload the WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-upload C:\waptdev\accounting-wapt

wapt-get list-registry

La commande wapt-get list-registry <keyword> permet de rechercher un mot clé parmi les logiciels installés sur la machine.

Cette commande affiche un tableau contenant la clé de désinstallation de chaque logiciel correspondant au critère de recherche.

La commande wapt-get list-registry firefox renvoie :

UninstallKey                           Software                               Version             Uninstallstring
---------------------------------------------------------------------------------------------------------------------------------------------------------
Mozilla Firefox 45.5.0 ESR (x64 fr)    Mozilla Firefox 45.5.0 ESR (x64 fr)    45.5.0              "C:\Program Files\Mozilla Firefox\uninstall\helper.exe"

wapt-get sources

La commande wapt-get sources <package name> permet de télécharger les sources depuis un dépôt versionné type Git / SVN.

La commande wapt-get sources tis-firefox ne renvoie rien ;

wapt-get build-package

La commande wapt-get build-package <path to the package> permet de construire le paquet WAPT et le signer avec la clé privée de l”Administrateur.

Note

Il convient de s’assurer que le chemin de la clé privée, le préfixe et le chemin de développement par défaut sont renseignés.

La commande wapt-get build-package C:\waptdev\tis-tightvnc-wapt renvoie :

Building  C:\waptdev\tis-tightvnc-wapt

Package tis-tightvnc (=2.8.5.0-0) content:
 setup.py
 tightvnc-2.8.5-gpl-setup-64bit.msi
 WAPT\control
 WAPT\wapt.psproj
...done. Package filename C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt
Signing C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt

7-Zip [64] 16.04: Copyright (c) 1999-2016 Igor Pavlov: 2016-10-04

Open archive: C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt
--
Path = C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt
Type = zip
Physical Size = 1756459

Updating archive: C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt

Items to compress: 0

Files read from disk: 0
Archive size: 1755509 bytes (1715 KiB)
Everything is Ok
Package C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt signed: signature:
mOQINvKGfmcW4nu05aVc8MJqMtXdPv5I0qo5zCfMkIWvEeYYDDfnZLakPkXiqptiqcNbCdY8vOPs
qFMqwSMYUyKJ8d3DHEk8kdlIldkLsiAejkdsoiZDKlEFVCJgdKI13x4FcPfoZNw5DFPzmCZKbgkU
pWvGbGFwUx/3d9zcliciN82F0FveC6C0mqoh5A==

You can upload to repository with
  C:\Program Files (x86)\wapt\wapt-get.exe upload-package "C:\waptdev\tis-tightvnc_2.8.5.0-0_all.wapt"

wapt-get sign-package

La commande wapt-get sign-package <path to the package> permet de signer un paquet téléchargé manuellement avec la clé privée de l”Administrateur en ligne de commande.

Attention

La commande sign-package ne renomme pas le paquet avec le préfixe de l”Organisation.

La commande wapt-get sign-package C:\\waptdev\\smp-7zip_16.4.0.0-1_all.wapt renvoie :

Signing C:\waptdev\smp-7zip_16.4.0.0-1_all.wapt

7-Zip [64] 16.04: Copyright (c) 1999-2016 Igor Pavlov: 2016-10-04

Open archive: C:\waptdev\smp-7zip_16.4.0.0-1_all.wapt
--
Path = C:\waptdev\smp-7zip_16.4.0.0-1_all.wapt
Type = zip
Physical Size = 2857855

Updating archive: C:\waptdev\smp-7zip_16.4.0.0-1_all.wapt

Items to compress: 0

Files read from disk: 0
Archive size: 2856021 bytes (2790 KiB)
Everything is Ok
Package C:\waptdev\smp-7zip_16.4.0.0-1_all.wapt signed: signature:
lAxMJBKlnZLFQG81Rwb80+cB6XHcNjazmVJI7+PLLcPfFkFVC5wojyMPVMKhUrjrSlWomj85L8CY
gZv/FsVspUij45TcikukbF8Rr+jy6saHskg42XINqZWCnP28k4bkIREdzYIkuKDABfr15gt3ecuN
E21ZU/SI8BtXOX/80w9hpbP6ivCzTaYZZk18dhLDzV04xM9QwPSZ2mjQspbVklpm2NL4F6gb5b9D
EwMjus74/MNc6BZeKtMcFcE3Ft18ROAJeF5hLws24jjCv6Gjjus+zlGlepWK0M2p7rIdvmC1BWB/
Y6e1mQpSoisAvhOpATFPqNJca/QTMANKiTD3OA==

wapt-get build-upload

La commande wapt-get build-upload <chemin du paquet> permet de construire et d’uploader le paquet résultant sur le dépôt WAPT local.

Indication

Avec le paramètres -i on incrémente directement la version du paquet WAPT sans avoir à modifier le fichier control.

La commande wapt-get -i build-upload C:\\waptdev\\tis-tightvnc-wapt renvoie :

Building  C:\waptdev\tis-tightvnc-wapt
Package tis-tightvnc (=2.8.5.0-1) content:
 setup.py
 tightvnc-2.8.5-gpl-setup-64bit.msi
 WAPT\control
 WAPT\wapt.psproj
...done. Package filename C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt
Signing C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt

7-Zip [64] 16.04: Copyright (c) 1999-2016 Igor Pavlov: 2016-10-04

Open archive: C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt
--
Path = C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt
Type = zip
Physical Size = 1756458

Updating archive: C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt

Items to compress: 0

Files read from disk: 0
Archive size: 1755509 bytes (1715 KiB)
Everything is Ok
Package C:\waptdev\tis-tightvnc_2.8.5.0-1_all.wapt signed: signature:
FVn2yx77TwUHaDauSPHxJZiPAyMQe4PqLF5n6wY9YPAwY4ijHe6NgDFrexXf8ZYbHAiNa5b8V/Qj
wTVHiqpbXnZotiVIGrJDhgbaLwZ9CK6pfWiflC4126nx6PMF3T1i6w0R0NOE2wJpOSRYESk7lDUz
9CPfzJCLcOXwh0F5eZc96wbkDkSbpn1f+x5tOlvyy/FW2m8RbZQhJcO21j9gGX7It0QNecaOxXgz
qkZZKBDNASOBYAF22M1+zHb59DWQ63Q8yMj5t5szEUTkGtQNG6vZz3gb9Yraq361BIGaBDYUM31j
ZgpaHvP0vdK3c1x1mhyhC7q6eZ/UCW5tETTCiA==

Uploading files...
WAPT Server user :admin
WAPT Server password:
Status: OK, tis-tightvnc_2.8.5.0-1_all.wapt uploaded, 1 packages analysed

wapt-get duplicate

La commande wapt-get duplicate <package source> <package new_duplicate> permet de dupliquer localement un paquet WAPT du dépôt.

La commande wapt-get duplicate tis-firefox tis-firefox-custom renvoie :

Package duplicated. You can build the new WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-package C:\waptdev\tis-firefox-custom-wapt
You can build and upload the new WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe build-upload C:\waptdev\tis-firefox-custom-wapt

wapt-get edit

La commande wapt-get edit <package name> permet d’éditer un paquet.

La commande wapt-get edit tis-firefox renvoie :

Package edited. You can build and upload the new WAPT package by launching
  C:\Program Files (x86)\wapt\wapt-get.exe -i build-upload C:\waptdev\tis-firefox-wapt

wapt-get edit-host

La commande wapt-get edit-host <host FQDN> permet d’éditer un paquet host depuis le dépôt WAPT.

wapt-get upload-package

La commande wapt-get upload-package <path to the package> permet de charger un paquet sur le dépôt WAPT.

La commande wapt-get upload-package C:\\waptdev\ is-tightvnc_2.8.5.0-1_all.wapt renvoie :

WAPT Server user :admin
WAPT Server password:
tis-tightvnc_2.8.5.0-1_all.wapt uploaded, 1 packages analyzed
result: OK

wapt-get update-packages

La commande wapt-get update-packages <path to folder> permet de scanner un dossier local et de créer un fichier d’index Packages.

La commande wapt-get update-packages D:\\Data\\WAPT renvoie :

Packages filename: D:\waptdev\Packages
Processed packages:
  D:\Data\WAPT\groupe_base.wapt
  D:\Data\WAPT\tis-firefox_50.1.5.0-0_all.wapt
  D:\Data\WAPT\tis-tightvnc_2.8.5.0-1_all.wapt
  D:\Data\WAPT\tis-7zip_16.4.0.0-1_all.wapt
  D:\Data\WAPT\tis-mumble_3.14-3_all.wapt
  D:\Data\WAPT\tis-noforcereboot_1.0-1_all.wapt
Skipped packages: