Projet

Général

Profil

Tâche #35406

Scénario #35408: Les modules Zéphir 2.7+ devraient ignorer les erreurs liées aux fichiers divers provenant de clients en version ≤ 2.6.2

Erreur de sauvegarde de la configuration sur le Zephir

Ajouté par Tom Ricci il y a 10 mois. Mis à jour il y a 10 mois.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
25/05/2023
Echéance:
% réalisé:

100%

Restant à faire (heures):
0.0

Description

Bonjour,

Suite à la mise à jour du serveur Zephir en 2.7.2, la sauvegarde de la configuration sur le Zephir ne se fait plus correctement et apparait « en rouge » :

Dans /var/log/rsyslog/local/zephir_backend/zephir_backend.info.log :

2023-05-25T08:06:04.626542+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error] Traceback (most recent call last):
2023-05-25T08:06:04.626725+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error]   File "/usr/lib/python2.7/dist-packages/zephir/backend/uucp_rpc.py", line 828, in xmlrpc_save_files
2023-05-25T08:06:04.626769+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error]     serv.check_md5conf()
2023-05-25T08:06:04.626877+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error]   File "/usr/lib/python2.7/dist-packages/zephir/backend/lib_backend.py", line 983, in check_md5conf
2023-05-25T08:06:04.626921+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error]     fics.append(os.path.join(dst,fic))
2023-05-25T08:06:04.627019+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [stderr#error] AttributeError: 'dict' object has no attribute 'append'
2023-05-25T08:06:04.627191+02:00 zephir.ac-versailles.fr zephir_backend[924]: 2023-05-25T08:06:04+0200 [_GenericHTTPChannelProtocol (TLSMemoryBIOProtocol),45368,185.187.165.142] 'serveur 4981 : erreur de mise \xc3\xa0 jour des donn\xc3\xa9es md5 (sauvegarde des fichiers)'

fichiers_modifiés.png Voir (97 ko) Tom Ricci, 25/05/2023 13:15

Révisions associées

Révision 3fd8627d (diff)
Ajouté par Laurent Gourvenec il y a 10 mois

Fix problème de sauvegarde de la configuration sur zéphir

Ref #35406

Historique

#1 Mis à jour par Tom Ricci il y a 10 mois

D'avance merci de déplacer cette Demande dans le tracker zephir-parc vu que le code concerné.

Le bug provient du changement de type de la variable fics de list à dict tout en gardant un append. Lié à #35350 (https://dev-eole.ac-dijon.fr/projects/zephir-parc/repository/diff/python/zephir/backend/lib_backend.py?utf8=%E2%9C%93&rev=35dab1e87cd26e48e09b0ac54a5014135beeffe4&rev_to=f76cae48ca7f532e44495bc84d898321cfaf8ba6)

Ligne problématique : https://dev-eole.ac-dijon.fr/projects/zephir-parc/repository/entry/python/zephir/backend/lib_backend.py?utf8=%E2%9C%93&rev=dist%2Feole%2F2.7.2%2Fmaster#L983

La correction doit probablement être du type

fics[os.path.join(dst,fic)] = os.path.join(dst,fic)

#2 Mis à jour par Laurent Gourvenec il y a 10 mois

En 2.9 le problème a bien été réparé par

fics[os.path.join(dst,fic)] = src

Je vérifie que les lignes du style
modifs.append("contenu modifié : %s" % fic)

ne poseront pas de soucis non plus.

#3 Mis à jour par Tom Ricci il y a 10 mois

Bonjour Laurent,

En faisant la modif par fics[os.path.join(dst,fic)] = src ligne 983, en compilant le .py et en redémarrant le service, ça règle en effet ce problème de sauvegarde de conf, merci !

#4 Mis à jour par Laurent Gourvenec il y a 10 mois

Et je n'ai pas vu d'autre soucis dans ce fichier.

Tom : est-ce que la résolution de ce problème a aussi résolu le soucis https://dev-eole.ac-dijon.fr/issues/35309#note-5 ?

#5 Mis à jour par Tom Ricci il y a 10 mois

Non, mais selon Joël sur Tchap, ces messages « fichier ... non trouvé ! » étaient déjà présents précédemment dans /var/log/zephir/actions.log et ne sont pas problématiques.

Par contre, j'ai maintenant un message « détection de X fichiers modifiés » concernant des fichiers « non envoyé » (je ne comprends pas trop dans quel sens d'ailleurs, est-ce qu'ils ne sont pas sur l'Amon ou sur le Zephir ?) :

Et sur les 2.7.2 (uniquement pour cette version des modules), il y a, en plus de ces fichiers « non envoyé », un « contenu modifié : zephir.eol », qui était déjà présent avant la mise à jour d'hier (c'est d'ailleurs en pensant régler ce problème que j'ai mis à jour), et ceux alors que la configuration a bien été remontée (ou descendu, en tout cas elle est identique, soit via /usr/share/zephir/scripts/zephir_client save_files, soit via Actions sur le serveur / Envoyer la conf , soit via enregistrement_zephir (dans un sens ou dans l'autre)).

#6 Mis à jour par Joël Cuissinat il y a 10 mois

  • Tâche parente mis à #35408

#7 Mis à jour par Laurent Gourvenec il y a 10 mois

  • Statut changé de Nouveau à À valider
  • Assigné à mis à Laurent Gourvenec
  • % réalisé changé de 0 à 100

#8 Mis à jour par Benjamin Bohard il y a 10 mois

  • Projet changé de zephir-client à Distribution EOLE
  • Statut changé de À valider à Résolu

#9 Mis à jour par Joël Cuissinat il y a 10 mois

zephir-parc$ git branch -r --contains 3fd8627d
  origin/2.7.0/master
  origin/2.7.1/master
  origin/2.7.2/master
  origin/2.8.0/master
  origin/2.8.1/master
  origin/HEAD -> origin/master
  origin/dist/eole/2.7.0/master
  origin/dist/eole/2.7.1/master
  origin/dist/eole/2.7.2/master
  origin/dist/eole/2.8.0/master
  origin/dist/eole/2.8.1/master
  origin/dist/eole/2.9.0/master
  origin/master

Modifications diffusées directement en stable : https://dev-eole.ac-dijon.fr/news/648

#10 Mis à jour par Joël Cuissinat il y a 10 mois

  • Statut changé de Résolu à Fermé
  • Restant à faire (heures) mis à 0.0

Formats disponibles : Atom PDF