Le 08/04/2014 17:26, Simon Fonteneau a écrit :
Bonjour

Je voulais savoir si il y avait un documentation pour la création des wapt

Simon Fonteneau

Bonjour,
Il n'existe pas encore de documentation très détaillée : l'introduction est là : http://dev.tranquil.it/index.php/WAPT_-_D%C3%A9veloppement_de_paquets

On peut s'inspirer des paquets existants dans le dépot public http://wapt.tranquil.it/wapt
Un paquet wapt est un fichier Zip avec l'extension .wapt (un simple 7zip permet de voir le contenu !)  contenant au minimum :
Ce fichier zip contient évidemment en plus tous les fichiers nécessaires à l'installation (fichiers msi, setup.exe, install.exe, fichiers de configuration...)
Le client wapt-get possède des commande make-template, build-package, build-upload, make-group etc... pour faciliter la création, la signature et le déploiement de ce fichier ZIP particulier.

Le processus global est :
1 - Préparation d'un environnement de travail
Le plus simple est d'installer le paquet tis-waptdev (dispo sur http://wapt.tranquil.it/wapt) qui installe un environnement python2.7 complet, et un éditeur / debuggeur convivial  de code python "pyscripter"
Il faut également se créer (si ce n'est déjà fait) une clé privée et son certificat public qui va permettre de signer les paquets et authentifier quels paquets ont le droit d'être installés sur le parc.
Pour créer le couple clé privée / clé publique, utiliser la fonction Outils / Création de certificats auto-signés de waptconsole. Stocker la clé privée (.pem) en lieu sûr... et diffuser sur les postes (c:\wapt\ssl) la partie publique uniquement (.crt)
Configurer dans le fichier c:\wapt\wapt-get.ini les paramètres minimum de développement :
[global]
...
default_sources_root=c:\waptdev
private_key=C:\private\monorganisation.pem
default_package_prefix=test


2- Développement du paquet, tests , débuggage
- par duplication d'un existant
wapt-get duplicate modele nouveau

- par création d'un template à partir d'un msi
wapt-get make-template chemin-vers-installeur.exe test-paquet

Cela crée une arborescence c:\waptdev\test-paquet avec des squelettes de fichiers à modifier/compléter

Pour tester le paquet, on n'a pas besoin de le on peut lancer sur le poste de développement / test (en tant qu'administrateur en général)
wapt-get install c:\waptdev\test-paquet

On peut également dans pyscripter mettre des points d'arrêt, et tester l'installation ou la désinstallation pas à pas.

Quand le paquet fonctionne en test, on peut le construire (en faire un zip avec la signature) et le mettre à disposition

3 - Déploiement
Pour construire/signer le paquet :
 wapt-get build-package c:\waptdev\test-paquet

Déployer le paquet consiste à le transférer sur un serveur http dans le répertoire /var/www/wapt et mettre à jour l'index des packages /var/www/wapt/Packages
- avec un serveur debian et les paquets tis-waptserver+tis-waptrepo
la commande wapt-get build-upload test-paquet.wapt envoie le paquet en http vers le serveur, et le waptserver se charge de le copier dans /var/www/wapt et de mettre à jour l'index

- sur un serveur apache2 et le paquet tis-waptrepo
On peut utiliser un outil comme winscp pour copier le paquet dans /var/www/wapt, puis on lance sur le serveur la commande "python /opt/wapt/wapt-scanpackages.py /var/www/wapt/"