Il existe plusieurs façons de procéder. Le plus simple:
- name: Copy file.role1 to host1
copy: src=file.role1 dest=/somewhere/file
when: inventory_hostname == "host1"
- name: Copy file.role2 to host2
copy: src=file.role2 dest=/somewhere/file
when: inventory_hostname == "host2"
Alternative, plus compacte:
- name: Copy file to host
copy: src=file.{{ inventory_hostname }} dest=/somewhere/file
Ou, en utilisant un modèle:
- name: Copy file to host
template: src=file dest=/somewhere/file
où le modèle peut être quelque chose comme ceci:
{% if inventory_hostname == "host1" %}
{% include "file1" %}
{% endif %}
...
Si vous voulez différents fichiers dans différents rôles, pourquoi ne pas simplement mettre ceci:
- name: Copy file.role1 to file
copy: src=file.role1 dest=/somewhere/file
dans le code de chaque rôle?
Il n'y a pas de façon préférée de le faire - cela dépend de ce que vous essayez réellement d'accomplir.