PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

C'è un modo per eseguire l'attività Flyway escludendo alcune tabelle?

Ho avuto questo problema per l'ambiente di test e volevo eliminare lo schema tramite flyway. L'ho risolto manipolando la sequenza dei fagioli primaverili del flyway. Innanzitutto, ho abbandonato l'estensione postgis prima di flyway.clean() e poi alla prima riga di V1__init.sql add CREATE EXTENSION postgis SCHEMA public; :

@Bean
@Profile("test")
public Flyway flyway(DataSource dataSource) {
    Flyway flyway = new Flyway();
    flyway.setDataSource(dataSource);
    flyway.setLocations("classpath:db/migration");

    runSql("drop extension IF EXISTS postgis CASCADE;", dataSource);

    flyway.clean();
    flyway.migrate();

    return flyway;
}