update
This commit is contained in:
parent
1856de3fef
commit
ad7156e6dc
BIN
Writerside/images/image_859.png
Normal file
BIN
Writerside/images/image_859.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 23 KiB |
BIN
Writerside/images/image_860.png
Normal file
BIN
Writerside/images/image_860.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 208 KiB |
BIN
Writerside/images/image_861.png
Normal file
BIN
Writerside/images/image_861.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 20 KiB |
BIN
Writerside/images/image_862.png
Normal file
BIN
Writerside/images/image_862.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 24 KiB |
@ -113,7 +113,7 @@
|
||||
<toc-element topic="01_ImplementingForMaintainability.md"/>
|
||||
<toc-element topic="02_TestingForContinuousQuality.md"/>
|
||||
<toc-element topic="03_ContinousDevelopment.md"/>
|
||||
<toc-element topic="05_GrundlagenGrammatiken.md"/>
|
||||
<toc-element topic="04_Operations.md"/>
|
||||
|
||||
</toc-element>
|
||||
<toc-element toc-title="Theoretische Informatik">
|
||||
@ -131,6 +131,8 @@
|
||||
<toc-element topic="02_GrundlagenFormaleSprachen.md"/>
|
||||
<toc-element topic="03_GrundlagenEndlicherAutomaten.md"/>
|
||||
<toc-element topic="04_GrenzenGroesseEA.md"/>
|
||||
<toc-element topic="05_GrundlagenGrammatiken.md"/>
|
||||
|
||||
</toc-element>
|
||||
|
||||
</toc-element>
|
||||
|
@ -68,7 +68,7 @@
|
||||
- Vermeide lange Branches
|
||||
- Überprüfe regelmäßig die Main-Line
|
||||
|
||||
### VC - Branching GitFlow
|
||||
#### VC - Branching GitFlow
|
||||
- 
|
||||
- Development Branch (develop)
|
||||
- master/main für produktionsfertigen Code
|
||||
@ -86,4 +86,87 @@
|
||||
- direkt auf main mergen, ...
|
||||
|
||||
### Dependency Management
|
||||
-
|
||||
- Komponenten / Module von anderen Teams innerhalb der Organisation
|
||||
- 3rd Party Bibliotheken
|
||||
|
||||
#### Managing Components
|
||||
- größere Projekte sollten in mehrere Komponenten zerlegt werden
|
||||
- ggf. auch separate Pipelines zum builden
|
||||
|
||||
#### Managing External Libraries
|
||||
- kommen meist in binärer Form
|
||||
- am besten lokale Kopien in Versionen, welche funktionieren
|
||||
- latest könnte bugs haben / die Anwendung kaputt machen
|
||||
- trotzdem regelmäßig updaten!
|
||||
|
||||
### Software Configurations
|
||||
- sollten gemanaged und getestet werden
|
||||
- erlauben der Software mehr Flexibilität
|
||||
- Wann?
|
||||
- Während des buildens / packaging
|
||||
- schlecht, dann ist das image nicht universell einsetzbar
|
||||
- Deployment / Startup / Run Time
|
||||
- egal wann – sie sollten immer über den gleichen Mechanismus geschehen
|
||||
- bspw. Passwörter sollten nicht gehardcoded werden
|
||||
|
||||
### Environment Management
|
||||
- Jede Software benötigt Hardware/Software/Infrastruktur/externe Systeme
|
||||
- = Environment
|
||||
- Sollte automatisiert laufen
|
||||
- sollte einfacher sein einfach den kaputten wegzuwerfen und neu zu erstellen, als zu reparieren
|
||||
|
||||
## CI/CD
|
||||

|
||||
- Continuous Integration
|
||||
- kein Dev will immer die gesamte Anwendung testen / laufen lassen
|
||||
- CI übernimmt
|
||||
- automatisierte Tests
|
||||
- Bugs werden früher gefunden
|
||||
- Continuous Delivery
|
||||
- Erweiterung von CI um Release in Staging
|
||||
- Continuous Deployment
|
||||
- automatisches Deployment in Produktionsumgebung
|
||||
|
||||
### CI/CD Good Practices
|
||||
- Wenn ein Fehler auftritt, ist es höchste Prio diesen zu fixen
|
||||
- Vorher keine weiteren Änderungen pushen
|
||||
- nicht nach Hause gehen, wenns nicht mehr geht
|
||||
- entweder fixen oder rückgängig machen
|
||||
- wer Änderungen macht ist auch verantwortlich
|
||||
- Tests vorher lokal laufen lassen
|
||||
- wenn welche fehlschlagen → nicht auskommentieren
|
||||
- Pipeline nach dem pushen beobachten
|
||||
- Pipeline stoppen lassen bei Fehlern
|
||||
- fehlschlagende Tests
|
||||
- langsame Tests
|
||||
- hässlicher Codestyle
|
||||
|
||||
## Deployment Pipeline
|
||||

|
||||
|
||||
- binarys so selten wie möglich erstellen
|
||||
- dauert lange
|
||||
- falls eine doppelt verwendet werden kann → doppelt nutzen
|
||||
- bspw. Staging/Production
|
||||
- Smoke-Testing vom Environment
|
||||
- primitiv checken, ob Anwendung läuft und bspw. Startseite gewünschte Daten zeigt
|
||||
- Staging-Umgebung nutzen für Acceptance Stage
|
||||
- Alle Änderungen sollten durch die Pipeline gehen
|
||||
- Falls irgendwas fehlschlägt → Pipeline stoppen
|
||||
|
||||
### Stages
|
||||
#### Commit Stage
|
||||

|
||||
- Bestandteile:
|
||||
- Code kompilieren
|
||||
- Tests laufen lassen (Unit, Integration)
|
||||
- Binaries erstellen
|
||||
- statische Codeanalyse
|
||||
- Falls Commit Stage funktioniert → Release Kandidaten erstellen
|
||||
|
||||
#### Acceptance Stage
|
||||

|
||||
- Bestandteile
|
||||
- Service Testing
|
||||
- Laufen in produktionsähnlicher Umgebung
|
||||
|
||||
|
@ -0,0 +1 @@
|
||||
# Operations
|
Loading…
x
Reference in New Issue
Block a user