hostB is defined in inventory. Unfortunately does not single quote nor 
strong quoting solve the issue:

fqdn: "{{ hostvars['hostB']['ansible_fqdn'] }}"
address: "{{ hostvars['hostB']['ansible_eth0']['ipv4']['address'] }}"

Error:

fatal: [mon] => One or more undefined variables: 'dict object' has no 
attribute 'ansible_fqdn'


Il giorno mercoledì 16 aprile 2014 18:49:47 UTC+2, Tomasz Kontusz ha 
scritto:
>
>
>
> Valentino Gagliardi <[email protected] <javascript:>> napisał: 
> >More details. 
> > 
> >vars.yml 
> >fqdn: "{{ hostvars[hostB]['ansible_fqdn'] }}" 
> >address: "{{ hostvars[hostB]['ansible_eth0.ipv4.address'] }}" 
> If hostB is the inventory name of that host (and not a variable) use 
> 'hostB' in quotes. 
>
> > 
> >---- separator ----- 
> > 
> >templates/host_def.j2 
> >define host{ 
> >    use generic-host 
> >    host_name {{ fqdn }} 
> >    address {{ address }} 
> >    max_check_attempts 5 
> >    check_command check-host-alive 
> >} 
> > 
> >---- separator ----- 
> > 
> >task.yml 
> >--- 
> >- hosts: mon 
> >  sudo: yes 
> > 
> >  vars_files: 
> >   - vars.yml 
> > 
> >  tasks: 
> > 
> >    - name: Copy Host Definition (Server) 
> >  template: src=templates/host_def.j2 dest=/etc/icinga/servers/{{ fqdn 
> >}}.cfg owner=root group=root mode=0644 
> >      notify: 
> >        - restart icinga 
> >      tags: 
> >       - server_host 
> > 
> >Error: 
> > 
> >fatal: [mon] => One or more undefined variables: 'hostB' is undefined 
> > 
> >Il giorno mercoledì 16 aprile 2014 16:07:35 UTC+2, Valentino Gagliardi 
> >ha 
> >scritto: 
> >> 
> >> Hello friends! 
> >> Almost sure that this is my fault but at this time is still obscure 
> >for me 
> >> how to retrieve facts about host B inside a playbook which run for 
> >host A. 
> >> 
> >> This is the real case: I want to populate Icinga host definition 
> >running 
> >> the playbook on host A, but retrieving facts about monitored host B: 
> >> 
> >> Already tried 
> >> 
> >
> http://docs.ansible.com/playbooks_variables.html#magic-variables-and-how-to-access-information-about-other-hosts(templates/host_def.j2)
>  
> >: 
> >> 
> >> define host{ 
> >>     use generic-host 
> >>     host {{ hostvars['hostB']['ansible_fqdn'] }} 
> >>     address {{ hostvars['hostB']['ansible_eth0.ipv4.address'] }} 
> >>     max_check_attempts 5 
> >>     BLABLA 
> >> } 
> >> 
> >> but this give me an error. Is this the right way to use magic 
> >variables? 
> >> 
> >> Any pointing? Thanks! 
> >> 
>
> -- 
> Wysłane za pomocą K-9 Mail. 
>

-- 
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/f58947a0-6ef9-420d-850f-0a222427ada9%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to