Читать книгу Handbuch Infrastructure as Code - Kief Morris - Страница 130
Zugehörige Patterns
ОглавлениеEnvironment Branches (siehe »Code aus einem Quellcode-Repository ausliefern« auf Seite 367) können als eine Form von Copy-Paste Environments betrachtet werden. Jeder Branch besitzt eine Kopie des Codes und die Leute kopieren Code zwischen den Branches per Merging. Ein kontinuierliches Anwenden von Code (siehe »Code kontinuierlich anwenden« auf Seite 395) kann die Fallstricke von Copy-Paste vermeiden, weil es garantiert, dass sich der Code nicht von einer Umgebung zur nächsten unterscheidet. Bearbeiten Sie den Code beim Mergen in einen Umgebungs-Branch, entsteht die Gefahr des Copy-Paste-Antipattern.
Das Wrapper-Stack-Pattern (siehe »Pattern: Wrapper-Stack« auf Seite 120) ähnelt ebenfalls den Copy-Paste Environments. Ein Wrapper-Stack nutzt ein eigenes Stack-Projekt für jede Umgebung, um Konfigurationsparameter setzen zu können. Aber der Code für den Stack ist in Stack-Komponenten wie zum Beispiel wiederverwendbarem Modul-Code implementiert. Dieser Code selbst wird nicht für jede Umgebung kopiert, sondern wie ein wiederverwendbarer Stack übertragen. Aber wenn den Wrapper-Stack-Projekten mehr als die grundlegenden Stack-Instanz-Parameter hinzugefügt werden, kann sich daraus das Copy-Paste-Environment-Antipattern entwickeln.
Sollen Stack-Instanzen den gleichen Stack repräsentieren, ist das Reusable-Stack-Pattern normalerweise passender.