Projet

Général

Profil

Tâche #30452

Scénario #30421: La restauration doit être fonctionnelle en 2.8.0

Étude du problème

Ajouté par Benjamin Bohard il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
20/07/2020
Echéance:
% réalisé:

100%

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

Historique

#1 Mis à jour par Benjamin Bohard il y a plus de 3 ans

Les plugins de restauration sont chargés puis recherchés dans le dictionnaire sys.modules.
Un changement récent avait été effectué pour changer la clé de recherche. La nouvelle clé ne correspond toutefois plus à ce qui est dans le dictionnaire.
Le script de restauration ne déclenche plus d’erreur si l’ancienne clé est utilisée.
Voir les implications de ce retour en arrière.

diff --git a/scripts/bareosrestore.py b/scripts/bareosrestore.py
index 111a801..a1db388 100644
--- a/scripts/bareosrestore.py
+++ b/scripts/bareosrestore.py
@@ -52,7 +52,7 @@ def add_options(option_names):
     descr.append(option)
     list_bareos = list_bareos_restore()
     for name in option_names:
-        func = sys.modules[name]
+        func = sys.modules['restore.' + name]
         jobid = list_bareos.index(name)+1
         option = Option(name, func.__doc__, jobid)
         setattr(option, 'callback', func.execute)
@@ -68,7 +68,7 @@ def opt_all(option, opt_str, value, parser, fake_jobid):
     list_bareos = list_bareos_restore()
     #gestion des priorites lors de l'appel du module
     for plug in plug_options:
-        func = sys.modules[plug]
+        func = sys.modules['restore.' + plug]
         jobid = list_bareos.index(plug)+1
         if not dir(func).__contains__('priority'):
             print("need priority for {0}".format(str(func)))

#2 Mis à jour par Benjamin Bohard il y a plus de 3 ans

  • Statut changé de Nouveau à En cours

#3 Mis à jour par Benjamin Bohard il y a plus de 3 ans

Également nécessaire :

@@ -76,7 +76,7 @@ def opt_all(option, opt_str, value, parser, fake_jobid):
         if func.priority != 0:
             plug_options_ordered.append((func.priority, func.execute, jobid))

-    plug_options_ordered = sorted(plug_options_ordered)
+    plug_options_ordered = sorted(plug_options_ordered, key=lambda option: option[0])
     for plug in plug_options_ordered:
         plug[1](option, opt_str, value, parser, plug[2], False)
         print()

#4 Mis à jour par Benjamin Bohard il y a plus de 3 ans

Les quotas ainsi que l’entrée ldap ne semblent pas correctement restaurés. Les changements n’avaient pas été effectués

python -c "from fichier.quota import get_quota;print get_quota('admin')" 
0

ldapsearch -x uid=admin loginShell | grep ^loginShell
loginShell: /bin/false

#5 Mis à jour par Benjamin Bohard il y a plus de 3 ans

  • Statut changé de En cours à Résolu

#6 Mis à jour par Fabrice Barconnière il y a plus de 3 ans

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

#7 Mis à jour par Joël Cuissinat il y a plus de 3 ans

  • % réalisé changé de 0 à 100
  • Temps estimé mis à 0.00 h

Formats disponibles : Atom PDF