Cartina tornasole per pipeline CI/CD - AWS Guida prescrittiva

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Cartina tornasole per pipeline CI/CD

In chimica, la cartina di tornasole è una sottile striscia di carta trattata con uno speciale colorante rosso o blu che viene utilizzato per determinare l'acidità di una sostanza. Un acido diventa blu la cartina tornasole rossa, una base diventa blu la cartina tornasole rossa e le sostanze neutre non influiscono affatto sul colore della carta.

Il modo in cui la cartina di tornasole determina l'acidità consiste nel misurare il livello di pH di una sostanza. Se un livello di pH è superiore a 8, è acido; se è inferiore a 5, è basico; e se è compreso tra 5 e 8, è neutro. Allo stesso modo, la cartina di tornasole CI/CD consente di misurare il livello CI/CD della pipeline.

Per verificare se la pipeline è completamente CI/CD
  1. Inizia con un punteggio pari a 0.

  2. Rispondi a ciascuna delle seguenti domande e aggiungi 1 al tuo punteggio per ogni volta che rispondi :

    • Ciascuno dei nostri repository ha esattamente un ramo principale che viene utilizzato per l'implementazione negli ambienti?

    • Immettiamo spesso codice nel ramo principale ed evitiamo di avere rami di funzionalità a lunga durata?

    • La nostra pipeline ha un unico punto di ingresso? In altre parole, la nostra pipeline estrae il codice da ogni repository esattamente una volta?

    • Abbiamo più di un ambiente di implementazione?

    • Quando la pipeline non è in esecuzione, i nostri ambienti superiori e inferiori sono generalmente sincronizzati?

    • Eseguiamo test sul codice prima della distribuzione?

    • Eseguiamo test su un ambiente prima di passare all'ambiente successivo?

    • La nostra pipeline esegue un rollback completo ed esce dopo un errore?

    • La nostra pipeline si riavvia dalla prima fase durante il ripristino da un guasto?

    • Seguiamo lo stesso processo per correggere i bug in produzione che seguiamo per rilasciare le funzionalità in produzione?

    • Utilizziamo modelli di tipo Infrastructure as Code (IaC) per implementare il codice?

  3. Rispondi a ciascuna delle seguenti domande e aggiungi 1 al tuo punteggio per ogni volta che rispondi no:

    • Effettuiamo mai l'implementazione direttamente in un ambiente di distribuzione da filiali diverse dalla filiale principale?

    • Effettuiamo mai l'implementazione direttamente da una filiale a un ambiente superiore o di produzione?

    • Troviamo spesso bug negli ambienti superiori che non erano presenti negli ambienti inferiori?

    • Riusciamo mai a bypassare gli ambienti inferiori durante un'implementazione?

    • Dobbiamo aspettare l'orario di rilascio programmato per passare alla produzione?

    • Effettuiamo regolarmente aggiornamenti nella console dell'ambiente di produzione?

    • Esistono passaggi di distribuzione manuali che devono essere eseguiti nella console dell'ambiente di produzione per completare l'implementazione?

    • Più di una persona ha accesso in scrittura all'ambiente di produzione?

    • Più di cinque persone hanno accesso in scrittura all'ambiente di produzione?

  4. Dividi il tuo punteggio per 2. Questo è il punteggio CI/CD della tua pipeline.

  5. Confronta il livello della tua pipeline. CI/CD score to the following table to determine your pipeline's CI/CD

    Punteggio CI/CD

    Livello CI/CD

    9.5 o superiore

    Completamente CI/CD

    8—9

    Principalmente CI/CD

    5-7

    Neutral

    Inferiore a 5

    Non CI/CD

Se hai ottenuto un punteggio inferiore a 8, ti consigliamo di fissare un obiettivo per passare gradualmente al livello successivo. Una volta raggiunto tale obiettivo, gli stakeholder del prodotto dovrebbero valutare se e quando fissare un nuovo obiettivo. L'obiettivo di questo esercizio non è necessariamente quello di promuovere un cambiamento nella pipeline, ma piuttosto di sensibilizzare l'opinione pubblica su come si presenta un processo di implementazione completamente CI/CD e sulla posizione attuale delle pipeline in questo spettro.