Well, sort of, but unfortunately, no :)

While the default does control what variable gets loaded with "set_fact"
(this could have been done without the default) it is still going to get
loaded at a level that is not the same as defaults, so inventory can't
override what you have loaded there.

I'd find "include_vars" cleaner personally, if that's all you want

- include_vars: "{{ ansible_os_distribution }}.yml"

Which allows vars/RedHat.yml and vars/Debian.yml in the role.




On Wed, Apr 30, 2014 at 5:54 AM, "F.L. Jonathan Araña Cruz" <
[email protected]> wrote:

>  On 28/04/14 23:01, Matt Willsher wrote:
>
> Hi,
>
>  I'm trying to write generic roles for particular applications and keep
> hitting across the same problem:
>
>  I want to set role default based on the operating system or other facts,
> like include_vars, but this doesn't appear to be supported.
>
>  The only option I see practically available for template is to use the
> template logic to handle defaults, but that, while flexible, is not as
> elegant as being able to set by-fact defaults.
>
>  The code I'm working at present on is
> https://github.com/WillsherPartners/ansible-sshd , where there is a large
> set of defaults and a template.  sshd_subsystem_sftp varies depending on
> OS, but I still want to give the person using the role to option to
> override the value if they see fit.
>
>  Are there any plans for include_vars: (include_defaults?) functionality
> in Ansible, or is there some other way to tackle per-os defaults?
>
>
> I asked for this a few weeks back. Finally I managed to implement a
> pattern in my role to workaround this
>
> https://github.com/ansible/ansible/issues/6756
>
>
>
>
>  Thanks,
> Matt
>
>
>  --
> 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/afaeac27-07cf-4e10-8504-ade22c361540%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/afaeac27-07cf-4e10-8504-ade22c361540%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/5360C83C.9080907%40faita.net<https://groups.google.com/d/msgid/ansible-project/5360C83C.9080907%40faita.net?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%2BnsWgx89jBUyDOSgqg4GF_H9%2Bzeyr6DBvAcameRCXM4qCfg_w%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to