| All roles listed in meta of common | |||
| time ansible-playbook -f6 -i hosts-nixtest -t dns playbook-common.yml | |||
| Version | User | System | Total |
| 1.9.2 | 5.35 | 1.3 | 5.152 |
| 2.0.2 | 13.76 | 2.96 | 12.093 |
| 2.1.0 | 13.46 | 2.87 | 12.472 |
| All roles listed in meta of common | |||
| time ansible-playbook -f6 -i hosts-nixtest -t dns playbook-common.yml | |||
| Patched with https://github.com/ansible/ansible/issues/14112 | |||
| Version | User | System | Total |
| 1.9.2 | 5.95 | 1.3 | 6.287 |
| 2.0.2 | 12.76 | 2.68 | 10.869 |
| 2.1.0 | 13.29 | 2.87 | 11.872 |
| 2.1.0 (Patched) | 9.1 | 2.51 | 10.71 |
| Moved dependencies listed in meta of common role to the playbook | |||
| time ansible-playbook -f6 -i hosts-nixtest -t dns playbook-common.yml | |||
| Version | User | System | Total |
| 1.9.2 | 5.94 | 1.36 | 6.703 |
| 2.0.2 | 5.36 | 2.09 | 8.654 |
| 2.1.0 | 5.83 | 2.34 | 8.774 |
| Just the single DNS role in playbook | |||
| time ansible-playbook -f6 -i hosts-nixtest -t dns playbook-common.yml | |||
| Version | User | System | Total |
| 1.9.2 | 5.58 | 1.37 | 5.956 |
| 2.0.2 | 4.39 | 2.69 | 16.978 |
| 2.1.0 | 2.89 | 2.03 | 5.341 |
| All roles listed in meta of common, Using Free Strategy |
| time ansible-playbook -f6 -i hosts-nixtest -t dns playbook-common.yml | |||
| Version | User | System | Total |
| 1.9.2 | - | - | - |
| 2.0.2 | 13.27 | 2.7 | 9.731 |
| 2.1.0 | 14.18 | 2.75 | 9.846 |
I suspect that some of the issues are due to added functionality... Some things like the addition of the strategies probably added extra requirements. There is another post where someone else moving from 1.9 to 2.0 now gets an error about circular dependencies so I think that they have probably also increased the dependency checking.
I am not sure I agree with the way that you are using dependencies myself... In my opinion a dependency would be something like some of our servers need perl on them, all of our web servers also need perl on them. Installing perl would be a role, and the web server role which requires perl in order to work would have a dependency.
In my site.yml I group servers by OS, and then call different roles for Debian based, RedHat6 and Redhat7. the Redhat6 and Redhat7 roles both depend on a Redhat Common role. Finally All Linux calls a LinuxCommon role.
I could call a linux common role instead and have that depend conditionally on Debian, Redhat6 and Redhat7 roles with the last two being dependent on Redhat Common. I might change to just that, particularly as I need to add AIX support.
Once the OS is configured using those base roles, individual roles are used to configure application specific things. But they do not have dependencies on the base OS roles.