I have a scenario where I have two top level roles in a playbook:
{role: roleA, tag: roleA}
{role: roleB, tag: roleB}
Role A and Role both depend on Role C in their meta/main.yml
meta/main.yml for Role A
dependencies:
- role: common
meta/main.yml for Role B
dependencies:
- role: roleA
- role: common
However, if I provision with the --tag roleB then it runs Role A if I include it in the meta/main.yml of Role B, but inside of common there is an include file task and Role A is always skipped. As a note it actually runs the common role, but the task that includes a file is skipped. If I re-order roleA to be below roleB in the playbook then it does include it just fine. I think it has something to do with tags and order, but still debugging. I have seen some stuff about the order in previous version of Ansible and they solved, but not sure if they solved the issue of includes in that scenario, so this might be a bug, but before I filed that I was wondering if anyone else has some thoughts. Thanks!