Excellent.   Sounded a bit familiar :)



On Tue, Apr 15, 2014 at 6:44 PM, Garrett Plasky <[email protected]>wrote:

> This appears to be the same issue as
> https://github.com/ansible/ansible/issues/6677 which has ben fixed and
> should roll out with 1.6.
>
> On Wednesday, April 9, 2014 8:50:39 AM UTC-7, Stephen Gargan wrote:
>>
>> I'm seeing an issue with variable substitution between versions 1.5.3 and
>> 1.5.4.
>>
>> I have an include file that I use to create vm instances,
>> create_instance.yml and a playbook create_cluster.yml that I use to spin up
>> all the instances for the cluster in one go. I have variables in my
>> group_vars that I use to configure the cluster e.g. the cluster_name and
>> when I spin up a new cluster I usually override these using the extras vars
>> switch -e
>>
>> the create_cluster looks something like the following
>>
>> - hosts: localhost
>>   connection: local
>>   gather_facts: False
>>
>>   tasks:
>>   - {include: create_instance.yml,
>>       tags: {
>>         hostname: 'blah_server1',
>>         ansible_groups: ["{{cluster_name}}", 'blah-servers'],
>>         cluster_name: "{{cluster_name}}"
>>       }
>>     }
>>
>> create_instance.yml looks like
>>
>> - debug: msg="creating instance for cluster '{{ cluster_name }}'
>> '{{tags}}' "
>>
>>
>> group_vars/all
>>
>> cluster_name: dev
>>
>> For instance to spin up a new 'qa' cluster, I would issue
>>
>>  ansible-playbook -i hosts create_cluster.yml -e cluster_name=qa
>>
>> Up until recently this would correctly override the cluster_name variable
>> as expected and produce the output below. (Specifically notice how the
>> cluster_name is set to qa in the debug message)
>>
>>
>> PLAY [localhost] ******************************
>> ********************************
>>
>> TASK: [debug msg="creating instance for cluster 'qa' '{'cluster_name':
>> u'qa', 'hostname': 'blah_server1', 'ansible_groups': [u'qa',
>> 'blah-servers']}' "] ***
>> ok: [127.0.0.1] => {
>>     "item": "",
>>     "msg": "creating instance for cluster 'qa' '{'cluster_name': u'qa',
>> 'hostname': 'blah_server1', 'ansible_groups': [u'qa', 'blah-servers']}' "
>> }
>>
>> Between 1.5.3 and 1.5.4 this behavior has changed, running it with 1.5.4
>> produces.
>>
>> PLAY [localhost] ******************************
>> ********************************
>>
>> TASK: [debug msg="creating instance for cluster 'qa' '{'cluster_name':
>> u'qa', 'hostname': 'blah_server1', 'ansible_groups': [u'qa',
>> 'blah-servers']}' "] ***
>> ok: [127.0.0.1] => {
>>     "item": "",
>>     "msg": "creating instance for cluster 'qa' '{'cluster_name': u'dev',
>> 'hostname': 'blah_server1', 'ansible_groups': [u'dev', 'blah-servers']}' "
>> }
>>
>> Notice how the variable is correctly substituted in the task listing, but
>> in the msg it is not overridden correctly at all and is still 'dev'. This
>> causes me to spin up instances into the wrong cluster and in other
>> playbooks that configure the cluster it applies changes to incorrect
>> machines.
>>
>> The changes between 1.5.3 and 1.5.4 are very limited, I think its related
>> to the split from SETUP_CACHE into VARS_CACHE, but I've not tracked it down
>> yet. Anyone any insight into what might have happened?
>>
>> A gist of the files can be found here
>>
>> https://gist.github.com/10285167
>>
>> Thanks,
>>
>> Steve.
>>
>  --
> 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/7277838a-d2ea-4dcd-8cfb-b8e03d1b61bc%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/7277838a-d2ea-4dcd-8cfb-b8e03d1b61bc%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%2BnsWgwLcajmRuRFbiBxnpnZBi3dRLc7tcMx8y5HmNH-Hx_wRw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to