Se eu entendi sua situação corretamente, você pode fazer isso usando uma combinação de set_fact e / ou um modelo que, em seguida, percorre todos os hosts. Por exemplo, supondo que você tenha uma tarefa definida como esta:
- name : Configure database
command: /path/to/some/script {{ inventory_hostname }} {{ some_var }} {{ some_other_var }}
Você pode usar set_fact para associar esses valores ao host em questão:
- name: Stash the variables for later use
set_fact:
var_1 : {{ some_var }}
var_2 : {{ some_other_var }}
host_and_var : "{{ inventory_hostname }}-{{ some_var}}"
etc.
Então, quando chegar a hora de criar seu arquivo de configuração, você terá uma ação de modelo ou local_action que gera o arquivo de configuração. O modelo conteria algo ao longo destas linhas:
{% for host in groups['some_host_group']|sort %}
{% if hostvars[host]["var_1"] is defined %}
{{ host }} = {{ hostvars[host]["var_1"] }}
{% endif %}
{% endfor %}