0Pricing
Ansible Academy · Aula

Asserções personalizadas com o módulo fail

Interrompa um play com uma mensagem clara.

Asserções personalizadas com o módulo fail é uma aula grátis de Ansible Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ansible Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ansible Academy inclui 4 aulas no total.

Pare com uma mensagem clara

Às vezes, você quer interromper uma execução de propósito, apresentando um motivo útil. O módulo fail faz exatamente isso. 🛑

O módulo fail

ansible.builtin.fail interrompe o host atual com uma mensagem personalizada escrita por você, em vez de exibir um erro enigmático.

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

Condicione fail com when

Um fail isolado sempre interrompe a execução, portanto combine-o com when. A execução falha somente se sua condição de proteção for atendida.

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

Falhe rápido e cedo

Coloque as verificações de proteção no início da execução. Detectar uma entrada inválida cedo é melhor do que falhar no meio de uma implantação.

O módulo assert

ansible.builtin.assert é mais adequado para validações: forneça condições em that, e ele falhará se alguma for falsa.

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

Mensagens personalizadas do assert

Adicione fail_msg e success_msg a assert para exibir uma mensagem amigável em qualquer resultado. Feedback claro em todas as execuções.

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

assert verifica várias condições de uma vez

assert recebe uma lista em that. Todas as condições devem ser verdadeiras; a primeira condição falsa faz a tarefa falhar com a sua mensagem.

fail versus assert

Use fail para uma única interrupção deliberada, com a lógica em when; use assert para validar um conjunto de condições de forma concisa.

Interpole valores

Sua msg pode incluir variáveis para fornecer contexto. Mostre o valor inválido para que o operador saiba exatamente o que corrigir.

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

Asserções como documentação

Boas asserções também funcionam como documentação viva: expressam as expectativas de um playbook e as impõem em um só lugar. 📝

Modo quiet do assert

Defina quiet como true em assert para omitir a saída de cada condição. É útil quando você só se importa com falhas, não com verificações aprovadas.

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

Verificação rápida

Vamos escolher a ferramenta certa.

Recapitulação

O módulo fail interrompe uma execução com uma mensagem clara, enquanto assert valida condições de forma organizada. Proteja seus playbooks de maneira proativa. ✅

Perguntas Frequentes

A aula “Asserções personalizadas com o módulo fail” é grátis?

Sim — o texto completo de “Asserções personalizadas com o módulo fail” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ansible Academy, atualize para CoddyKit PRO. O curso de Ansible Academy inclui 4 aulas no total.

O que vou aprender em “Asserções personalizadas com o módulo fail”?

Interrompa um play com uma mensagem clara. Você pratica Ansible Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ansible Academy?

Nenhuma experiência prévia é necessária. Ansible Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Asserções personalizadas com o módulo fail”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ansible Academy?

Sim. Cada aula de Ansible Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Agrupe tarefas com block
  2. Try / catch com rescue e always
  3. Controle de falhas: failed_when e ignore_errors
  4. Asserções personalizadas com o módulo fail
← Voltar para Ansible Academy