Comment faire passer les utilisateurs PPA d'un PPA à un autre?

8

J'ai besoin de faire passer les utilisateurs existants d'un ou plusieurs PPA à différents PPA, c'est donc une question de savoir comment automatiser la transition sans avoir le moins d'impact possible sur les utilisateurs.

Plus précisément:

J'ai des PPA pour PHP 5.5 et PHP 5.6 qui utilisent un emballage PHP de style ancien qui était utilisé avant Xenial et ils ont beaucoup d'utilisateurs.

Maintenant, j'ai fait un nouveau PPA qui inclut PHP 5.5, PHP 5.6 et PHP 7.0 et je voudrais que les utilisateurs des anciens PPA passent à ce nouveau PPA. J'ai quelques idées sur la façon de procéder, mais j'aimerais avoir plus de commentaires de la communauté AskUbuntu.

Veuillez apporter votre opinion via des commentaires, modifier directement les réponses ci-dessous ou ajouter votre propre suggestion.

oerdnj
la source
Belles

Réponses:

3

Option 3 - Ajouter automatiquement le nouveau PPA

C'est comme 2, mais php5-commonajouterait automatiquement le nouveau PPA, donc les nouveaux packages seraient disponibles après la prochaine apt-get updateexécution. En option, il pourrait y avoir une question Debconf si les utilisateurs souhaitent que le PPA soit ajouté automatiquement ou s'ils le feront eux-mêmes.

  • Avantages:
    1. Un seul référentiel à gérer
    2. Pas de transition automatique
    3. Les utilisateurs peuvent préparer leur plan de transition
    4. Les packages sont prêts à être installés immédiatement
    5. L'ajout de PPA à partir du même espace de noms peut fonctionner sans problème
  • Les inconvénients:
    1. Certains utilisateurs manqueront l'annonce, peu importe vos efforts
    2. L'ajout de PPA supplémentaire semble automatiquement constituer un risque pour la sécurité
    3. L'ajout de PPA supplémentaire à partir de différents espaces de noms nécessite la suppression de clés GPG supplémentaires /etc/apt/trusted.gpg.d/et cela semble également constituer un risque pour la sécurité
oerdnj
la source
Il y a un php-ppapaquet dans l'ancien ppa:ondrej/php5et ppa:ondrej/php5-5.6, donc vous pouvez déjà l'essayer.
oerdnj
Je ne vois pas le risque de sécurité d'ajouter un ppa (soit ils vous font confiance et tout va bien, soit ils ne le font pas et ils ne devraient pas utiliser vos packages pour commencer)?
janvier
@JanC Merci pour les commentaires. Cela me rendrait encore mal à l'aise si les packages ajoutaient des PPA supplémentaires sans demander d'abord, mais j'ai déjà implémenté une question debconf pour cela, donc je pense que ça devrait aller.
oerdnj
Oui, bien sûr, avertir vos utilisateurs à l'avance et / ou quand cela se produit, ainsi que le documenter dans un fichier CHANGES ou autre, est une bonne idée.
JanC
BTW: à un moment donné, vous voudrez peut-être également effectuer des reconstructions régulières sans changement avec des numéros de version incrémentiels dans les anciens PPA, afin que ceux qui ignorent le changement de PPA reçoivent des rappels réguliers de debconf… :)
janvier
2

Option 2 - Faites un plan de dépréciation et informez les utilisateurs de manière bien visible

  • Avantages:
    1. Un seul référentiel à gérer
    2. Pas de transition automatique
    3. Les utilisateurs peuvent préparer leur plan de transition
  • Les inconvénients:
    1. Certains utilisateurs manqueront l'annonce, peu importe vos efforts
    2. Il y aura des gens qui diront: "S'il te plait, ne fais pas ça"
    3. Pas de transition automatique
oerdnj
la source
1

Option 1 - Ne rien faire

  • Avantages:
    1. Les utilisateurs sont satisfaits
  • Les inconvénients:
    1. Chaque package source en double doit avoir deux versions du script de construction
    2. Mainteneur PPA surchargé et mécontent
oerdnj
la source
1

Option 4 - Transition entièrement automatisée

C'est comme l'option 3, mais ajoute des paquets factices qui remplaceront l'ancien php5*et tireront le nouveauphp5.6*

  • Avantages (inclut les avantages de l'option 3):
    1. Si tout fonctionne comme prévu, ce pourrait être la meilleure option, car les utilisateurs auront les nouveaux packages sans aucun travail à leurs côtés
  • Inconvénients (comprend les inconvénients de l'option 3):
    1. Le commutateur supprimera les modifications apportées aux anciens fichiers de configuration ou la transition nécessitera des scripts de maintenance complexes pour mélanger l'ancienne configuration aux nouveaux emplacements
    2. Le paquet factice devra transporter au moins une configuration pour l'installation de la socket FPM et d'anciens noms pour ne pas casser la compatibilité avec les anciennes configurations (utilisez update-alternatives pour configurer /usr/bin/php5pour pointer vers /usr/bin/php5.6)
oerdnj
la source