Tâche #23842
Scénario #23861: Finaliser la correction des scripts eole-schedule
manage_schedule ne permet pas d’activer certaines tâches
Description
Il y a une incohérence dans la gestion de l’option "mode" entre tiramisu et manage_schedule. Cette option ne doit plus pouvoir être surchargée à l’activation de la tâche.
Faire évoluer manage_schedule et pyeole.schedule en conséquence.
Associated revisions
Ne plus prendre en compte l’option mode
Ref #23842
Rendre plus explicite l’aide associée aux options de manage_schedule.
Ref #23842
Correction du message d’aide pour l’option obsolète mode.
Ref #23842
Adaptations pyeole liées à la suppression du "mode"
Ref: #23842
History
#1 Updated by Benjamin Bohard over 5 years ago
- Status changed from Nouveau to Résolu
- Assigned To set to Benjamin Bohard
- % Done changed from 0 to 100
- Estimated time set to 0.25 h
- Remaining (hours) set to 0.25
#2 Updated by Joël Cuissinat over 5 years ago
- Status changed from Résolu to En cours
#3 Updated by Joël Cuissinat over 5 years ago
La doc est également à mettre à jour : http://eole.ac-dijon.fr/documentations/2.6/partielles/beta/Eolebase/co/09a-gestionSchedule.html
Si on reprend les exemples de la doc sans l'option -m, on a une erreur :
root@scribe:~# manage_schedule -a once -s majauto 'NoneType' object has no attribute 'startswith'
On a obtient également une erreur dans l'EAD si on désactive puis ré-active la mise à jour hebdomadaire :
Le backend a renvoyé une erreur lors de l'exécution de la requête : Traceback: <class 'tiramisu.error.PropertiesOptionError'>: ne peut modifier la valeur de l'option "mode" cette option n'est pas modifiable
#4 Updated by Joël Cuissinat over 5 years ago
- Parent task changed from #23541 to #23742
- Remaining (hours) changed from 0.25 to 1.0
Visiblement, il manque des commit et un nouveau paquet python-pyeole
J'ai déjà poussé un début de correction pour 2.6.1 : #23854 à merger ?
Du coup on a commencé de déboguer avec Manu mais ce boulot a sans doute déjà été fait ???
diff --git a/pyeole/schedule.py b/pyeole/schedule.py
index 35f3f03..4503a68 100644
--- a/pyeole/schedule.py
+++ b/pyeole/schedule.py
@@ -40,15 +40,21 @@ def _list_schedules(schedules):
def add_schedule(day, mode, script):
orig = join(SCHEDULE_SCRIPT_DIR , script)
+ if not isfile(orig):
+ raise Exception('unable to find schedule script {0}'.format(orig))
+ if mode is None:
+ mode = client.get('schedule.{}.mode'.format(script))
dest = join(SCHEDULE_DIR, day, mode, script)
if isfile(dest):
raise Exception('{0} already exists'.format(dest))
- if not isfile(orig):
- raise Exception('unable to find schedule script {0}'.format(orig))
- else:
- symlink(orig, dest)
+ symlink(orig, dest)
def del_schedule(day, mode, script):
+ orig = join(SCHEDULE_SCRIPT_DIR , script)
+ if not isfile(orig):
+ raise Exception('unable to find schedule script {0}'.format(orig))
+ if mode is None:
+ mode = client.get('schedule.{}.mode'.format(script))
dest = join(SCHEDULE_DIR, day, mode)
old_filename = join(dest, script)
if not islink(old_filename):
#5 Updated by Joël Cuissinat over 5 years ago
- Parent task changed from #23742 to #23861
#6 Updated by Joël Cuissinat over 5 years ago
- Assigned To changed from Benjamin Bohard to Joël Cuissinat
#7 Updated by Joël Cuissinat over 5 years ago
- Remaining (hours) changed from 1.0 to 0.5
#8 Updated by Joël Cuissinat over 5 years ago
- Estimated time changed from 0.25 h to 3.00 h
#9 Updated by Scrum Master over 5 years ago
- Status changed from En cours to Résolu
#10 Updated by Fabrice Barconnière over 5 years ago
- Remaining (hours) changed from 0.5 to 0.0
Test sur etb1.amon 2.6.2, la ligne de commande et l'activation/désactivation dans l'EAD ne posent plus de problème.
#11 Updated by Fabrice Barconnière over 5 years ago
Doc OK :
À partir d'EOLE 2.6.1, l'option -m (ou --mode) est obsolète. Le mode (pre ou post) utilisé pour un script est forcément celui qui a été déclaré dans le dictionnaire extra. Les commandes actuelles sont toujours fonctionnelles mais sont susceptibles d'afficher des avertissements.
#12 Updated by Scrum Master over 5 years ago
- Status changed from Résolu to Fermé