Zusammenfassung der bewährten Methoden
Nachstehend sind einige bewährte Methoden und zu vermeidende Prozesse für CI/CD aufgeführt.
Empfohlen:
-
Behandeln Sie Ihre Infrastruktur als Code.
-
Verwenden Sie die Versionskontrolle für Ihren Infrastrukturcode.
-
Nutzen Sie Bugtracking-/Ticketing-Systeme.
-
Lassen Sie Kollegen Änderungen überprüfen, bevor Sie sie anwenden.
-
Richten Sie Infrastruktur-Codemuster/-designs ein.
-
Testen Sie Infrastrukturänderungen wie Codeänderungen.
-
-
Stellen Sie integrierte Entwicklerteams mit nicht mehr als 12 autarken Mitgliedern zusammen.
-
Lassen Sie alle Entwickler für ihren Code häufig Commits in den Hauptstamm ausführen, ohne lange Funktionszweige.
-
Übernehmen Sie konsequent ein Build-System wie Maven oder Gradle in Ihrer gesamten Organisation und standardisieren Sie Builds.
-
Lassen Sie die Entwickler Einheitentests entwickeln, um die Codebasis zu annähernd 100% abzudecken.
-
Stellen Sie sicher, dass die Einheitentests in Dauer, Anzahl und Umfang 70% der gesamten Tests ausmachen.
-
Stellen Sie sicher, dass die Einheitentests auf dem neuesten Stand sind und nicht vernachlässigt werden. Fehler bei Einheitentests sollten behoben, nicht umgangen werden.
-
Behandeln Sie Ihre Continuous-Delivery-Konfiguration als Code.
-
Richten Sie rollenbasierte Sicherheitskontrollen ein (d. h. legen Sie fest, wer wann was tun kann).
-
Überwachen/verfolgen Sie nach Möglichkeit jede Ressource.
-
Richten Sie Warnungen zu Diensten, Verfügbarkeit und Reaktionszeiten ein.
-
Halten Sie sich an das Motto „Erfassen, lernen und verbessern“.
-
Teilen Sie den Zugriff mit allen Teammitgliedern.
-
Planen Sie Metriken und Überwachung für den Lebenszyklus.
-
-
Definieren und verfolgen Sie Standardmetriken.
-
Anzahl der Builds
-
Anzahl der Bereitstellungen
-
Durchschnittliche Zeit, bis Änderungen für die Produktion übernommen werden
-
Durchschnittliche Zeit von der ersten Pipeline-Phase bis zu jeder einzelnen Phase
-
Anzahl der Änderungen, die für die Produktion übernommen werden
-
Durchschnittliche Entwicklungszeit
-
-
Verwenden Sie für jeden Zweig und jedes Team eigene Pipelines.
Zu vermeiden:
-
Lange Zweige mit großen komplizierten Zusammenführungen
-
Manuelle Tests
-
Manuelle Genehmigungsprozesse, Gates, Codeüberprüfungen und Sicherheitsüberprüfungen