[trigger] On tente un truc plus simple

This commit is contained in:
Pierre-Elliott Bécue 2014-06-12 19:26:50 +02:00
parent 9346d174e2
commit 50d067aee8
7 changed files with 44 additions and 29 deletions

View file

@ -14,10 +14,7 @@ Trigger est le fruit d'une longue et intelligente (quelle modestie) réflexion,
Ajouter un nouveau service
==========================
Si c'est un service partagé par plusieurs hôtes, il vaut mieux créer tout ce qu'il faut dans trigger/nomduservice.py, écrire tout ce dont on a besoin, décorer la méthode (dont le nom est celui du service, donc si ça parle de dhcp, appeler la fonction dhcp, et mettre dhcp dans config/trigger.py) par un @record (penser à importer record depuis trigger/host.py). Une fois le service au point, importer les méthodes "recordées", et la méthode trigger depuis trigger/host.py.
Si c'est un service simple utilisé que par un seul hôte, vous pouvez le mettre directement dans la description de l'hôte dans hosts/nomdelhôte.py. La nomenclature des noms de fonctions et de @record ne change pas.
Créer tout ce qu'il faut dans trigger/services/nomduservice.py, écrire tout ce dont on a besoin, décorer la méthode (dont le nom est celui du service, donc si ça parle de dhcp, appeler la fonction dhcp, et mettre dhcp dans config/trigger.py) par un @record (penser à importer record depuis trigger/host.py). Une fois le service au point, si vous avez mis à jour config/trigger.py, c'est bon.
Pour chaque service, une "file d'attente" rabbitmq est créée ayant le nom trigger-nomdel'hôte-nomduservice, et une clef de routage du type trigger.nomduservice est mise en place pour que les messages envoyés vers trigger.nomduservice soient dispatchés sur l'ensemble des queues trigger-*-nomduservice.