Stiamo utilizzando Flyway per migrare lo schema del database e abbiamo già più di 100 script di migrazione.Un modo per "comprimere" le migrazioni Flyway?
Dopo aver "eseguito lo schiacciamento" di più migrazioni in una singola migrazione di prima versione, ciò è corretto durante lo sviluppo, in quanto eliminiamo e ricreamo lo schema. Ma nella produzione ciò non funzionerebbe, in quanto Flyway non sarà in grado di convalidare le migrazioni.
Non sono riuscito a trovare alcuna documentazione o best practice su cosa fare in questo caso. Il problema è che la quantità dei file aumenta costantemente, non voglio vedere migliaia di file di migrazione ogni volta, essenzialmente se la produzione è già nell'ultima versione. Voglio dire, gli script di migrazione che hanno un numero di versione inferiore alla versione in produzione sono per noi irrilevanti, sarebbe fantastico se potessimo schiacciare quei file in una singola migrazione.
Utilizziamo MySQL.
Come dovremmo gestirlo?
Questo non significa che se sei un team di sviluppatori, allora tutti gli altri sviluppatori devono anche abbandonare la tabella schema_version? –
Sì. Ogni database che è "gestito" da quel set di script di migrazione Flyway avrà bisogno dello stesso trattamento. –
Quando si esegue la baseline, verrà verificato che lo schema esistente corrisponda al nuovo schema V1__Baseline.sql? Cosa succede se non desidero che flyway convalidi lo schema esistente con V1__Baseline.sql, potrei creare una riga con il risultato risultante nella tabella schema_version? – lloiacono