[Wapt] Documentation pour la création de paquets ? Re: create wapt
Hubert TOUVET
htouvet at tranquil.it
Tue Apr 8 18:13:18 CEST 2014
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 :
* un fichier python setup.py avec une fonction install()
* un fichier texte WAPT\control avec les attributs du paquet (nom,
version, architecture, dépendances, description...)
* un fichier WAPT\manifest avec la liste des fichiers du paquet et une
somme de contrôle sha1
* un fichier WAPT\signature qui contient la signature cryptée de la
liste des fichiers
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 travai*l
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/"
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.tranquil.it/pipermail/wapt/attachments/20140408/93fa776f/attachment.html>
More information about the WAPT
mailing list