On 12/10/2013 12:44 PM, Vasiliy Boulytchev wrote:
James,
  The following is breaking as well:

{% for k,v in hostvars.iteritems() %}
{{ v['ansible_all_ipv4_addresses'][0] }} {{ v['ansible_hostname'] }}
{% endfor %}

On Tuesday, December 10, 2013 12:11:15 PM UTC-5, James Tanner wrote:

    On 12/10/2013 11:24 AM, Vasiliy Boulytchev wrote:

    Folks, The following code is producing errors.

    code:

    |{% for v in hostvars.iteritems() %}
         {{ v['ansible_all_ipv4_addresses'][0] }}  {{ v['ansible_hostname'] }}
    {% endfor %}
    |

    error:

    |{'msg': "One or more undefined variables: 'tuple object' has no attribute 
'ansible_all_ipv4_addresses'", 'failed': True}
    |

    What should this look like if i wanted an /etc/hosts file like:

    |192.168.111.222 hostnameA
    192.168.111.211 hostnameB
    ...
    |

    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 ansible-proje...@googlegroups.com <javascript:>.
    For more options, visit https://groups.google.com/groups/opt_out
    <https://groups.google.com/groups/opt_out>.

    iteritems() returns a tuple so you need to assign two variables:

    {% for k,v in hostvars.iteritems() %}
        {{ k }}
        {{ v['ansible_all_ipv4_addresses'][0] }}  {{
    v['ansible_hostname'] }}
    {% endfor %}


    "k" will be the inventory hostname and "v" will be all of the vars
    for k.

    Example output:

    jtanner@u1304:~$ cat /tmp/vadata.txt
        localhost
        192.168.1.105  u1304

--
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.
For more options, visit https://groups.google.com/groups/opt_out.

Let's see your playbook. I have a feeling that you aren't gathering facts.

--
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.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to