I have a common role, which i always want executed, but only once. It is
also a dependency of a few other roles that may be executed on their own
(via dedicated playbooks).

The problem is: in a top-level playbook, e.g. site.yml, if the common role
is listed anywhere (in site.yml or an included playbook), and is also a
dependency of any other role, its tasks are executed twice.

What I'm thinking is to create a dummy role that depends on 'common', and
include the dummy role in the top-level playbook for all hosts. That way,
'common' is *always* a dependency, and is always executed exactly once.

Is there a better solution?

More generally, how can I avoid executing a role more than once, whether
it's listed explicitly or pulled in as a dependency?
If a role is a dependency of multiple other roles, it's executed once, but
if it's also listed explicitly, it is executed twice.

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAM19uTCnyStH4yH9hkLg58T2MqG5Vv9CWXR1FB11%3D5hBkvXcdQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to