diff --git a/website/assignments/Container-CI_CD.md b/website/assignments/Container-CI_CD.md new file mode 100644 index 0000000000000000000000000000000000000000..b5fb8ee37bea3566ba5e4406573b9e5241d7ef2c --- /dev/null +++ b/website/assignments/Container-CI_CD.md @@ -0,0 +1,16 @@ +# Ãœbungen Software-Entwicklung 3: Build Management & Testing + +## Ausgangslage +In der Vorlesung wurde die Container-Technologie (Docker) als auch die Prinzipien von Continuous Integration/Continuous Deployment vorgestellt. Mit Hilfe con GitLab sollen Sie nun diese Prinzipien in Ihrem Projekt anwenden. Voraussetzung dafür ist, dass sie Ihr Projekt mit Hilfe eines Buildmangementtools (z.B. `maven`) per Kommandozeile bauen, testen und paketieren können. + +## Aufgabe +* Erstellen Sie eine passende `.gitlab-ci.yml`, sodass sie die Build-Lifecycle Phasen `compile`, `test` und `package` in GitLab ausführen können. +* Ãœberlegen Sie sich welche Phasen des Build-Lifecycle immer ausgeführt werden müssen und welche nur bei bestimmten Ereignissen (z.B. neuer `Tag` erstellt). + +## Tipps +* Nutzen Sie als Start die `.gitlab-ci.yml` aus dem [Vorlesungsprojekt](https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022projekt) +* Weitere Informationen gibt es in der [GitLab Ci Dokumentation](https://docs.gitlab.com/ee/ci/) bzw. in der [Keyword Reference](https://docs.gitlab.com/ee/ci/yaml/) +* Ggf. kann es sinnvoll sein, Ihre Anwendung oder Teile davon (z.B. Datenbank, Webserver) in einem Container zu kapseln, sodass eine gleichbleibende Ausführungsumgebung sichergestellt ist. + +## Ziele +* Ihr Projekt wird über einen CI/CD-Mechanismus regelmäßig gebaut und getestet. \ No newline at end of file diff --git a/website/assignments/bewertungsbogen.xlsx b/website/assignments/bewertungsbogen.xlsx index 64a4ae2cfc9aa0f5e6f0e68036b4409677907e5c..11e439cd7eb2f5397d2724708950b306e951883e 100644 Binary files a/website/assignments/bewertungsbogen.xlsx and b/website/assignments/bewertungsbogen.xlsx differ diff --git a/website/container-ci-cd.html b/website/container-ci-cd.html index 06b6c20005e3e09f66eeedd7659e3d816af935b8..b46b28f51c28ef254ebfa9ea158abbcc190be94c 100644 --- a/website/container-ci-cd.html +++ b/website/container-ci-cd.html @@ -156,7 +156,7 @@ _Schematische Darstellung_ **Dockerfile**: Beschreibt die Konfiguration eines Images. -**docker-compose.yml**: Konfigurationsdatei zur Ausführung ein oder mehrer Container. +**docker-compose.yml**: Konfigurationsdatei zur Ausführung ein oder mehrere Container. --- # Grundprinzipien @@ -243,7 +243,7 @@ services: `docker-compose.yml` muss sich im aktuellen Verzeichnis befinden ```bash -# Mit M1 Chip docker compose, sonst docker-compose +# Mit M1 Chip "docker compose", sonst "docker-compose" docker compose up -d ``` @@ -314,8 +314,11 @@ _nach ["What is Continuous Deployment?", AWS, 2022](https://aws.amazon.com/devop # Beispiel CI/CD mit GitLab * Beschreibung in `.gitlab-ci.yml` +* Voraussetzungen: + * CI/CD-Funktionen wurden für das Repo aktiviert: Settings âž¡ï¸ General âž¡ï¸ Visibility, project features, permissions âž¡ï¸ CI/CD (aktivieren) + * Runner wurden zugewiesen: Settings âž¡ï¸ CI/CD âž¡ï¸ Runners âž¡ï¸ Enable shared runners for this project -> Blick ins Projekt +> Blick ins [Projekt](https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022projekt) </textarea> <script src="js/remark.min.js"> </script> diff --git a/website/index.html b/website/index.html index 73d20ccd4f647fb1d57bd5aa5d72ce8f748f5124..3303483670f74be3680343429d2d6ad811358711 100644 --- a/website/index.html +++ b/website/index.html @@ -15,6 +15,7 @@ <li><a href="softwarearchitektur.html" target="_blank">Softwarearchitektur</a></li> <li><a href="clean-code_doku_git.html" target="_blank">git, Dokumentation, Clean Code</a></li> <li><a href="maven-testing.html" target="_blank">Maven & Testing</a></li> + <li><a href="container-ci-cd.html" target="_blank">Container & CI/CD</a></li> </ul> <h3>Vorlesungnotizen</h3> @@ -23,6 +24,7 @@ <li><a href="https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022vorlesung/-/blob/main/website/lecturenotes/20220328.md" target="_blank">Vorlesungsnotizen - 28.03.2022</a></li> <li><a href="https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022vorlesung/-/blob/main/website/lecturenotes/20220404.md" target="_blank">Vorlesungsnotizen - 04.04.2022</a></li> <li><a href="https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022vorlesung/-/blob/main/website/lecturenotes/20220411.md" target="_blank">Vorlesungsnotizen - 11.04.2022</a></li> + <li><a href="https://gitlab.mi.hdm-stuttgart.de/jordine/se3sose2022vorlesung/-/blob/main/website/lecturenotes/20220509.md" target="_blank">Vorlesungsnotizen - 09.05.2022</a></li> </ul> <h3>Projekt</h3> @@ -49,7 +51,7 @@ <h3>Aufzeichnungen</h3> - <b>Die Aufzeichnungen sind nur für Teilnehmende der Veranstaltung bestimmt. Weitergabe nicht gestattet.</b> + <b>Die Aufzeichnungen sind nur für Teilnehmende der Veranstaltung bestimmt. Die Weitergabe ist nicht gestattet.</b> <ul> <li><a href="https://bigbluebutton.hdm-stuttgart.de/playback/presentation/2.3/cf93de2bb79bc2a9a9374f2f59a28fe89d96716b-1648475595746" target="_blank">28.03.: Software-Architektur</a></li> diff --git a/website/lecturenotes/20220509.md b/website/lecturenotes/20220509.md new file mode 100644 index 0000000000000000000000000000000000000000..f4c58c69f3796a940538ced3f4d2d821438fdd3a --- /dev/null +++ b/website/lecturenotes/20220509.md @@ -0,0 +1,6 @@ +# Vorlesungsnotizen - 09.05.2022 + +## Container + + +## CI/CD \ No newline at end of file