Flyway eignet sich hervorragend für Continuous Delivery/Deployment. Viele Kunden verwenden es in allen Umgebungen, einschließlich der Produktion.
Das Wichtigste für die Kaskadierung von DB-Migrationen über Umgebungen hinweg ist ein dreistufiger Prozess:
Schritt 1
Alter Anwendungscode funktioniert zusammen mit alter DB.
Schritt 2
Neuer Anwendungscode wird bereitgestellt und migriert DB beim Start. Diese Migration muss abwärtskompatibel sein, damit alter Anwendungscode weiterhin mit der neuen DB funktioniert. Dies ist wichtig, weil:
- Sie können dann fortlaufende Upgrades durchführen, indem Sie einen Knoten nach dem anderen aktualisieren, bis alle Knoten den neuen Anwendungscode haben
- sofortiger Rollback zum alten Anwendungscode, wenn der neue defekt ist
Dieser Schritt kann Kompatibilitätsansichten und Trigger beinhalten, um die Arbeit zu erledigen.
Schritt 3
Nachdem nachgewiesen wurde, dass die Änderungen funktionieren, wird die nächste Version des Anwendungscodes zusammen mit den erforderlichen DB-Migrationen bereitgestellt, um alle verbleibenden veralteten (aus Schritt 1) und Kompatibilitätsstrukturen (aus Schritt 2) zu verwerfen.