0Pricing
DevOps Bootcamp · Lección

Aserciones personalizadas con el módulo fail

Detenga un play con un mensaje claro

Aserciones personalizadas con el módulo fail es una lección gratuita de DevOps Bootcamp en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de DevOps Bootcamp, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de DevOps Bootcamp incluye 4 lecciones en total.

Detenga la ejecución con un mensaje claro

A veces querrá detener un play deliberadamente y explicar el motivo. El módulo fail hace exactamente eso. 🛑

El módulo fail

ansible.builtin.fail detiene el host actual con un mensaje personalizado que usted escribe, en lugar de mostrar un error críptico.

- name: Refuse unsupported OS
  ansible.builtin.fail:
    msg: "This playbook supports Ubuntu only"

Condicione fail con when

Un fail sin condiciones siempre detiene la ejecución, así que combínelo con when. El play fallará solo si se cumple su condición de control.

- ansible.builtin.fail:
    msg: "app_version is required"
  when: app_version is not defined

Falle rápido y pronto

Coloque las comprobaciones de control al principio de un play. Detectar pronto una entrada incorrecta es mejor que fallar a mitad de un despliegue.

El módulo assert

ansible.builtin.assert resulta más limpio para validar: proporciónele condiciones en that y fallará si alguna es falsa.

- ansible.builtin.assert:
    that:
      - app_port is defined
      - app_port | int > 1024

Mensajes personalizados de assert

Añada fail_msg y success_msg a assert para mostrar mensajes claros en cualquiera de los dos resultados. Obtendrá información útil en cada ejecución.

- ansible.builtin.assert:
    that: disk_free > 500
    fail_msg: "Need at least 500MB free"
    success_msg: "Disk space OK"

assert comprueba varias condiciones a la vez

assert recibe una lista en that. Todas las condiciones deben ser verdaderas; la primera que sea falsa hará fallar la tarea con su mensaje.

fail frente a assert

Use fail para una única detención deliberada con la lógica en when; use assert para validar de forma concisa un conjunto de condiciones.

Interpola valores

Su msg puede incluir variables para aportar contexto. Muestre el valor incorrecto para que el operador sepa exactamente qué debe corregir.

- ansible.builtin.fail:
    msg: "Port {{ app_port }} is out of range"

Las aserciones como documentación

Unas buenas aserciones también sirven como documentación viva: expresan las expectativas de un playbook y las hacen cumplir en un solo lugar. 📝

Modo quiet de assert

Establezca quiet en true en assert para omitir la salida de cada condición. Resulta útil cuando solo le interesan los fallos, no las comprobaciones que se superan.

- ansible.builtin.assert:
    that: app_port is defined
    quiet: true

Comprobación rápida

Elijamos la herramienta adecuada.

Resumen

El módulo fail detiene un play con un mensaje claro, mientras que assert valida las condiciones de forma limpia. Proteja sus playbooks de forma preventiva. ✅

Preguntas frecuentes

¿La lección «Aserciones personalizadas con el módulo fail» es gratis?

Sí — el texto completo de «Aserciones personalizadas con el módulo fail» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de DevOps Bootcamp, actualiza a CoddyKit PRO. El curso de DevOps Bootcamp incluye 4 lecciones en total.

¿Qué aprenderé en «Aserciones personalizadas con el módulo fail»?

Detenga un play con un mensaje claro Practicas DevOps Bootcamp con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar DevOps Bootcamp?

No se requiere experiencia previa. DevOps Bootcamp en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Aserciones personalizadas con el módulo fail»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de DevOps Bootcamp?

Sí. Cada lección de DevOps Bootcamp incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Agrupar tareas con block
  2. Try / Catch con rescue y always
  3. Controlar errores: failed_when e ignore_errors
  4. Aserciones personalizadas con el módulo fail
← Volver a DevOps Bootcamp