Playbooks to a new Lilik
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

18 lines
602 B

from ansible.errors import AnsibleError, AnsibleParserError
def ip_from_inventory(hostvars, hostname):
"""
replace this ``{{ hostvars[hostname]['ansible_host'] }}``
with something nicer such as `` {{ hostvars | ip_from_inventory(hostname) }}``
"""
if not hostname in hostvars:
raise AnsibleError('<ip_from_inventory> hostname "{hostname}" not found in inventory'.format(hostname=hostname))
return hostvars[hostname]['ansible_host']
class FilterModule(object):
def filters(self):
return {
'ip_from_inventory': ip_from_inventory,
}