I gave two example playbooks in this thread and in the github issue 
<https://github.com/ansible/ansible/issues/9242> (same ones). Do you want a 
more 'real world' example?

On Friday, November 7, 2014 4:22:58 PM UTC+2, Michael DeHaan wrote:
>
>
> Would need to see your complete playbook.
>
> Definitely don't modify the code just yet :)
>
>
>
> On Thu, Nov 6, 2014 at 12:44 PM, Hagai Kariti <[email protected] 
> <javascript:>> wrote:
>
>> Ok, I poked around a bit and indeed found one precedence issue and one 
>> premature templating issue:
>>
>> In lib/ansible/runner/__init__.py lines 612-613:
>>
>>         module_vars_inject = utils.combine_vars(host_variables, 
>> combined_cache.get(host, {}))
>>         module_vars_inject = utils.combine_vars(self.module_vars, 
>> module_vars_inject)
>>
>> module_vars are overrided by host_variables, although they are supposed 
>> to be of high precedence. They are being used in the correct order 
>> (module_vars > host_variables) when building the inject var. Changing the 
>> order of precedence in the above lines solves my first use-case (the 
>> mapping override one).
>>
>> In lib/ansible/playbook/play.py lines 89-90:
>>
>>         all_vars = utils.combine_vars(self.vars, self.playbook.extra_vars)
>>         self.vars = template(basedir, self.vars, all_vars)
>>
>> play vars are templated without taking inventory variables into account. 
>> Removing these lines solves my second use-case (defining a variable in vars 
>> section based on inventory var with a default value).
>>
>> make tests seem to pass. Is there a chance that someone with more 
>> knowledge of how vars behave can verify if my fixes are correct? Should I 
>> open a PR for this?
>>
>> Thanks
>>
>> -- 
>> 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] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/591094e7-c26d-4fe0-a9c2-e8c34a9f8160%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/591094e7-c26d-4fe0-a9c2-e8c34a9f8160%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/c2993cb5-593f-4ee8-9fb7-c31872e83970%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to