Remove liquibase check change log location
Missing change logs would lead to an exception even if the checkChangeLogLocation was set to false. Spring Boot's check would pass but Liquibase would fail later making this property redundant. Fixes gh-16232
This commit is contained in:
@@ -18,7 +18,6 @@ package org.springframework.boot.autoconfigure.liquibase;
|
||||
|
||||
import java.util.function.Supplier;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.persistence.EntityManagerFactory;
|
||||
import javax.sql.DataSource;
|
||||
|
||||
@@ -43,13 +42,11 @@ import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.core.io.Resource;
|
||||
import org.springframework.core.io.ResourceLoader;
|
||||
import org.springframework.jdbc.core.JdbcOperations;
|
||||
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations;
|
||||
import org.springframework.orm.jpa.AbstractEntityManagerFactoryBean;
|
||||
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
/**
|
||||
* {@link EnableAutoConfiguration Auto-configuration} for Liquibase.
|
||||
@@ -103,15 +100,6 @@ public class LiquibaseAutoConfiguration {
|
||||
this.liquibaseDataSource = liquibaseDataSource.getIfAvailable();
|
||||
}
|
||||
|
||||
@PostConstruct
|
||||
public void checkChangelogExists() {
|
||||
if (this.properties.isCheckChangeLogLocation()) {
|
||||
Resource resource = this.resourceLoader.getResource(this.properties.getChangeLog());
|
||||
Assert.state(resource.exists(), () -> "Cannot find changelog location: " + resource
|
||||
+ " (please add changelog or check your Liquibase " + "configuration)");
|
||||
}
|
||||
}
|
||||
|
||||
@Bean
|
||||
public SpringLiquibase liquibase() {
|
||||
SpringLiquibase liquibase = createSpringLiquibase();
|
||||
|
||||
@@ -38,11 +38,6 @@ public class LiquibaseProperties {
|
||||
*/
|
||||
private String changeLog = "classpath:/db/changelog/db.changelog-master.yaml";
|
||||
|
||||
/**
|
||||
* Whether to check that the change log location exists.
|
||||
*/
|
||||
private boolean checkChangeLogLocation = true;
|
||||
|
||||
/**
|
||||
* Comma-separated list of runtime contexts to use.
|
||||
*/
|
||||
@@ -128,14 +123,6 @@ public class LiquibaseProperties {
|
||||
this.changeLog = changeLog;
|
||||
}
|
||||
|
||||
public boolean isCheckChangeLogLocation() {
|
||||
return this.checkChangeLogLocation;
|
||||
}
|
||||
|
||||
public void setCheckChangeLogLocation(boolean checkChangeLogLocation) {
|
||||
this.checkChangeLogLocation = checkChangeLogLocation;
|
||||
}
|
||||
|
||||
public String getContexts() {
|
||||
return this.contexts;
|
||||
}
|
||||
|
||||
@@ -976,7 +976,7 @@
|
||||
"description": "Check the change log location exists.",
|
||||
"defaultValue": true,
|
||||
"deprecation": {
|
||||
"replacement": "spring.liquibase.check-change-log-location",
|
||||
"reason": "Liquibase has it's own check that checks if the change log location exists making this property redundant.",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
@@ -1875,6 +1875,16 @@
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.check-change-log-location",
|
||||
"type": "java.lang.Boolean",
|
||||
"description": "Check the change log location exists.",
|
||||
"defaultValue": true,
|
||||
"deprecation": {
|
||||
"reason": "Liquibase has it's own check that checks if the change log location exists making this property redundant.",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.messages.cache-seconds",
|
||||
"type": "java.lang.Integer",
|
||||
|
||||
@@ -592,7 +592,6 @@ content into your application. Rather, pick only the properties that you need.
|
||||
|
||||
# LIQUIBASE ({sc-spring-boot-autoconfigure}/liquibase/LiquibaseProperties.{sc-ext}[LiquibaseProperties])
|
||||
spring.liquibase.change-log=classpath:/db/changelog/db.changelog-master.yaml # Change log configuration path.
|
||||
spring.liquibase.check-change-log-location=true # Whether to check that the change log location exists.
|
||||
spring.liquibase.contexts= # Comma-separated list of runtime contexts to use.
|
||||
spring.liquibase.database-change-log-lock-table=DATABASECHANGELOGLOCK # Name of table to use for tracking concurrent Liquibase usage.
|
||||
spring.liquibase.database-change-log-table=DATABASECHANGELOG # Name of table to use for tracking change history.
|
||||
|
||||
Reference in New Issue
Block a user