Omitir tarea Ansible cuando la variable no está definida
Tengo la siguiente tarea en un libro de jugadas:
- name: task xyz
copy:
src="{{ item }}"
dest="/tmp/{{ item }}"
with_items: "{{ y.z }}"
when: y.z is defined
y.z
no está definido, por lo que espero que se omita la tarea. En cambio, recibo:
FAILED! => {"failed": true, "msg": "'dict object' has no attribute 'z'"
He encontrado:¿Cómo ejecutar una tarea cuando la variable no está definida en ansible? pero parece que implementé solo eso. ¿Qué estoy haciendo mal aquí?