Listen : un déclencheur, plusieurs gestionnaires
Diffusez une notification unique.
Listen : un déclencheur, plusieurs gestionnaires est une leçon DevOps Bootcamp gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage DevOps Bootcamp, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours DevOps Bootcamp comprend 4 leçons au total.
Un événement, plusieurs réactions
Parfois, une seule modification doit déclencher plusieurs gestionnaires à la fois. Le mot-clé listen permet à plusieurs gestionnaires de s’abonner à un même thème.
Notifier un thème plutôt qu’un nom
Avec listen, le notify d’une tâche désigne le nom d’un événement logique plutôt que le titre d’un gestionnaire précis.
- name: Update certs
ansible.builtin.copy:
src: site.pem
dest: /etc/ssl/site.pem
notify: restart web stackLes gestionnaires s’abonnent avec listen
Chaque gestionnaire ajoute une ligne listen qui nomme le même thème. Tous les gestionnaires qui écoutent ce thème se déclenchent lorsqu’il est notifié.
handlers:
- name: Restart nginx
ansible.builtin.service:
name: nginx
state: restarted
listen: restart web stackPlusieurs gestionnaires, un seul thème
Donnez à plusieurs gestionnaires la même valeur listen et une seule notification sera diffusée à tous. C’est idéal pour les redémarrages groupés.
- name: Restart php-fpm
ansible.builtin.service:
name: php-fpm
state: restarted
listen: restart web stackDécouplez les tâches des gestionnaires
Le principal avantage est le découplage : les tâches référencent un thème, et vous pouvez ajouter ou supprimer des gestionnaires sans modifier les tâches qui les notifient.
Le nom reste facultatif, mais utile
Un gestionnaire utilisant listen peut toujours avoir un nom, ce qui garde la sortie lisible et permet aussi à d’autres tâches de le notifier directement.
Un gestionnaire peut en écouter plusieurs
Donnez une liste à listen et un gestionnaire répondra à plusieurs thèmes différents. Il réagit à l’événement qui est notifié.
listen:
- restart web stack
- reload tlsToujours idempotent
Les notifications fondées sur des thèmes suivent les mêmes règles : les gestionnaires ne se déclenchent qu’avec changed, et chacun s’exécute toujours au plus une fois par play.
L’ordre reste celui de la définition
Lorsqu’un thème réveille plusieurs gestionnaires, ceux-ci s’exécutent dans l’ordre où ils sont définis dans la liste des gestionnaires, comme les gestionnaires ordinaires.
Courant dans les rôles partagés
Les rôles réutilisables utilisent listen afin que les utilisateurs notifient un thème stable, tandis que le rôle peut modifier librement son ensemble interne de gestionnaires.
Notify et listen
notify est le signal envoyé par une tâche ; listen est l’abonnement d’un gestionnaire. Ensemble, ils transforment un événement en plusieurs actions. 🔔
Vérification rapide
Vous souhaitez qu’une seule notification redémarre trois services à la fois. Qu’est-ce qui permet à plusieurs gestionnaires de réagir à un même sujet ?
Récapitulatif
Avec listen, une tâche notifie un sujet et chaque gestionnaire abonné se déclenche. Cela découple les tâches des gestionnaires et permet une mise à l’échelle propre. 🎯
Questions Fréquemment Posées
La leçon « Listen : un déclencheur, plusieurs gestionnaires » est-elle gratuite ?
Oui — le texte complet de « Listen : un déclencheur, plusieurs gestionnaires » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours DevOps Bootcamp, passe à CoddyKit PRO. Le cours DevOps Bootcamp comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Listen : un déclencheur, plusieurs gestionnaires » ?
Diffusez une notification unique. Tu pratiques DevOps Bootcamp avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer DevOps Bootcamp ?
Aucune expérience préalable n'est requise. DevOps Bootcamp sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.
Combien de temps prend la leçon « Listen : un déclencheur, plusieurs gestionnaires » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon DevOps Bootcamp ?
Oui. Chaque leçon DevOps Bootcamp inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Notifier un gestionnaire en cas de modification
- Définir des gestionnaires et des schémas de redémarrage
- Quand les gestionnaires s’exécutent et flush_handlers
- Listen : un déclencheur, plusieurs gestionnaires