Lackmustest für CI/CD-Pipelines - AWS Präskriptive Leitlinien

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Lackmustest für CI/CD-Pipelines

In der Chemie ist Lackmuspapier ein dünner Papierstreifen, der mit einem speziellen roten oder blauen Farbstoff behandelt wurde und zur Bestimmung des Säuregehalts einer Substanz verwendet wird. Eine Säure färbt blaues Lackmuspapier rot, eine Basis färbt rotes Lackmuspapier blau, und neutrale Substanzen beeinflussen die Farbe des Papiers überhaupt nicht.

Lackmuspapier bestimmt den Säuregehalt, indem es den pH-Wert einer Substanz misst. Ein pH-Wert über 8 ist sauer, liegt er unter 5, ist er basisch und liegt er zwischen 5 und 8, ist er neutral. In ähnlicher Weise ist derCI/CD-Lackmustesthilft Ihnen bei der Messung des CI/CD-Levels Ihrer Pipeline.

Um zu testen, ob Ihre Pipeline vollständig CI/CD ist
  1. Beginnen Sie mit einer Punktzahl von 0.

  2. Beantworten Sie jede der folgenden Fragen und addieren Sie für jede Antwort 1 zu Ihrer PunktzahlJa:

    • Haben unsere Repositorien jeweils genau einen Hauptzweig, der für die Bereitstellung in Umgebungen verwendet wird?

    • Übergeben wir Code häufig an den Hauptzweig und vermeiden so lange laufende Feature-Branches?

    • Hat unsere Pipeline einen einzigen Zugangspunkt? Mit anderen Worten, ruft unsere Pipeline den Code genau einmal aus jedem Repository ab?

    • Haben wir mehr als eine Bereitstellungsumgebung?

    • Sind unsere oberen und unteren Umgebungen generell synchron, wenn die Pipeline nicht läuft?

    • Führen wir vor der Bereitstellung Tests mit Code durch?

    • Führen wir Tests in einer Umgebung durch, bevor wir zur nächsten Umgebung wechseln?

    • Führt unsere Pipeline ein vollständiges Rollback durch und wird sie nach einem Ausfall beendet?

    • Wird unsere Pipeline bei der Wiederherstellung nach einem Ausfall vom ersten Schritt an neu gestartet?

    • Gehen wir bei der Behebung von Fehlern in der Produktion genauso vor wie bei der Freigabe von Funktionen für die Produktion?

    • Verwenden wir irgendeine Form von IaC-Vorlagen (Infrastructure as Code), um Code bereitzustellen?

  3. Beantworten Sie jede der folgenden Fragen und addieren Sie für jede Antwort 1 zu Ihrer Punktzahlnein:

    • Implementieren wir jemals direkt in einer Bereitstellungsumgebung von anderen Zweigstellen als der Hauptzweige aus?

    • Implementieren wir jemals direkt von einer Filiale aus in eine übergeordnete Umgebung oder eine Produktionsumgebung?

    • Finden wir häufig Fehler in höheren Umgebungen, die in niedrigeren Umgebungen nicht vorhanden waren?

    • Umgehen wir während einer Bereitstellung jemals niedrigere Umgebungen?

    • Warten wir mit der Bereitstellung in der Produktion bis zu einem geplanten Release-Zeitpunkt?

    • Führen wir regelmäßig Updates in der Konsole der Produktionsumgebung durch?

    • Gibt es manuelle Bereitstellungsschritte, die in der Konsole der Produktionsumgebung ausgeführt werden müssen, um die Bereitstellung abzuschließen?

    • Hat mehr als eine Person Schreibzugriff auf die Produktionsumgebung?

    • Haben mehr als fünf Personen Schreibzugriff auf die Produktionsumgebung?

  4. Teilen Sie Ihre Punktzahl durch 2. Dies ist der CI/CD-Score Ihrer Pipeline.

  5. Vergleichen Sie den CI/CD-Score Ihrer Pipeline mit der folgenden Tabelle, um den CI/CD-Level Ihrer Pipeline zu ermitteln.

    CI/CD-Punktzahl

    CI/CD-Ebene

    9.5 oder höher

    Vollständig CI/CD

    8—9

    Hauptsächlich CI/CD

    5—7

    Neutral

    Unter 5

    Nicht CI/CD

Wenn Sie weniger als 8 Punkte erzielt haben, empfehlen wir Ihnen, sich ein Ziel zu setzen, um schrittweise zum nächsten Level zu gelangen. Wenn dieses Ziel erreicht ist, sollten die Produktbeteiligten prüfen, ob und wann ein neues Ziel festgelegt werden sollte. Mit dieser Maßnahme soll nicht unbedingt eine Änderung Ihrer Pipeline befürwortet werden, sondern es soll ein Bewusstsein dafür geschaffen werden, wie ein vollständiger CI/CD-Implementierungsprozess aussieht und wo sich Ihre Pipelines derzeit auf diesem Spektrum befinden.