Bar*_*oss 13 flyway spring-boot
我正在使用Springboot和Flyway.迁移工作正常,但我希望能够clean在应用程序上下文加载test配置文件时执行flyway命令.
是否可以配置SpringBoot clean,然后migrate如果活动配置文件是test?
dun*_*nni 33
您可以像这样覆盖Flyway自动配置:
@Bean
@Profile("test")
public Flyway flyway(DataSource theDataSource) {
Flyway flyway = new Flyway();
flyway.setDataSource(theDataSource);
flyway.setLocations("classpath:db/migration");
flyway.clean();
flyway.migrate();
return flyway;
}
Run Code Online (Sandbox Code Playgroud)
在Spring Boot 1.3中(当前版本为1.3.0.M1,GA版本计划于9月发布),您可以使用FlywayMigrationStrategy bean来定义要运行的操作:
@Bean
@Profile("test")
public FlywayMigrationStrategy cleanMigrateStrategy() {
FlywayMigrationStrategy strategy = new FlywayMigrationStrategy() {
@Override
public void migrate(Flyway flyway) {
flyway.clean();
flyway.migrate();
}
};
return strategy;
}
Run Code Online (Sandbox Code Playgroud)
在较新版本的spring boot(例如2.0.2)中,spring.flyway.clean-on-validation-error如果由于sql文件中的更改而想使用clean,则可以使用该属性
| 归档时间: |
|
| 查看次数: |
11057 次 |
| 最近记录: |