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 SoftwareSoftwareWährend Hardware die physischen Bestandteile eines Computers beschreibt, wie zum Beispiel eine Festplatte, wird der Begriff Software für die Programme eines Computers verwendet, die ihn funktionsfähig machen, wie zum Beispiel das Betriebssystem. 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.