these variables are facts -- they override inventory variables because they
are at the same depth and are loaded later






On Tue, Apr 29, 2014 at 10:05 AM, Matt Willsher <[email protected]> wrote:

>
> Testing on 1.5.5 they appear at the level of "most everything else" - a
> variable defined in a include_vars file overrides an inventory variable. If
> they were at the level of facts, that would be great and would all default
> like behaviour and overriding by more environment specific data.
>
>
> On 29 April 2014 13:32, Michael DeHaan <[email protected]> wrote:
>
>> include_vars creates fact scoped variables.
>>
>> Sorry, you're not going to be able to get it to work every which sort of
>> different way.
>>
>> I would not assume OS specific defaults *or* instead just put hosts in a
>> group based on the OS, if you really need that capability, and then could
>> use group_vars/ files to do this.
>>
>>
>>
>>
>> On Tue, Apr 29, 2014 at 3:05 AM, Matt Willsher <[email protected]> wrote:
>>
>>> I'd like the included vars injected with the same precedence as those in
>>> defaults/main.yml rather than the precedence of vars/main.yml. The
>>> documentation is not clear on the what precendence  include_vars get.
>>>
>>> From my testing, vars coming from include_vars have a higher precedence
>>> than inventory vars so they can not be overridden by inventory vars.
>>>
>>> Taking:
>>>
>>> 1. -e variables always win
>>> 2. then comes "most everything else"
>>> 3. then comes variables defined in inventory
>>> 4. then comes facts discovered about a system
>>> 5. then "role defaults", which are the most "defaulty" and lose in priority 
>>> to everything.
>>>
>>> I'd like the included vars to have the precedence of 5, rather than 2
>>>
>>>
>>> On 29 Apr 2014 00:55, "Michael DeHaan" <[email protected]> wrote:
>>>
>>> >
>>> > I'm a little confused by this because you seem to be saying a feature
>>> isn't supported that is actually part of Ansible, but it's actually a
>>> module already in Ansible:
>>> >
>>> > http://docs.ansible.com/include_vars_module.html
>>> >
>>> > It also works with the "when" operator for per-OS variant usage.
>>> >
>>> > Were you perhaps reading an old thread talking about a language
>>> feature when it didn't exist?
>>> >
>>> > Sorry for confusion...
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> >
>>> > On Mon, Apr 28, 2014 at 6:01 PM, Matt Willsher <[email protected]>
>>> 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?
>>> >>
>>> >>
>>> >> 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
>>> .
>>> >> For more options, visit https://groups.google.com/d/optout.
>>> >
>>> >
>>> > --
>>> > You received this message because you are subscribed to a topic in the
>>> Google Groups "Ansible Project" group.
>>> > To unsubscribe from this topic, visit
>>> https://groups.google.com/d/topic/ansible-project/2VbVHrb0Xrc/unsubscribe
>>> .
>>> > To unsubscribe from this group and all its topics, 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%2BnsWgwr3ukLhnDdS9%3DZjM%3D1MPVte1D4H2RAbx_h%2BmkjJiDChg%40mail.gmail.com
>>> .
>>>
>>> >
>>> > 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/CAKAnEVsDUvn0ttxxHeAFYTdiZS_7V21-yaHd%3DZRpeMhv_4by-A%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CAKAnEVsDUvn0ttxxHeAFYTdiZS_7V21-yaHd%3DZRpeMhv_4by-A%40mail.gmail.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 a topic in the
>> Google Groups "Ansible Project" group.
>> To unsubscribe from this topic, visit
>> https://groups.google.com/d/topic/ansible-project/2VbVHrb0Xrc/unsubscribe
>> .
>> To unsubscribe from this group and all its topics, 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%2BnsWgwWjMtLa01gR7zda0Tq%2BLMa8N%2B46S5TCMKeQhA3bBOXUg%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgwWjMtLa01gR7zda0Tq%2BLMa8N%2B46S5TCMKeQhA3bBOXUg%40mail.gmail.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/CAKAnEVvsKZ%2Br_ms-4RDUNcS2%2B5uOz9if4nYujcVUeTZxu3Rf1w%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CAKAnEVvsKZ%2Br_ms-4RDUNcS2%2B5uOz9if4nYujcVUeTZxu3Rf1w%40mail.gmail.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%2BnsWgxkUWZ9OjCFzrdd4sn4q37cgx1iTOodLSB8cvBdxis_ZA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to