I'm confused, quotes are already there.

command: ping -c 1 {{ hostvars[item]["ansible_bond1.2108"].ipv4.address }}


--
Regards,
Sébastien Han.


On Fri, Apr 18, 2014 at 12:13 AM, Michael DeHaan <[email protected]>wrote:

> "ansible_bond1.2108"
>
> This part needs quotes around it.
>
>
>
>
> On Thu, Apr 17, 2014 at 12:05 PM, Sébastien Han 
> <[email protected]>wrote:
>
>> Thanks! This is getting better and better:
>>
>> Modifying my playbook like this:
>>
>> - name: iterate over hosts
>>   command: ping -c 1 {{ hostvars[item]["ansible_bond1.2108"].ipv4.address
>> }}
>>   with_items: groups.storages
>>   ignore_errors: true
>>   tags: gz
>>
>>
>> Now I get:
>>
>> < TASK: swift-proxy | iterate over hosts >
>>
>>  ----------------------------------------
>>
>>         \   ^__^
>>
>>          \  (oo)\_______
>>
>>             (__)\       )\/\
>>
>>                 ||----w |
>>
>>                 ||     ||
>>
>>
>>
>> failed: [ceph0010] => (item=ceph0020) => {"changed": true, "cmd":
>> ["ping", "-c", "1", "{{hostvars[item][ansible_bond1.2108].ipv4.address}}"],
>> "delta": "0:00:00.005304", "end": "2014-04-17 17:59:50.851952", "item":
>> "ceph0020", "rc": 1, "start": "2014-04-17 17:59:50.846648"}
>>
>> stderr: ping: unknown host
>>
>> ...ignoring
>>
>> failed: [ceph0010] => (item=ceph0030) => {"changed": true, "cmd":
>> ["ping", "-c", "1", "{{hostvars[item][ansible_bond1.2108].ipv4.address}}"],
>> "delta": "0:00:00.005213", "end": "2014-04-17 17:59:51.026424", "item":
>> "ceph0030", "rc": 1, "start": "2014-04-17 17:59:51.021211"}
>>
>> stderr: ping: unknown host
>>
>> ...ignoring
>>
>> failed: [ceph0010] => (item=ceph0040) => {"changed": true, "cmd":
>> ["ping", "-c", "1", "{{hostvars[item][ansible_bond1.2108].ipv4.address}}"],
>> "delta": "0:00:00.005305", "end": "2014-04-17 17:59:51.200587", "item":
>> "ceph0040", "rc": 1, "start": "2014-04-17 17:59:51.195282"}
>>
>> stderr: ping: unknown host
>>
>> ...ignoring
>>
>> failed: [ceph0010] => (item=ceph0050) => {"changed": true, "cmd":
>> ["ping", "-c", "1", "{{hostvars[item][ansible_bond1.2108].ipv4.address}}"],
>> "delta": "0:00:00.005345", "end": "2014-04-17 17:59:51.374977", "item":
>> "ceph0050", "rc": 1, "start": "2014-04-17 17:59:51.369632"}
>>
>> stderr: ping: unknown host
>>
>> ...ignoring
>>
>> failed: [ceph0010] => (item=ceph0060) => {"changed": true, "cmd":
>> ["ping", "-c", "1", "{{hostvars[item][ansible_bond1.2108].ipv4.address}}"],
>> "delta": "0:00:00.005203", "end": "2014-04-17 17:59:51.548855", "item":
>> "ceph0060", "rc": 1, "start": "2014-04-17 17:59:51.543652"}
>>
>> stderr: ping: unknown host
>>
>> ...ignoring
>>
>> Any idea?
>> Thanks again in advance :)
>>
>> On Thursday, April 17, 2014 1:52:00 PM UTC+2, Michael DeHaan wrote:
>>
>>> Got it!  This is the problem line:
>>>
>>>    command: echo {{ hostvars.{{ item }}.ansible_hostname }}
>>>
>>> It should look like this:
>>>
>>> {{ hostvars[item].ansible_hostname }}
>>>
>>> Basically templates don't nest, and inside of template expressions, you
>>> can just use variables mostly as if they were Python.
>>>
>>> Hope that helps!
>>>
>>>
>>>
>>> On Thu, Apr 17, 2014 at 4:16 AM, Sébastien Han <[email protected]>wrote:
>>>
>>>> Hello Michael,
>>>>
>>>> Thanks for your response.
>>>>
>>>> What I'm trying to achieve is exactly what is described in this post:
>>>> https://coderwall.com/p/w5o6eq
>>>>
>>>> As an example, I tried the following:
>>>>
>>>> - name: iterate over hosts
>>>>   command: echo {{ hostvars.{{ item }}.ansible_hostname }}
>>>>   with_items:
>>>>     - groups.storages
>>>>   ignore_errors: true
>>>>   tags: gz
>>>>
>>>>
>>>> As far as I understand this is supposed to return every hostname,
>>>> instead I get:
>>>>
>>>> changed: [ceph001.enocloud.com] => (item=groups.storages) =>
>>>> {"changed": true, "cmd": ["echo", 
>>>> "{{hostvars.{{item}}.ansible_hostname}}"],
>>>> "delta": "0:00:00.003401", "end": "2014-04-17 10:11:03.764429", "item":
>>>> "groups.storages", "rc": 0, "start": "2014-04-17 10:11:03.761028",
>>>> "stderr": "", "stdout": "{{hostvars.{{item}}.ansible_hostname}}"}
>>>>
>>>> Any idea? Furthermore, the final goal is to collect the ip address of
>>>> the following intertace: ansible_bond1.2108. Not sure if it's
>>>> reachable given this: https://github.com/ansible/ansible/issues/6879
>>>>
>>>> Thanks for your help.
>>>>
>>>> --
>>>> Regards,
>>>> Sébastien Han.
>>>>
>>>>
>>>> On Thu, Apr 17, 2014 at 4:21 AM, Michael DeHaan <[email protected]>wrote:
>>>>
>>>>> Seems like you *might* mean with_nested seeing you are looping over
>>>>> what appears to be two different lists.
>>>>>
>>>>> Or else "groups.storages" is something else.  That looks like the odd
>>>>> one out to me.
>>>>>
>>>>> Everything else looks fine, so when you say "doesn't seem to work",
>>>>> more info would be helpful about how it was not working?
>>>>>
>>>>> Thanks!
>>>>>
>>>>>
>>>>> On Wed, Apr 16, 2014 at 4:42 AM, Sébastien Han <[email protected]>wrote:
>>>>>
>>>>>>  Up?
>>>>>>
>>>>>>
>>>>>> On Monday, April 14, 2014 5:59:15 PM UTC+2, Sébastien Han wrote:
>>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>> I'm trying to loop over a set of host, get their IP and then append
>>>>>>> the result to a file.
>>>>>>>
>>>>>>> Currently the action looks like this:
>>>>>>>
>>>>>>> - name: build rings
>>>>>>>   command: swift-ring-builder {{ item.service }}.builder add z1-{{
>>>>>>> hostvars[inventory_hostname]["ansible_bond1.2108"].ipv4.address
>>>>>>> }}:{{ item.port }}/sdb1 100
>>>>>>>            chdir=/etc/swift
>>>>>>>   with_items:
>>>>>>>     - { service: 'account', port: '6002' }
>>>>>>>     - { service: 'container', port: '6001' }
>>>>>>>     - { service: 'object', port: '6000' }
>>>>>>>     - groups.storages
>>>>>>>
>>>>>>> Basically I'd like to look over 'groups.storages' in {{
>>>>>>> hostvars[inventory_hostname]["ansible_bond1.2108"].ipv4.address }.
>>>>>>>
>>>>>>> Is it doable?
>>>>>>>
>>>>>>> This looks like this https://coderwall.com/p/w5o6eq, althought it
>>>>>>> doesn't seem to work with the new convention "{{ }}"
>>>>>>>
>>>>>>> Thanks in advance :).
>>>>>>>
>>>>>>> Cheers!
>>>>>>>
>>>>>>  --
>>>>>> 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/b1d69cd7-8326-4840-a7ae-
>>>>>> 6e66a528fde4%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/b1d69cd7-8326-4840-a7ae-6e66a528fde4%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 a topic in the
>>>>> Google Groups "Ansible Project" group.
>>>>> To unsubscribe from this topic, visit https://groups.google.com/d/
>>>>> topic/ansible-project/vOjMC-FkqAI/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%2BnsWgyChrGymubfmPr22Nb-
>>>>> kXMZGTrbKx8aKhpP3fwnjgxgNQ%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgyChrGymubfmPr22Nb-kXMZGTrbKx8aKhpP3fwnjgxgNQ%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/CAOLwVUkdNJwyJkbU2Hx4a2xHVzNgN
>>>> t0BgFfiOR44fpEq%2BYwbgg%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CAOLwVUkdNJwyJkbU2Hx4a2xHVzNgNt0BgFfiOR44fpEq%2BYwbgg%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/7726916d-59cb-4242-a963-90bc9cb095ad%40googlegroups.com<https://groups.google.com/d/msgid/ansible-project/7726916d-59cb-4242-a963-90bc9cb095ad%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 a topic in the
> Google Groups "Ansible Project" group.
> To unsubscribe from this topic, visit
> https://groups.google.com/d/topic/ansible-project/vOjMC-FkqAI/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%2BnsWgzt8BoBtFtCAePtS-X_pTsD1bgUoN-8xnFxxU81FXD7uQ%40mail.gmail.com<https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgzt8BoBtFtCAePtS-X_pTsD1bgUoN-8xnFxxU81FXD7uQ%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/CAOLwVUkgU%2BhvQp1CuAtismpSYABY_B-wWadcr1ahNAyeH2SiKQ%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to