Flyway fungerar utmärkt för kontinuerlig leverans/distribution. Många kunder använder det i alla miljöer, inklusive produktion.
Det enskilt viktigaste för kaskadmigrering av DB mellan miljöer är att ha en process i tre steg:
Steg 1
Gammal applikationskod fungerar tillsammans med gammal DB.
Steg 2
Ny applikationskod distribueras och migrerar DB vid start. Denna migrering måste vara bakåtkompatibel så att den gamla applikationskoden fortfarande fungerar med den nya DB. Detta är viktigt eftersom:
- du kan sedan göra rullande uppgraderingar, uppgradera en nod i taget tills alla noder har den nya applikationskoden
- återställ omedelbart till den gamla applikationskoden om den nya är trasig
Det här steget kan involvera kompatibilitetsvyer och triggers för att göra jobbet.
Steg 3
När ändringarna har visat sig fungera, distribueras nästa version av applikationskoden tillsammans med de nödvändiga DB-migreringarna för att kassera eventuella återstående föråldrade (från steg 1) och kompatibilitetsstrukturer (från steg 2).