Respuestas:
Sí, es posible. Consulte la documentación en línea, bajo el acceso a datos variables complejos .
Se proporciona un ejemplo para hacer exactamente eso:
tasks:
- shell: echo "I've got '{{ foo }}' and am not afraid to use it!"
when: foo is defined
- fail: msg="Bailing out: this play requires 'bar'"
when: bar is not defined
Agregue esta línea a la [defaults]
sección de su ansible.cfg:
error_on_undefined_vars = True
Ahora recibirá un mensaje de error si una variable no está definida.
Define tus variables en
roles/<role_name>/defaults/main.yml
me gusta:
SUPERVAR:
VAR1:foo
VAR2:bar
y luego hacer en
roles/<role_name>/tasks/main.yml
me gusta:
- fail: msg="{{ item }} is not defined"
when: not {{ item }}
with_items:
- SUPERVAR.VAR1
- SUPERVAR.VAR2