Comment déployer mon application Catalyst en tant que paquet Debian (ou alternative appropriée)?

Après avoir testé mon application Catalyst et décidé de la déployer, je souhaiterais la compacter pour pouvoir l’intégrer facilement sur les serveurs de transfert et les serveurs en direct, gérer les dépendances et les restaurer facilement grâce à la flexibilité du contrôle des versions. Comme mon système d’exploitation est Ubuntu, je pensais qu’il serait plus judicieux de le conditionner en paquet deb.

Je prédis que je devrai créer un deuxième paquet de toutes mes dépendances de module Perl, car beaucoup ne sont pas fournies par ma dissortingbution, ou les emballer indépendamment, même si cela peut demander beaucoup de travail.

Quelqu’un at-il une expérience de faire cela – ou une alternative saine, similaire?

Pour construire vos propres paquets Debian à partir de paquets CPAN:

  • Installer les scripts d’aide Debian

    sudo apt-get install dh-make-perl

  • Téléchargez le MODULE du CPAN et comstackz le paquet Debian

    cpan2deb MODULE

dh-make-perl est en fait le bon outil pour placer les modules CPAN dans les paquets Debian. Avec apt-file, il peut même vous préparer des dépendances appropriées.

A propos de pouvoir “facilement reculer” nécessite cependant une attention particulière au versionnage ou aux stream de travail. Il y a plusieurs approches qui pourraient faire votre travail ici:

  • Si vous pouvez forcer la mise à niveau inférieure des packages que vous avez déjà gagnés la plupart du temps, sauf si vous avez des scripts de maintenance très spécifiques qui effectuent des tâches sur les mises à niveau de packages – vous devrez également les gérer.
  • Si vous devez suivre le chemin de mise à niveau habituel, vous pouvez envisager d’utiliser des méthodes telles que “ + rollback ” ou similaire.

Les packages de dépendance sont toujours une bonne idée pour les déploiements afin de s’assurer qu’aucun paquetage requirejs n’est réellement manquant. En outre, vous voudrez peut-être investir un peu de temps dans des frameworks de gestion tels que la marionnette , ils seront peut-être utiles ici aussi.