Could you try instead of command module something like: debug: msg="{{ hostvars[item]['ansible_bond1.2108']['ipv4']['address'] }}"
And run ansible-playbook with *-vvvv.* On Wednesday, April 23, 2014 10:17:48 AM UTC+2, Sébastien Han wrote: > > Same error :( > > On Wednesday, April 23, 2014 12:13:26 AM UTC+2, Strahinja Kustudić wrote: >> >> Try: >> >> {{ hostvars[item]['ansible_bond1.2108']['ipv4']['address'] }} >> >> >> On Tuesday, April 22, 2014 11:02:53 PM UTC+2, Sébastien Han wrote: >>> >>> No more ideas? >>> >>> >>> On Friday, April 18, 2014 10:12:31 AM UTC+2, Sébastien Han wrote: >>>> >>>> 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 <mic...@ansible.com>wrote: >>>> >>>>> "ansible_bond1.2108" >>>>> >>>>> This part needs quotes around it. >>>>> >>>>> >>>>> >>>>> >>>>> On Thu, Apr 17, 2014 at 12:05 PM, Sébastien Han >>>>> <han.se...@gmail.com>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 >>>>>>> <han.se...@gmail.com>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 <mic...@ansible.com >>>>>>>> > 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 < >>>>>>>>> han.se...@gmail.com> 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 ansible-proje...@googlegroups.com. >>>>>>>>>> To post to this group, send email to ansible...@googlegroups.com. >>>>>>>>>> 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 ansible-proje...@googlegroups.com. >>>>>>>>> >>>>>>>>> To post to this group, send email to ansible...@googlegroups.com. >>>>>>>>> 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 ansible-proje...@googlegroups.com. >>>>>>>> To post to this group, send email to ansible...@googlegroups.com. >>>>>>>> To view this discussion on the web visit >>>>>>>> https://groups.google.com/d/msgid/ansible-project/ >>>>>>>> CAOLwVUkdNJwyJkbU2Hx4a2xHVzNgNt0BgFfiOR44fpEq%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 ansible-proje...@googlegroups.com. >>>>>> >>>>>> To post to this group, send email to ansible...@googlegroups.com. >>>>>> 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 >>>>> ansible-proje...@googlegroups.com. >>>>> To post to this group, send email to ansible...@googlegroups.com. >>>>> 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 ansible-project+unsubscr...@googlegroups.com. To post to this group, send email to ansible-project@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/826b1364-1e0d-4a77-8002-20e2607b2af0%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.