Projet

Général

Profil

Tâche #21943

Scénario #21866: Traitement express MEN (46-48)

ARV - Error: unable to get variable from Zéphir

Ajouté par Olivier FEBWIN il y a presque 9 ans. Mis à jour il y a presque 9 ans.

Statut:
Fermé
Priorité:
Normal
Début:
07/11/2017
Echéance:
% réalisé:

100%

Temps estimé:
6.00 h
Restant à faire (heures):
0.0

Description

Je souhaite ajouter un nouveau modèle de tunnel via l'ARV de notre Sphynx 2.5.2
Lors que je sélectionne un module dans "Module Zéphir", j’obtiens l'erreur " Error: unable to get variable from Zéphir".
Je reproduis cette erreur sur mes 3 Sphynx 2.5.2 ; le problème vient donc certainement de notre Zéphir 2.5.2

amon252 (19,5 ko) Fabrice Barconnière, 14/11/2017 14:26

amon262 (23,5 ko) Fabrice Barconnière, 14/11/2017 14:26

Révisions associées

Révision 11105842 (diff)
Ajouté par Fabrice Barconnière il y a presque 9 ans

Zéphir renvoyait None dans le libellé d'une variable creole 2.5.2 si celui-ci n'existait pas

ref #21943

Historique

#1 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Tracker changé de Demande à Tâche
  • Tâche parente mis à #21866

#2 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Projet changé de Zéphir à Distribution EOLE
  • Statut changé de Nouveau à En cours

#3 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Description mis à jour (diff)
  • Assigné à mis à Fabrice Barconnière
  • Temps estimé mis à 6.00 h
  • Restant à faire (heures) mis à 6.0

#4 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Fichier amon252 ajouté
  • Fichier amon262 ajouté
  • % réalisé changé de 0 à 50
  • Reproduit avec un Sphynx 2.5.2 et Zéphir 2.5.2, 2.6.0, 2.6.1, 2.6.2
  • Pas reproduit avec Sphynx 2.6 et Zéphir 2.6
Pour reproduire, enregistrer un Sphynx 2.5.2 sur un Zéphir 2.6.2 (sachant qu'il faudra corriger sur Zéphir 2.5.2)
  • lancer ce code python sur Sphynx :
    from arv.lib.usezephir import Zephir
    
    zephir = Zephir("arv", "eole")
    
    modules = zephir.zephir.modules.get_module()
    amon262_id = [module['id'] for module in modules[1] if module['libelle'] == 'amon-2.6.2'][0]
    amon252_id = [module['id'] for module in modules[1] if module['libelle'] == 'amon-2.5.2'][0]
    
    variables_amon262 = zephir.get_variables(amon262_id)
    variables_amon252 = zephir.get_variables(amon252_id)
    
Sur Zéphir, dans /usr/lib/python2.7/dist-packages/zephir/backend/xmlrpceole.py :
  • ajouter self.allowNone = True dans la méthode __init__ de la classe XMLRPCEole permet de résoudre le problème.
Malgré cela, les dictionnaires renvoyés sont différents :

En 2.6.2, pour les variables n'ayant pas de libellé, on retrouve le nom de la variable dans le champ correspondant au libellé, donc on ne peut pas avoir None.
En 2.5.2, pour les variables n'ayant pas de libellé, on retrouve None dans le champ correspondant.

Cela fait penser à un changement de comportement de Creole/Tiramisu car rien n'a été touché de ce côté dans Zéphir et Sphynx.

#5 Mis à jour par Fabrice Barconnière il y a presque 9 ans

allow_None = True n'est pas une bonne idée car cela change "en profondeur" le comportement de Zéphir.
Il faut intégrer le fait que Tiramisu renvoie None si pas de libellé de variable dans Zéphir.

#6 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Statut changé de En cours à Résolu
  • % réalisé changé de 50 à 100
  • Restant à faire (heures) changé de 6.0 à 0.5

corrigé sur Zéphir 2.5.2, 2.6.0, 2.6.1 (et 2.6.2).
Journaux alimentés.

#7 Mis à jour par Fabrice Barconnière il y a presque 9 ans

Bonjour Olivier,

peux-tu me confirmer que le problème est réglé en mettant à jour le serveur Zéphir en candidate :
  • Passer sur le dépôt candidat : Query-Auto -C
    Mise à jour le vendredi 17 novembre 2017 08:11:54
    *** zephir 2.5.2 (0000000A) ***
    
    Maj-Auto - (VERSION CANDIDATE) - Augmenter le niveau de mise à jour peut empêcher de revenir au niveau de mise à jour stable.
    Voulez-vous continuer ? [oui/non]
    [non] : o
    Configuration du dépôt Ubuntu avec la source test-eole.ac-dijon.fr
    Configuration du dépôt EOLE avec la source eole.ac-dijon.fr
    Action update pour root                                                                                           
    Action list-upgrade pour root
    0 nouveau, 8 mis à jour, 0 à enlever
    Paquets à mettre à jour : 
        eole-sso (2.5.2-27) (root)
        eole-sso-server (2.5.2-27) (root)
        python-eolesso (2.5.2-27) (root)
        zephir-backend (2.5.2-39) (root)
        zephir-common (2.5.2-39) (root)
        zephir-dictionnaires (2.5.2-39) (root)
        zephir-parc (2.5.2-39) (root)
        zephir-web (2.5.2-39) (root)
    
Le correctif se trouve dans les paquets zephir :
  • apt-eole install zephir-backend zephir-common zephir-dictionnaires zephir-parc zephir-web
  • Repasser sur le dépôt stable : Query-Auto
  • reconfigure

#8 Mis à jour par Olivier FEBWIN il y a presque 9 ans

Bonjour Fabrice,

Je te confirme que le problème est bien réglé après avoir passé ces mises à jour en candidate.

Merci beaucoup.

#9 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Restant à faire (heures) changé de 0.5 à 0.0

Merci pour le retour.

#10 Mis à jour par Fabrice Barconnière il y a presque 9 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF