[trigger/trigger.py] Un peu de commentaires pour les deux trucs tricky.
This commit is contained in:
parent
b7e3d10b62
commit
30e31a078c
1 changed files with 8 additions and 0 deletions
|
@ -22,6 +22,11 @@ from gestion.trigger.host import trigger
|
|||
|
||||
hostname = socket.gethostname().split(".")[0]
|
||||
|
||||
# Ce bloc contient le peu de "magie" de la librairie, on utilise les services listés dans config/trigger.py
|
||||
# comme référence. Pour éviter toute redondance, la commande importe donc les services utiles suivant cette
|
||||
# config. Leur import ne sert pas directemet, il permet juste de peupler la TriggerFactory contenue dans
|
||||
# gestion/trigger/host.py.
|
||||
# Il faut donc bien importer ces fichiers, mais ils ne sont pas utilisés directement ensuite.
|
||||
import importlib
|
||||
services = {}
|
||||
for config_service in trigger_config.services[hostname]:
|
||||
|
@ -54,6 +59,8 @@ class EvenementListener(cmb.AsynchronousConsumer):
|
|||
logger.info('Received message # %s from %s: %s',
|
||||
basic_deliver.delivery_tag, properties.app_id, body)
|
||||
body = cPickle.loads(body)
|
||||
# On tente d'invoquer le trigger attendu, à l'aide de la méthode trigger
|
||||
# about contient le nom de la fonction à appeler, body lui est filé en argument.
|
||||
try:
|
||||
trigger(about)(body)
|
||||
except AttributeError:
|
||||
|
@ -90,6 +97,7 @@ if __name__ == '__main__':
|
|||
parser.add_argument('-d', '--daemon', help="Écouter sur civet en arrière plan.", action="store_true")
|
||||
parser.add_argument('-h', '--help', help="Affiche ce message et quitte.", action="store_true")
|
||||
# For each service supposingly managed by host, generate one parser option
|
||||
# Deuxième petit morceau "magique" du code.
|
||||
for arg_service in trigger_config.services[hostname]:
|
||||
parser.add_argument('--%s' % (arg_service,), help="Force la régénération du service %s." % (arg_service,), action="store_true")
|
||||
args = parser.parse_args()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue