having a site.yml that includes a webservers.yml and a dbservers.yml is in
fact a reasonable thing to do if you want a quick shorthand to just run a
part of your infrastructure through Ansible.




On Wed, Jun 25, 2014 at 1:02 PM, Dmitry Makovey <[email protected]>
wrote:

> Hi,
>
> I've got my playbook large enough now that whenever I want to execute only
> bits of it I either have to code-in lots of conditionals and "special"
> variables or do some other trickery. I've got things split out into roles,
> so that my main file site.yml looks like:
>
> - hosts: all
>   roles:
>   - role: commonAll
>   - role: collect_facts
>
> - hosts: groupA
>   roles:
>   - role: common1
>   - role: roleA
>
> - hosts: groupB
>   roles:
>   - role: common2
>   - role: roleB
>
> ....
>
> now I would like to break this into bunch of smaller files and be able to
> execute them per-role/per-group. Thing is sometimes I have the same host in
> multiple groups (and subsequently in several roles) and executing with just
> "--limit" hooks into groups/roles I don't want to. So I created bunch of
> files like:
>
> ...common.yml...
> - hosts: all
>   roles:
>   - role: commonAll
>   - role: collect_facts
> ...
> ...fileA.yml...
>
> - hosts: groupA
>   roles:
>   - role: common1
>   - role: roleA
> ...
> ...fileB.yml...
> - hosts: groupB
>   roles:
>   - role: commonB
>   - role: roleB
> ...
>
> ...groupB.yml...
> - include common.yml
> - include fileB.yml
> ...
>
> and master site.yml to look like:
> - include common.yml
> - include fileA.yml
> - include fileB.yml
> ...
>
> so that I can either launch site.yml or any of the groups separately:
> groupX.yml . Now from all of the above, I get ridiculous number of files at
> the top level. Trying to move fileX.yml into subdirectory services results
> in ansible inability to locate roles definitions.
>
> Now the actual question: what are the best practices in cases like the one
> I've described? One thing I can think of is to restructure everything
> introducing one more directory layer, so instead of book/roles/foo I'll get
> top/book/roles/foo and move all of the fileX.yml under top/ and have groupX
> and site.yml files at the very top level. Is that how others are addressing
> such problems?
>
> --
> 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/fd5dab1a-0745-4a17-a109-96f49276a0a3%40googlegroups.com
> <https://groups.google.com/d/msgid/ansible-project/fd5dab1a-0745-4a17-a109-96f49276a0a3%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
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/CA%2BnsWgwMLP_aS2KCOL%2BOru%3DHBurXXpvv3MCxPTbM7odbk_caOg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to