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í?

Respuestas a la pregunta(1)

Su respuesta a la pregunta