Uma solução em um playbook seria inicializar uma lista vazia e, em seguida, anexá-la a looping sobre nomes de host no seu grupo de inventário :
- set_fact:
ips: []
run_once: true
- set_fact:
ips: "{{ips}} + ['{{hostvars[item].ansible_default_ipv4.address}}']"
with_inventory_hostnames:
- dbs
run_once: true
- template:
src: config.j2
dest: /tmp/whatever
com um arquivo de modelo config.j2
contendo
ips={{ ips|to_yaml }}