xx wurde ge x

This commit is contained in:
2020-03-20 13:56:33 +01:00
parent 57ea71207c
commit 8aae4bc3c8
7 changed files with 70 additions and 83 deletions

View File

@@ -1,6 +1,7 @@
\hypertarget{automatisierung-im-softwareentwicklungsprozess}{%
\chapter{Automatisierung im Softwareentwicklungsprozess}
\label{automatisierung-im-softwareentwicklungsprozess}}
\todo{Quellen}
Im diesem Kapitel wird ausgehend von den Phasen des
Softwareentwicklungsprozesses die Funktionsweise von \cicd aufgezeigt.
@@ -147,11 +148,8 @@ GitLab-CI}.
~
\subsection*{Continuous Delivery / Continuous Deployment}
\todo{Mehr zu CDE und CD schreiben}
Die Abkürzung CD kann sowohl für Continuous Delivery als auch für
Continuous Deployment stehen und bezeichnen die weitere Automatisierung
in der Pipeline und stehen für das Ausmaß der Automatisierung.
\todo{the fuck}
Die Abkürzung CD kann sowohl für \cdel als auch für
\cdl stehen. Sie unterscheiden sich im Ausmaß der Automatisierung innerhalb der Pipeline.
\subsection{Continuous Delivery}\label{cde}
@@ -161,6 +159,13 @@ nachdem sie zuvor durch \ci integriert, versioniert und archiviert
abgelegt wurde. Eine automatische Installation in dieser Zielumgebung
findet nicht statt.
\subsubsection*{Beispiel für eine cloudähnliche Container-Zielumgebung:}
In dieser Umgebung können die Container-Images nur von einem lokalen Image-Registry bezogen werden.
Continuous Delivery spielt die Artefakte eines erfolgreichen Release-CI-Run automatisch in das lokale Image-Registry der Zielumgebung.
Das Container-Image steht nun bereit, wurde jedoch noch nicht installiert.
\subsection{Continuous Deployment}\label{cd}
Eine weiterführende Automatisierung stellt das \textbf{\cdl}
dar. Es erweitert die Funktionalität des \cdel, in dem es
@@ -174,24 +179,22 @@ Codeänderungen innerhalb von wenigen Minuten produktiv werden können.
~
Das Risiko ist geringer\todo{welches risiko}, weil Änderungen in kleinen Schritten
durchgeführt werden und bei jedem \textit{CI -- Run} alle Tests wiederholt und am
Ende in den Betrieb gebracht werden.
Das Risiko für Fehler im Betrieb ist geringer, da Änderungen in kleinen Schritten mit jedem CI/CD Run integriert, getestet werden.
\section{Git und die Bedeutung von Branches}
Das Versionmanagementsystem Git basiert auf dem Konzept der Branches,
\label{grund:git}
Die \scm Git besitzt im Zusammenhang mit CI/CD die Möglichkeit, die operativen Systeme versioniert zu steuern. Dies wird auch als \textbf{GitOps} bezeichnet und ist eine weit verbreitete CI/CD Methode.
Git basiert auf dem Konzept von Branches,
welches verschiedene Codeversionen enthalten kann. Ein Branch ist ein
Entwicklungszweig, auf dem die Änderungen innerhalb eines
Projekt-Repository sequenziell fortgeschrieben werden.
~
\todo{GitOps noch ürgentwo als kleinen Merker einbaue}
Der Name des Branches ist dafür ausschlaggebend, welcher Pfad in der
Pipeline durchlaufen wird. Das Branch-Pattern beschreibt die Funktion,
welche dem Branch zukommt. Je nach Art der Änderung \todo{kleine veränderung}auf einem Branch,
welche dem Branch zukommt. Wird eine Änderung auf einem Branch,
wird sie auf die gewünschte Weise vom CI/CD System verwaltet, integriert
und in den Betrieb gebracht.