Say, i have written bunch of ansible roles and playbooks, configured my playbooks structure and now i’m trying to tie them to one playbook which will do its thing depending on tags or inventory file provided. Should i strive for that? Or is it better to have bunch of playbooks and call them depending on the tasks/hosts needed? What is the best way to go about this? I can’t seem to find any example of tying it all together in one playbook or bunch of them which will do its thing to ones infrastructure depending on arguments provided.
Best practice in ansible docs covers organization of playbook structure but not organization of playbook use on infrastructure. Is there any examples of organizing playbooks use on infrastructure?
What I have done before goes on the same direction as Zeitounator commented; you can have one or more "meta" or master playbooks that import the ones you need to run your entire automation. To add to Zaito's comment; you can use the
when clause on
include to control the execution of those "inner" playbooks; something like this:
Say you want to execute PlatformB playbooks only for an stg or prod environment using a defined
env ansible variable:
- include: platformA/do_something_on_platformA.yml - include: platformB/do_something_on_platformB.yml when: env == 'stg' or env == 'prod'
you could change the value of
--extra-vars on execution time or something.
hope it helps, cheers.
Answered by Pablo Arango on August 22, 2021
3 Asked on December 30, 2021
1 Asked on December 23, 2021
3 Asked on December 13, 2021 by shri
1 Asked on December 11, 2021
1 Asked on December 9, 2021
3 Asked on December 9, 2021
1 Asked on December 2, 2021 by max-colledge
1 Asked on December 2, 2021 by nulltron
1 Asked on November 22, 2021 by sachith-muhandiram
4 Asked on November 18, 2021 by dr-chocolate
1 Asked on November 12, 2021 by aivanf
2 Asked on November 7, 2021
1 Asked on November 7, 2021 by astroanu
3 Asked on August 22, 2021 by codeforester
Get help from others!