Smoke test, rollback e notifiche
Verifichi, ripristini e segnali il deployment
Smoke test, rollback e notifiche è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Il deploy non termina al reload
Un play completato non è un'app funzionante. Servono ancora smoke test, una procedura di rollback e una notifica. Completi il ciclo. 🔁
Esegua uno smoke test sull'endpoint
Interroghi una route reale con il modulo uri e verifichi che restituisca 200. Se l'app non risponde correttamente, il deploy deve fallire in modo evidente.
- name: Smoke test
ansible.builtin.uri:
url: https://app.example.com/health
status_code: 200
return_content: trueVerifichi la versione corretta
Vada oltre: legga la risposta e usi assert per confermare che la versione attiva corrisponda a quella appena distribuita.
- ansible.builtin.assert:
that:
- "app_version in smoke.content"
fail_msg: "Wrong version live"Racchiuda il deploy in un block
Raggruppi il deploy e i test in un block, così un singolo errore può attivare un'unica procedura di ripristino condivisa.
- block:
- import_role:
name: deploy
- import_tasks: smoke.ymlEsegua il rollback in rescue
Inserisca la logica di annullamento in rescue: ridistribuisca la versione precedente, così una release non riuscita non lascerà mai gli utenti con codice difettoso.
rescue:
- name: Roll back
ansible.builtin.git:
repo: "{{ app_repo }}"
version: "{{ previous_version }}"
dest: /srv/appRiabiliti sempre il traffico
Usi always per rimettere il nodo dietro al bilanciatore di carico, sia che il deploy vada a buon fine sia che venga eseguito il rollback. Non lasci mai un host isolato.
always:
- community.general.haproxy:
state: enabled
host: "{{ inventory_hostname }}"
delegate_to: lb1Fallisca subito e in modo chiaro
Quando qualcosa non va, interrompa l'esecuzione con un messaggio utile usando il modulo fail, così il log indica esattamente cosa si è rotto.
- ansible.builtin.fail:
msg: "Health check failed on {{ inventory_hostname }}"Informi il team
Comunichi l'esito. Un task community.general.slack pubblica un messaggio di successo o di errore, così il team sa che il deploy è terminato.
- community.general.slack:
token: "{{ slack_token }}"
msg: "Deployed {{ app_version }} ✅"Email o chat, a Sua scelta
Preferisce l'email? Il modulo mail invia un riepilogo. Qualsiasi canale va bene: l'importante è avere un segnale di deploy chiaro e automatico.
- community.general.mail:
to: ops@example.com
subject: "Deploy {{ app_version }} complete"Conservi l'ultima versione valida
Il rollback funziona solo se la versione è stata tracciata. Registri previous_version prima del deploy, così rescue saprà cosa ripristinare.
vars:
previous_version: "2.4.0"
app_version: "2.4.1"Un deploy di cui fidarsi
Esegua i test, faccia rollback in caso di errore, ripristini sempre il traffico e informi il team. Questo è un deploy pronto per la produzione, dall'inizio alla fine. 🎉
Controllo rapido
Una sezione garantisce il ripristino del traffico.
Riepilogo
Ha completato il ciclo: smoke test, rollback in rescue, riabilitazione in always e notifiche al team. Modulo conclusivo completato! 🏆
Domande Frequenti
La lezione «Smoke test, rollback e notifiche» è gratuita?
Sì — il testo completo di «Smoke test, rollback e notifiche» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Smoke test, rollback e notifiche»?
Verifichi, ripristini e segnali il deployment Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Smoke test, rollback e notifiche»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Progettare il progetto: ruoli e inventory
- Effettuare il provisioning, rafforzare e inizializzare gli host
- Deploy progressivo dietro il load balancer
- Smoke test, rollback e notifiche