A documentação segura tem este exemplo:
A frequently used idiom is walking a group to find all IP addresses in that group:
{% for host in groups['app_servers'] %}
{{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}
{% endfor %}
Faz aproximadamente o que você quer. Você pode usá-lo assim:
- name: Execute somescript
command: >
somescript {% for host in groups['app_servers'] %}
-H {{ hostvars[host]['ansible_eth0']['ipv4']['address'] }}
{% endfor %}
Agora, você também deseja excluir o próprio host da lista de endereços IP. Você pode fazer isso modificando o {% for %} da seguinte forma:
{% for host in groups['app_servers'] if host != ansible_host %}
Em vez de ansible_host , talvez seja necessário usar ansible_fqdn ou ansible_nodename . Você deve verificar o que funciona para você.