Search
Including/Importing an Ansible role w/ handlers more than once
cross-posted from: https://lemmy.ml/post/4593804
> Originally discussed on Matrix.
>
> ---
>
> TLDR; Ansible handlers are added to the global namespace.
>
> ---
>
> Suppose you've got a role which defines a handler MyHandler
:
>
> > - name: MyHandler > ... > listen: "some-topic" >
>
> Each time you import
/include
your role, a new reference to MyHandler
is added to the global namespace.
>
> As a result, when you notify
your handler via the topics it listen
s to (ie notify: "some-topic"
), all the references to MyHandler
will be executed by Ansible.
>
> If that's not what you want, you should notify
the handler by name (ie notify: MyHandler
) in which case Ansible will stop searching for other references as soon as it finds the first occurrence of MyHandler
. That means MyHandler
will be executed only once.