Skip Navigation

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 listens 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.

0