0Pricing
Helm Academy · Lezione

Controlli di lint e template in CI

Interruzione anticipata della build in presenza di chart non validi

Controlli di lint e template in CI è una lezione Helm Academy gratuita su CoddyKit. Questa è la lezione 1 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 Helm Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Helm Academy include 4 lezioni in totale.

Rilevare i bug prima del cluster

Un chart non valido dovrebbe far fallire la sua pipeline, non il cluster di produzione. I controlli CI consentono di rifiutare i chart non validi non appena viene aperta una pull request. 🛡️

helm lint è il primo controllo

Il comando helm lint esegue controlli statici su un chart: verifica la struttura, i campi obbligatori e i problemi più comuni relativi alle buone pratiche, senza toccare alcun cluster.

helm lint ./mychart

Che cosa controlla davvero lint

Lint segnala un campo mancante in Chart.yaml, un template non analizzabile o un'icona che non è un URL. È veloce e non richiede una connessione a Kubernetes.

La modalità strict trasforma gli avvisi in errori

Aggiunga --strict per fare in modo che anche gli avvisi di lint interrompano l'esecuzione con un errore. Nella CI è preferibile che la build fallisca per qualsiasi elemento dubbio, invece di produrre un avviso silenzioso che nessuno legge.

helm lint --strict ./mychart

Eseguire lint con valori reali

Passi -f per eseguire lint usando i valori che la release utilizzerà realmente. Un chart può essere valido senza valori, ma non funzionare più dopo l'unione dei valori di produzione.

helm lint -f values-prod.yaml ./mychart

Il secondo controllo: helm template

Dopo che lint ha avuto esito positivo, esegua helm template per generare localmente ogni manifest. Se il templating non riesce, la pipeline si interrompe prima che qualcosa raggiunga Kubernetes.

helm template ./mychart > rendered.yaml

Perché template rileva più problemi

Lint è superficiale; helm template valuta completamente la logica dei template Go. Un errore di battitura in un range o un valore nil viene rilevato qui, non al momento del deploy.

I codici di uscita guidano il controllo

Entrambi i comandi restituiscono un codice di uscita diverso da zero in caso di errore. I runner CI leggono automaticamente questo codice e contrassegnano il job come fallito, bloccando il merge.

Convalidare lo YAML generato rispetto all'API

Invii l'output generato a kubeval o kubeconform per verificare che corrisponda agli schemi reali di Kubernetes. In questo modo un nome di campo errato viene rilevato in anticipo.

helm template ./mychart | kubeconform -strict

Inserirlo in un passaggio CI

Concateni i controlli in un unico job, così un errore interrompe quelli successivi. Nella maggior parte dei runner && si ferma al primo codice di uscita diverso da zero, mantenendo rapido il feedback.

helm lint --strict ./mychart && helm template ./mychart > /dev/null

Eseguire i controlli a ogni pull request

Attivi questi controlli a ogni pull request, non solo al momento del merge. I revisori vedranno un controllo superato che dimostra che il chart viene ancora generato correttamente.

Verifica rapida

Quale controllo valuta completamente la logica dei template Go per rilevare una cattiva espressione range?

Riepilogo: fallire rapidamente nella CI

Applichi a ogni modifica helm lint --strict e poi helm template, verificando facoltativamente lo schema dell'output. I chart non validi fanno fallire la build, mai il cluster. ✅

Domande Frequenti

La lezione «Controlli di lint e template in CI» è gratuita?

Sì — il testo completo di «Controlli di lint e template in CI» è 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 Helm Academy, passa a CoddyKit PRO. Il corso Helm Academy include 4 lezioni in totale.

Cosa imparerò in «Controlli di lint e template in CI»?

Interruzione anticipata della build in presenza di chart non validi Eserciti Helm Academy 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 Helm Academy?

Non è richiesta alcuna esperienza precedente. Helm Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 1 di 4.

Quanto tempo richiede la lezione «Controlli di lint e template in CI»?

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 Helm Academy?

Sì. Ogni lezione Helm Academy 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

  1. Controlli di lint e template in CI
  2. Anteprima delle modifiche con helm diff
  3. Deploy automatizzati con upgrade --install --atomic
  4. Pubblicazione dei chart da un job di release
← Torna a Helm Academy