1
2
3
4
5
6
7
8
9
10
11
12
13 """module de gestion des modules Eole
14 """
15 from zephir.backend.db_utils import *
16 from zephir.backend import config
17 from zephir.backend.config import u, log
18 from zephir.backend.xmlrpceole import XMLRPCEole as XMLRPC
19 from zephir.backend.lib_backend import ResourceAuthError
20
22 """serveur XMLRPC zephir pour la gestion des tâches
23 """
24
26 self.dbpool = db_connect()
27 self.dbpool.noisy = 0
28 self.parent = parent
29
30 XMLRPC.__init__(self)
31
33 """récupère le contenu d'une variante sur un autre zephir"""
34 tasks = self.parent.scheduler.get_tasks(id_res,type_res,all)
35 tasks = [str(t) for t in tasks]
36 return 1,u(tasks)
37
39 """ajoute une tâche unique"""
40 id_task = self.parent.scheduler.add_task(name, cmd, month, day, hour, min, 'null', 0)
41 return 1, id_task
42
44 """ajoute une tâche lancée à intervalle régulier"""
45 id_task = self.parent.scheduler.add_task(name, cmd, 'null', day, hour, min, 'null', 1)
46 return 1, id_task
47
49 """ajoute un tâche journalière"""
50 id_task = self.parent.scheduler.add_task(name, cmd, 'null', 'null', hour, min, 'null', 2)
51 return 1, id_task
52
54 """ajoute un tâche hebdomadaire"""
55 id_task = self.parent.scheduler.add_task(name, cmd, 'null', 'null', hour, min, week_day, 3)
56 return 1, id_task
57
59 """ajoute un tâche mensuelle"""
60 id_task = self.parent.scheduler.add_task(name, cmd, 'null', day, hour, min, 'null', 4)
61 return 1, id_task
62
64 """suppression d'une tâche"""
65 if self.parent.scheduler.del_task(id_task):
66 return 1, "OK"
67 else:
68 return 0, u("""Erreur lors de la suppression""")
69
71 """assignation d'une tâche à une ressource (groupe ou serveur)"""
72 return self.parent.scheduler.assign_task(cred_user, id_task, id_res, type_res)
73
75 """dé-assignation d'une tâche à une ressource (groupe ou serveur)"""
76 return self.parent.scheduler.unassign_task(cred_user, id_task, id_res, type_res)
77