Testes básicos, reversão e notificações
Verifique, recupere e comunique o resultado da implantação.
Testes básicos, reversão e notificações é 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.
A implantação não termina no recarregamento
Uma execução concluída não é um aplicativo funcionando. Ainda são necessários testes de fumaça, um caminho de reversão e uma notificação. Conclua o ciclo. 🔁
Teste de fumaça do ponto de acesso
Acesse uma rota real com o módulo uri e confirme um 200. Se o aplicativo não responder corretamente, a implantação deverá falhar de forma evidente.
- name: Smoke test
ansible.builtin.uri:
url: https://app.example.com/health
status_code: 200
return_content: trueConfirme a versão correta
Vá além: leia a resposta e use assert para confirmar que a versão em execução corresponde à que acabou de publicar.
- ansible.builtin.assert:
that:
- "app_version in smoke.content"
fail_msg: "Wrong version live"Envolva a implantação em um bloco
Agrupe a implantação e os testes dentro de um block para que uma única falha possa acionar um único caminho compartilhado de recuperação.
- block:
- import_role:
name: deploy
- import_tasks: smoke.ymlFaça a reversão em rescue
Coloque a lógica de desfazer em rescue: implante novamente a versão anterior para que uma versão com falha nunca deixe os usuários usando código quebrado.
rescue:
- name: Roll back
ansible.builtin.git:
repo: "{{ app_repo }}"
version: "{{ previous_version }}"
dest: /srv/appSempre reative o tráfego
Use always para recolocar o nó atrás do balanceador de carga, independentemente de a implantação ter sido concluída ou revertida. Nunca deixe um servidor isolado.
always:
- community.general.haproxy:
state: enabled
host: "{{ inventory_hostname }}"
delegate_to: lb1Falhe rápido e com clareza
Quando algo estiver errado, pare com uma mensagem útil usando o módulo fail, para que o registro informe exatamente o que falhou.
- ansible.builtin.fail:
msg: "Health check failed on {{ inventory_hostname }}"Notifique a equipe
Comunique o resultado. Uma tarefa community.general.slack publica o sucesso ou a falha para que as pessoas saibam que a implantação terminou.
- community.general.slack:
token: "{{ slack_token }}"
msg: "Deployed {{ app_version }} ✅"E-mail ou bate-papo: escolha
Prefere e-mail? O módulo mail envia um resumo. Qualquer canal funciona; o importante é ter um sinal claro e automático da implantação.
- community.general.mail:
to: ops@example.com
subject: "Deploy {{ app_version }} complete"Mantenha a última versão correta
A reversão só funciona se você tiver registrado a versão. Registre previous_version antes de implantar para que rescue saiba o que restaurar.
vars:
previous_version: "2.4.0"
app_version: "2.4.1"Uma implantação confiável
Faça os testes, reverta em caso de falha, sempre restaure o tráfego e avise a equipe. Isso é uma implantação de nível de produção, do início ao fim. 🎉
Verificação rápida
Uma seção garante que o tráfego seja restaurado.
Recapitulação
Você concluiu o ciclo: testes de fumaça, reversão em rescue, reativação em always e notificações à equipe. Projeto final concluído! 🏆
Perguntas Frequentes
A aula “Testes básicos, reversão e notificações” é grátis?
Sim — o texto completo de “Testes básicos, reversão e notificações” é 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 “Testes básicos, reversão e notificações”?
Verifique, recupere e comunique o resultado da implantação. 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 “Testes básicos, reversão e notificações”?
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
- Projete o projeto: roles e inventário
- Provisione, proteja e prepare hosts
- Implantação progressiva atrás do balanceador de carga
- Testes básicos, reversão e notificações