มีหลายวิธีในการทำเช่นนี้ ที่ง่ายที่สุด:
- 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"
ทางเลือกกะทัดรัดมากขึ้น:
- name: Copy file to host
copy: src=file.{{ inventory_hostname }} dest=/somewhere/file
หรือใช้เทมเพลต:
- name: Copy file to host
template: src=file dest=/somewhere/file
โดยที่เทมเพลตสามารถเป็นดังนี้:
{% if inventory_hostname == "host1" %}
{% include "file1" %}
{% endif %}
...
หากคุณต้องการไฟล์ที่แตกต่างในบทบาทที่แตกต่างกันทำไมคุณไม่ใส่:
- name: Copy file.role1 to file
copy: src=file.role1 dest=/somewhere/file
ในรหัสของแต่ละบทบาทหรือไม่
ไม่มีวิธีที่แนะนำให้ทำ - ขึ้นอยู่กับสิ่งที่คุณพยายามทำ