Packaging avec les outils de DevTools
Table des Matières
Chapitre I
Empaquetage d'un paquet conforme au "Standard Source Tree"
Pour commencer, il est important de voir la documentation du fameux standard source tree avant de passer à la suite de ce document.
1. Création d'un tarball avec distutils
La première étape de la distribution d'un paquet Python est de rendre celui-ci distribuable à l'aide de Distutils (cela n'est pas nécessaire pour les produits Zope). Ce paquet fournit un fichier setup.py générique, tirant les informations nécessaire du fichier __pkginfo__.py. Vous n'avez donc théoriquement qu'à copier le setup.py générique et à écrire un fichier MANIFEST.in. Pour en savoir plus ou si vous avez des besoins un peu exotique, e vous laisse lire la documentation de distutils. Une fois cela effectué, il est de bon ton de tester que ça marche...
  1. python setup.py sdist à la racine du paquet.
  2. vérifier que l'archive générée (dans le sous-répertoire dist) contient les fichiers désirés.
  3. extraire l'archive (tarball) dans un répertoire temporaire.
  4. python setup.py install dans le répertoire extrait de l'archive (voir les options d'installation avec python setup.py install --help).
  5. vérifier que les tests / éxécutables installés fonctionnent correctement.
L'utilitaire preparedistrib vous aide en faisant des vérifications et diverses actions préparant la distribution. Il est donc fortement conseillé de l'éxécuter avant d'effectuer une distribution. Une fois le tarball généré et vérifié, utiliser l'utilitaire tagpackage pour mettre un tag dans le CVS correspondant à la distribution que vous venez d'effectuer.
2. Test du paquet debian
Pour tester rapidement votre paquet debian utilisez buildpackage. (buildpackage logilab/pyreverse deb si on reprend l'exemple).
Une fois le paquet construit, il faut vérifier :
  1. son contenu avec dpkg --contents <monpackage.deb>
  2. son installation avec dpkg -i <monpackage.deb>
  3. que les tests / éxécutables installés fonctionnent correctement
  4. sa déinstallation avec dpkg -r <monpackage.deb>
3. Construction du paquet final
Une fois que tout marche, vous devez utiliser makedistrib pour construire le tarball et le paquet debian. Il est important d'utiliser ensuite l'utilitaire tagpackage pour mettre les tags dans le gestionnaire de source.