Возможно, вы захотите немного изменить свой цикл with_items:
name: "Creating Sub sudoers files in {{ sudo_sudoers_d_path }}"
template:
src: "idc_sudo.d.j2"
dest: "{{ item.file_path }}/{{ item.file_name }}"
validate: "visudo -cf %s"
owner: "{{ item.user_name}}"
group: "{{ item.group }}"
mode: "{{ item.mode }}"
with_items:
- { file_name: 'idc_zabbix', file_path: '/etc/sudoers', user_name: "zabbix", group: "some_group", mode: "0744" }
- { file_name: 'idc_zabbix', file_path: '/etc/sudoers.d', user_name: "zabbix", group: "some_group", mode: "0744" }
when: create_sudoers_subdir == true
И вы можете использовать эти item.whith переменные внутри шаблона, если хотите. Если это не работает, потому что вы ДОЛЖНЫ хранить эти переменные где-то в другом месте, или у вас есть так много, что они просто ужасны, чтобы поместить их здесь, тогда вы могли бы также использовать вместо этого цикл with_dict:
- name: Print phone records
debug:
msg: "User {{ item.key }} is {{ item.value.name }} ({{ item.value.telephone }})"
with_dict: "{{ users }}"
Тогда вы можетевызывать любой список с правильными метками из любого места, куда вы можете импортировать переменные (group_vars, host_vars, модуль var в playbook и т. д.)