Project

General

Profile

Scénario #30223

Etude EAD2 / python3

Added by Gilles Grandgérard over 1 year ago. Updated over 1 year ago.

Status:
Terminé (Sprint)
Priority:
Normal
Assigned To:
Category:
-
Start date:
06/02/2020
Due date:
06/12/2020
% Done:

100%

Story points:
4.0
Remaining (hours):
0.00 hour
Velocity based estimate:
Release:
Release relationship:
Auto

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

Tâche #30225: Étudier le passage du frontend EAD en python3FerméEmmanuel GARETTE

Tâche #30245: Étudier le passage du backend et des actions de base EAD en python3FerméEmmanuel GARETTE

Tâche #30264: Étudier le passage des actions spécifique à Seshat en python3FerméEmmanuel GARETTE

Tâche #30265: Étudier le passage des actions spécifique à Amon en python3FerméEmmanuel GARETTE

Tâche #30266: Étudier le passage des actions spécifique à Scribe en python3FerméEmmanuel GARETTE


Related issues

Related to Distribution EOLE - Scénario #30270: Portage python3 de l'EAD2 Terminé (Sprint) 06/02/2020 08/28/2020

History

#1 Updated by Gilles Grandgérard over 1 year ago

  • Description updated (diff)

#2 Updated by Joël Cuissinat over 1 year ago

  • Story points changed from 3.0 to 4.0

#3 Updated by Joël Cuissinat over 1 year ago

  • Assigned To set to Emmanuel GARETTE
  • Release set to EOLE 2.8.0

#4 Updated by Emmanuel GARETTE over 1 year 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 1 year ago

#6 Updated by Joël Cuissinat over 1 year ago

  • Status changed from Nouveau to Terminé (Sprint)

Also available in: Atom PDF