标志以跳过飞路迁移序列

Flag to skip flyway migration sequence

我们是否有办法根据 spring 从属性文件中读取的配置文件或标志来跳过飞路迁移。就像下面给出的 skip 属性 。 skip 属性 不存在,因此它会抛出异常,但我认为您可以通过查看 bean 配置来了解。我们如何使用 spring

中的现有飞路版本 3.2.1 实现此目的
<bean id="flyway-integ" class="org.flywaydb.core.Flyway" init-method="migrate" depends-on="dataSource">
        <property name="dataSource" ref="dataSource" />
        <property name="initOnMigrate" value="true" />
        <property name="validateOnMigrate" value="false" />
        <property name="locations" value="migration/prod" />
        <property name="skip" value="${dev.mode}" />
</bean>

您可以使用 spring 注释 @ConditionalOnProperty 并在 Spring 配置文件的配置列表中设置 flyway.enabled=false 来实现这一点。

@ConditionalOnBean(DataSource.class)
@ConditionalOnProperty(prefix = "flyway", name = "enabled", matchIfMissing = true)
@Bean(initMethod = "migrate")
@ConfigurationProperties(prefix = "flyway")
public Flyway flyway() {
    Flyway flyway = new Flyway();