CI/CD


CI/CD

Erklärung

Synonyme & Übersetzungen

Synonyme: Die Abkürzung “CI/CD” steht für Continuous Integration und Continuous Delivery/Deployment
Übersetzungen: kontinuierliche Integration & kontinuierliche Auslieferung / Bereitstellung

Definition

CI/CD beschreibt einen automatisierten Prozess in der Softwareentwicklung, bei dem neue Änderungen der Software regelmäßig zusammengeführt (continuous integration), getestet und den Nutzer*innen der Software bereitgestellt (continuous deployment) werden.

CI/CD ist eng mit dem Konzept des Deployments verknüpft, da es diesen letzten Schritt der Entwicklung einer Software – die Bereitstellung der Software für die Nutzer*innen – stark vereinfacht und durch Automatisierung beschleunigt. Als Teil des DevOps-Ansatzes trägt CI/CD dazu bei, Software schneller, zuverlässiger und mit weniger manueller Arbeit in Betrieb zu nehmen. Während DevOps der übergeordnete Ansatz ist, der Entwicklung und Betrieb zusammenbringt, beschreibt C/CD die konkreten Prozesse und Werkzeuge, mit denen dieser kontinuierliche Fluss von Änderungen automatisiert wird.

Die folgende Grafik zeigt den grundsätzlichen Ablauf eines CI/CD Prozesses:

Beispiele

Automatisierte Veröffentlichung einer Projekt-Website

Eine NGO hat mit einem Entwicklerteam eine neue Projektwebsite erstellt. Änderungen – etwa neue Termine, aktualisierte Texte oder gestalterische Anpassungen – werden direkt im Quellcode vorgenommen, zum Beispiel durch interne Entwickler*innen oder eine beauftragte Agentur.

Sobald eine Änderung gespeichert und in ein Versionsverwaltungssystem wie Git übertragen wird (zum Beispiel über GitHub oder GitLab), startet ein automatisierter CI/CD-Prozess. Die Schritte können folgendermaßen aussehen

  • Code-Übertragung: Die Änderung wird in einem sogenannten „Commit“ gespeichert und mit "Push" in das zentrale “Repository” (typischerweise ein geteilter Ordner in der Cloud) übertragen.

  • Build & Test: Auf einem virtuellen Server oder in einer Cloud-Umgebung wird der Code automatisch gebaut, d.h. in eine funktionierende Website übersetzt.

  • Staging-Umgebung: Die neue Version der Website wird auf einer internen Testumgebung (Staging) bereitgestellt (siehe Deployment). Dort kann das Team die Änderungen testen und Feedback geben – ohne dass die Öffentlichkeit sie sieht.

  • Freigabe & Produktivschaltung: Nach erfolgreichem Test wird die freigegebene Version automatisch auf die Live-Website (Produktionsumgebung) übertragen. Ein manuelles Eingreifen des IT-Teams ist in diesem Prozess nicht mehr erforderlich.

Wann ist CI/CD für euch relevant?

Hieran arbeiten wir noch.

Was sind die Implikationen von CI/CD für euch?

Hieran arbeiten wir noch.

Mehr zu CI/CD

Hieran arbeiten wir noch.

Weiterführende Materialien

Hieran arbeiten wir noch.