Scénario #30223
Etude EAD2 / python3
100%
Description
L'objectif est d'étudier les conséquences d'un migration EAD2 vers python3
L'étude à mettre en œuvre¶
- le frontend
- le backend
- l'inter dépendance avec les autres backends (amon, scribe, seshat,....)
- Les lib python utilisées en py27 non disponible en py3
Critères d'acceptation¶
- Le livrable devrait être la liste des taches à réaliser.
Subtasks
Related issues
History
#1 Updated by Gilles Grandgérard over 3 years ago
- Description updated (diff)
#2 Updated by Joël Cuissinat over 3 years ago
- Story points changed from 3.0 to 4.0
#3 Updated by Joël Cuissinat over 3 years ago
- Assigned To set to Emmanuel GARETTE
- Release set to EOLE 2.8.0
#4 Updated by Emmanuel GARETTE over 3 years ago
1/ conteneur ===================================
Avantage : peu de modification de l'application
Risque :
- conteneurs (18.04)
- temps portage dans conteneur
- problèmes avec les systèmes virtualisés
- risque plus important sur les upgrades
- ne peut pas être déployé à partir du CD
- phase d'installation => d'instanciation beaucoup plus long
- place plus important sur le disque
- que faire à la fin du support de la 18.04
- portage en python3 + suppression du conteneur ?
- support des paquets installés (sécurité) ?
- changements :
- configuration pour enregistrement backend|frontend
- backend : forte dépendance système | développement d'un backend de backend (salt?) : risque important :
- lshw
- règle iptables
- lecture table ipset
- redémarrage de services
2/ python2 de 18.04 installé sur 20.04 ===================================
Avantage :
- on n'a VRAIMENT pas a modifier l'application
- boulot déjà fait
Risques :
- mettre à jour régulièrement
- comme conteneur : pb de fin de support 18.04
- mise à jour 20.04 => incompatible paquets 18.04 | risque peu probable | coût important :
- changement d'ABI glibc
- changement version openssl
- impossibilité de supprimer python2 (pour scripts utilisateurs)
- API doit rester compatible
- être testé en version python2 et python3
- complexité du code accrût
3/ portage python3 ===================================
Avantages :
- compatible paquets 20.04 sans conteneur
- portage facile 22.04
- frontend + ancien => backend: pas de problème de compatibilité
Risques :
- backend + ancien => frontend : template doit être compatible python3 :
- fournit par le backend (donc 2.6.0)
- pb "has_key"
- conversion en live ?
- python-axiom : concerne le backend
- scribe-backend :
- base temporaire
- ORM standard | base de code limité => on peut changer ORM
- seshat-backend : 1 table|2 colonnes|pas de contrainte => on peut changer
- port non officiel proposé mais non testé
- remplacant : on a déjà SQLAlchemy
- python-nevow : concerne le frontend
- projet à l'arrêt
- impossible a remplacer
- fork en python3 existe | fonctionnel
- risques minime
- eole-amon-backend3 : partiellement porté
- eole-python3-fichier : partiellement porté
- eole-scribe-backend3 : partiellement porté
- eole-seshat-backend : non porté | périmètre limité
- tests poussés
- bug de régression
#5 Updated by Joël Cuissinat over 3 years ago
- Related to Scénario #30270: Portage python3 de l'EAD2 added
#6 Updated by Joël Cuissinat over 3 years ago
- Status changed from Nouveau to Terminé (Sprint)