Skip to content

Instantly share code, notes, and snippets.

@mihkell
Last active April 8, 2020 11:38
Show Gist options
  • Save mihkell/ac0ea5c47655ec29066f34fafb180bf7 to your computer and use it in GitHub Desktop.
Save mihkell/ac0ea5c47655ec29066f34fafb180bf7 to your computer and use it in GitHub Desktop.
Flyway example for Stackoverflow
@Configuration
public class FlywayConfiguration {
@Bean(initMethod = "migrate")
@FlywayDataSource
public Flyway firstFlyway(DataSource dataSource) {
return new Flyway(
new FluentConfiguration()
.locations("db/first-migration")
.schemas("first")
.outOfOrder(true)
.dataSource(dataSource)
);
}
@Bean(initMethod = "migrate")
@FlywayDataSource
public Flyway secondFlyway(@Qualifier("secondDataSource") DataSource dataSource) {
return new Flyway(
new FluentConfiguration()
.dataSource(dataSource)
.schemas("second")
.outOfOrder(true)
.locations("db/second-migration")
);
}
}
@Configuration
public class FlywayTestConfig {
@Autowired
@Qualifier("secondFlyway")
private Flyway secondFlyway;
@Autowired
@Qualifier("firstFlyway")
private Flyway firstFlyway;
@PostConstruct
public void cleanBeforeMigrate() {
secondFlyway.clean();
secondFlyway.migrate();
firstFlyway.clean();
firstFlyway.migrate();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment