parent
74f6c75b00
commit
0f1c0d97d1
|
@ -73,6 +73,7 @@ include "spring-boot-project:spring-boot-jdbc"
|
|||
include "spring-boot-project:spring-boot-jetty"
|
||||
include "spring-boot-project:spring-boot-jms"
|
||||
include "spring-boot-project:spring-boot-jsonb"
|
||||
include "spring-boot-project:spring-boot-liquibase"
|
||||
include "spring-boot-project:spring-boot-mail"
|
||||
include "spring-boot-project:spring-boot-parent"
|
||||
include "spring-boot-project:spring-boot-reactor-netty"
|
||||
|
|
|
@ -41,6 +41,7 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-jetty"))
|
||||
optional(project(":spring-boot-project:spring-boot-jsonb"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
optional(project(":spring-boot-project:spring-boot-mail"))
|
||||
optional(project(":spring-boot-project:spring-boot-reactor-netty"))
|
||||
optional(project(":spring-boot-project:spring-boot-tomcat"))
|
||||
|
|
|
@ -27,8 +27,8 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.liquibase.DataSourceClosingSpringLiquibase;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.DataSourceClosingSpringLiquibase;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
|
||||
|
|
|
@ -35,11 +35,11 @@ import org.springframework.boot.autoconfigure.data.redis.RedisAutoConfiguration;
|
|||
import org.springframework.boot.autoconfigure.data.redis.RedisRepositoriesAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.data.rest.RepositoryRestMvcAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.hazelcast.HazelcastAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.mongo.MongoReactiveAutoConfiguration;
|
||||
import org.springframework.boot.context.annotation.UserConfigurations;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.test.context.runner.ReactiveWebApplicationContextRunner;
|
||||
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
|
||||
import org.springframework.boot.testsupport.classpath.ClassPathExclusions;
|
||||
|
|
|
@ -21,7 +21,7 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.boot.actuate.liquibase.LiquibaseEndpoint;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.liquibase.DataSourceClosingSpringLiquibase;
|
||||
import org.springframework.boot.liquibase.autoconfigure.DataSourceClosingSpringLiquibase;
|
||||
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
|
|
@ -23,8 +23,8 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.web.documentation.MockMvcEndpointDocumentationTests;
|
||||
import org.springframework.boot.actuate.liquibase.LiquibaseEndpoint;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.EmbeddedDataSourceConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
|
|
@ -44,6 +44,7 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-jetty"))
|
||||
optional(project(":spring-boot-project:spring-boot-jsonb"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
optional(project(":spring-boot-project:spring-boot-reactor-netty"))
|
||||
optional(project(":spring-boot-project:spring-boot-tomcat"))
|
||||
optional(project(":spring-boot-project:spring-boot-undertow"))
|
||||
|
|
|
@ -29,10 +29,10 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.boot.actuate.liquibase.LiquibaseEndpoint.LiquibaseBeanDescriptor;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationSettings;
|
||||
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
|
||||
import org.springframework.boot.testsupport.classpath.resources.WithResource;
|
||||
|
|
|
@ -67,9 +67,6 @@ dependencies {
|
|||
optional("org.hibernate.orm:hibernate-core")
|
||||
optional("org.hibernate.validator:hibernate-validator")
|
||||
optional("org.jooq:jooq")
|
||||
optional("org.liquibase:liquibase-core") {
|
||||
exclude(group: "javax.xml.bind", module: "jaxb-api")
|
||||
}
|
||||
optional("org.postgresql:postgresql")
|
||||
optional("org.slf4j:jul-to-slf4j")
|
||||
optional("org.slf4j:slf4j-api")
|
||||
|
|
|
@ -6,13 +6,8 @@ org.springframework.boot.rsocket.context.RSocketPortInfoApplicationContextInitia
|
|||
org.springframework.boot.env.EnvironmentPostProcessor=\
|
||||
org.springframework.boot.reactor.ReactorEnvironmentPostProcessor
|
||||
|
||||
# Failure Analyzers
|
||||
org.springframework.boot.diagnostics.FailureAnalyzer=\
|
||||
org.springframework.boot.liquibase.LiquibaseChangelogMissingFailureAnalyzer
|
||||
|
||||
# Database Initializer Detectors
|
||||
org.springframework.boot.sql.init.dependency.DatabaseInitializerDetector=\
|
||||
org.springframework.boot.liquibase.LiquibaseDatabaseInitializerDetector,\
|
||||
org.springframework.boot.orm.jpa.JpaDatabaseInitializerDetector,\
|
||||
org.springframework.boot.r2dbc.init.R2dbcScriptDatabaseInitializerDetector
|
||||
|
||||
|
|
|
@ -65,6 +65,7 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-jackson"))
|
||||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-jsonb"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
optional(project(":spring-boot-project:spring-boot-reactor-netty"))
|
||||
optional(project(":spring-boot-project:spring-boot-tomcat"))
|
||||
optional(project(":spring-boot-project:spring-boot-tx"))
|
||||
|
|
|
@ -33,7 +33,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnSingleCandidate;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.sql.init.OnDatabaseInitializationCondition;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
|
@ -56,8 +55,7 @@ import org.springframework.transaction.PlatformTransactionManager;
|
|||
* @author Stephane Nicoll
|
||||
* @since 2.0.0
|
||||
*/
|
||||
@AutoConfiguration(after = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class,
|
||||
LiquibaseAutoConfiguration.class })
|
||||
@AutoConfiguration(after = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class })
|
||||
@ConditionalOnClass({ Scheduler.class, SchedulerFactoryBean.class, PlatformTransactionManager.class })
|
||||
@EnableConfigurationProperties(QuartzProperties.class)
|
||||
public class QuartzAutoConfiguration {
|
||||
|
|
|
@ -1317,35 +1317,6 @@
|
|||
"since": "3.1.0"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.check-change-log-location",
|
||||
"type": "java.lang.Boolean",
|
||||
"description": "Check the change log location exists.",
|
||||
"defaultValue": true,
|
||||
"deprecation": {
|
||||
"reason": "Liquibase has its own check that checks if the change log location exists making this property redundant.",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.labels",
|
||||
"deprecation": {
|
||||
"replacement": "spring.liquibase.label-filter",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.show-summary",
|
||||
"defaultValue": "summary"
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.show-summary-output",
|
||||
"defaultValue": "log"
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.ui-service",
|
||||
"defaultValue": "logger"
|
||||
},
|
||||
{
|
||||
"name": "spring.mustache.prefix",
|
||||
"defaultValue": "classpath:/templates/"
|
||||
|
@ -2375,17 +2346,6 @@
|
|||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.change-log",
|
||||
"providers": [
|
||||
{
|
||||
"name": "handle-as",
|
||||
"parameters": {
|
||||
"target": "org.springframework.core.io.Resource"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "spring.mvc.converters.preferred-json-mapper",
|
||||
"values": [
|
||||
|
|
|
@ -66,7 +66,6 @@ org.springframework.boot.autoconfigure.jooq.JooqAutoConfiguration
|
|||
org.springframework.boot.autoconfigure.kafka.KafkaAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.ldap.embedded.EmbeddedLdapAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.ldap.LdapAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.mongo.MongoReactiveAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.mustache.MustacheAutoConfiguration
|
||||
|
|
|
@ -60,7 +60,6 @@ import org.springframework.boot.autoconfigure.AutoConfigurations;
|
|||
import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage;
|
||||
import org.springframework.boot.autoconfigure.batch.BatchAutoConfiguration.SpringBootBatchConfiguration;
|
||||
import org.springframework.boot.autoconfigure.batch.domain.City;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||
|
@ -68,6 +67,7 @@ import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
|||
import org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.EmbeddedDataSourceConfiguration;
|
||||
import org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationMode;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationSettings;
|
||||
import org.springframework.boot.test.context.FilteredClassLoader;
|
||||
|
|
|
@ -58,7 +58,6 @@ import org.springframework.beans.factory.BeanCreationException;
|
|||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.TestAutoConfigurationPackage;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfigurationTests.JpaUsingApplicationListenerConfiguration.EventCapturingApplicationListener;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration.HibernateRuntimeHints;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.mapping.NonAnnotatedEntity;
|
||||
|
@ -66,6 +65,7 @@ import org.springframework.boot.autoconfigure.orm.jpa.test.City;
|
|||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.XADataSourceAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.orm.jpa.hibernate.SpringImplicitNamingStrategy;
|
||||
import org.springframework.boot.orm.jpa.hibernate.SpringJtaPlatform;
|
||||
import org.springframework.boot.sql.init.dependency.DependsOnDatabaseInitialization;
|
||||
|
|
|
@ -45,12 +45,12 @@ import org.quartz.simpl.RAMJobStore;
|
|||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceProperties;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationSettings;
|
||||
import org.springframework.boot.test.context.assertj.AssertableApplicationContext;
|
||||
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
|
||||
|
|
|
@ -26,13 +26,13 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.web.ServerProperties;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcTemplateAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializer;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationMode;
|
||||
import org.springframework.boot.sql.init.DatabaseInitializationSettings;
|
||||
import org.springframework.boot.test.context.FilteredClassLoader;
|
||||
|
|
|
@ -2002,6 +2002,7 @@ bom {
|
|||
"spring-boot-jetty",
|
||||
"spring-boot-jms",
|
||||
"spring-boot-jsonb",
|
||||
"spring-boot-liquibase",
|
||||
"spring-boot-loader",
|
||||
"spring-boot-loader-classic",
|
||||
"spring-boot-loader-tools",
|
||||
|
|
|
@ -29,6 +29,7 @@ dependencies {
|
|||
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-flyway"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker"))
|
||||
dockerTestImplementation("com.hazelcast:hazelcast")
|
||||
dockerTestImplementation("com.redis:testcontainers-redis")
|
||||
|
@ -55,6 +56,7 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure"))
|
||||
optional(project(":spring-boot-project:spring-boot-flyway"))
|
||||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
optional("com.hazelcast:hazelcast")
|
||||
optional("io.r2dbc:r2dbc-spi")
|
||||
optional("org.mongodb:mongodb-driver-core")
|
||||
|
|
|
@ -16,8 +16,8 @@
|
|||
|
||||
package org.springframework.boot.docker.compose.service.connection.liquibase;
|
||||
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseConnectionDetails;
|
||||
import org.springframework.boot.docker.compose.service.connection.test.DockerComposeTest;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseConnectionDetails;
|
||||
import org.springframework.boot.testsupport.container.TestImage;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
|
|
@ -16,9 +16,9 @@
|
|||
|
||||
package org.springframework.boot.docker.compose.service.connection.liquibase;
|
||||
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseConnectionDetails;
|
||||
import org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseConnectionDetails;
|
||||
|
||||
/**
|
||||
* {@link ConnectionDetailsFactory} that produces {@link LiquibaseConnectionDetails} by
|
||||
|
|
|
@ -88,6 +88,7 @@ dependencies {
|
|||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-jetty", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-jms", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-jsonb", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-liquibase", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-mail", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-reactor-netty", configuration: "autoConfigurationMetadata"))
|
||||
autoConfiguration(project(path: ":spring-boot-project:spring-boot-testcontainers", configuration: "autoConfigurationMetadata"))
|
||||
|
@ -111,6 +112,7 @@ dependencies {
|
|||
configurationProperties(project(path: ":spring-boot-project:spring-boot-jdbc", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-jetty", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-jms", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-liquibase", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-mail", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-reactor-netty", configuration: "configurationPropertiesMetadata"))
|
||||
configurationProperties(project(path: ":spring-boot-project:spring-boot-test-autoconfigure", configuration: "configurationPropertiesMetadata"))
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
* Copyright 2012-present the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the License);
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* https://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
|
||||
plugins {
|
||||
id "java-library"
|
||||
id "org.springframework.boot.auto-configuration"
|
||||
id "org.springframework.boot.configuration-properties"
|
||||
id "org.springframework.boot.deployed"
|
||||
id "org.springframework.boot.optional-dependencies"
|
||||
}
|
||||
|
||||
description = "Spring Boot Liquibase"
|
||||
|
||||
dependencies {
|
||||
api(project(":spring-boot-project:spring-boot"))
|
||||
api(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
api("org.liquibase:liquibase-core") {
|
||||
exclude(group: "javax.xml.bind", module: "jaxb-api")
|
||||
}
|
||||
|
||||
optional(project(":spring-boot-project:spring-boot-autoconfigure"))
|
||||
|
||||
testImplementation(project(":spring-boot-project:spring-boot-test"))
|
||||
testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support"))
|
||||
testImplementation("com.h2database:h2")
|
||||
testImplementation("com.zaxxer:HikariCP")
|
||||
|
||||
testRuntimeOnly("ch.qos.logback:logback-classic")
|
||||
testRuntimeOnly("org.postgresql:postgresql")
|
||||
}
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
|
||||
|
@ -31,7 +31,7 @@ import org.springframework.util.ReflectionUtils;
|
|||
* {@link DataSource} once the database has been migrated.
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
* @since 2.0.6
|
||||
* @since 4.0.0
|
||||
*/
|
||||
public class DataSourceClosingSpringLiquibase extends SpringLiquibase implements DisposableBean {
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
|
||||
|
@ -37,13 +37,12 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBooleanProp
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration.LiquibaseAutoConfigurationRuntimeHints;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration.LiquibaseDataSourceCondition;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
|
||||
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||
import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration.LiquibaseAutoConfigurationRuntimeHints;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration.LiquibaseDataSourceCondition;
|
||||
import org.springframework.boot.sql.init.dependency.DatabaseInitializationDependencyConfigurer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Conditional;
|
||||
|
@ -71,9 +70,9 @@ import org.springframework.util.StringUtils;
|
|||
* @author Evgeniy Cheban
|
||||
* @author Moritz Halbritter
|
||||
* @author Ahmed Ashour
|
||||
* @since 1.1.0
|
||||
* @since 4.0.0
|
||||
*/
|
||||
@AutoConfiguration(after = { DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class })
|
||||
@AutoConfiguration(after = DataSourceAutoConfiguration.class)
|
||||
@ConditionalOnClass({ SpringLiquibase.class, DatabaseChange.class })
|
||||
@ConditionalOnBooleanProperty(name = "spring.liquibase.enabled", matchIfMissing = true)
|
||||
@Conditional(LiquibaseDataSourceCondition.class)
|
||||
|
@ -82,8 +81,7 @@ import org.springframework.util.StringUtils;
|
|||
public class LiquibaseAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
public LiquibaseSchemaManagementProvider liquibaseDefaultDdlModeProvider(
|
||||
ObjectProvider<SpringLiquibase> liquibases) {
|
||||
LiquibaseSchemaManagementProvider liquibaseDefaultDdlModeProvider(ObjectProvider<SpringLiquibase> liquibases) {
|
||||
return new LiquibaseSchemaManagementProvider(liquibases);
|
||||
}
|
||||
|
||||
|
@ -91,7 +89,7 @@ public class LiquibaseAutoConfiguration {
|
|||
@ConditionalOnClass(ConnectionCallback.class)
|
||||
@ConditionalOnMissingBean(SpringLiquibase.class)
|
||||
@EnableConfigurationProperties(LiquibaseProperties.class)
|
||||
public static class LiquibaseConfiguration {
|
||||
static class LiquibaseConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean(LiquibaseConnectionDetails.class)
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import org.springframework.boot.autoconfigure.service.connection.ConnectionDetails;
|
||||
import org.springframework.boot.jdbc.DatabaseDriver;
|
||||
|
@ -23,7 +23,7 @@ import org.springframework.boot.jdbc.DatabaseDriver;
|
|||
* Details required for Liquibase to establish a connection to an SQL service using JDBC.
|
||||
*
|
||||
* @author Andy Wilkinson
|
||||
* @since 3.1.0
|
||||
* @since 4.0.0
|
||||
*/
|
||||
public interface LiquibaseConnectionDetails extends ConnectionDetails {
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.lang.annotation.Documented;
|
||||
import java.lang.annotation.ElementType;
|
||||
|
@ -29,7 +29,7 @@ import org.springframework.beans.factory.annotation.Qualifier;
|
|||
* second data source, the other (main) one would normally be marked as {@code @Primary}.
|
||||
*
|
||||
* @author Eddú Meléndez
|
||||
* @since 1.4.1
|
||||
* @since 4.0.0
|
||||
*/
|
||||
@Target({ ElementType.FIELD, ElementType.METHOD, ElementType.PARAMETER, ElementType.TYPE, ElementType.ANNOTATION_TYPE })
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
|
@ -35,7 +35,7 @@ import org.springframework.util.Assert;
|
|||
* @author Eddú Meléndez
|
||||
* @author Ferenc Gratzer
|
||||
* @author Evgeniy Cheban
|
||||
* @since 1.1.0
|
||||
* @since 4.0.0
|
||||
*/
|
||||
@ConfigurationProperties(prefix = "spring.liquibase", ignoreUnknownFields = false)
|
||||
public class LiquibaseProperties {
|
||||
|
@ -361,8 +361,6 @@ public class LiquibaseProperties {
|
|||
* Enumeration of types of summary to show. Values are the same as those on
|
||||
* {@link UpdateSummaryEnum}. To maximize backwards compatibility, the Liquibase enum
|
||||
* is not used directly.
|
||||
*
|
||||
* @since 3.2.1
|
||||
*/
|
||||
public enum ShowSummary {
|
||||
|
||||
|
@ -387,8 +385,6 @@ public class LiquibaseProperties {
|
|||
* Enumeration of destinations to which the summary should be output. Values are the
|
||||
* same as those on {@link UpdateSummaryOutputEnum}. To maximize backwards
|
||||
* compatibility, the Liquibase enum is not used directly.
|
||||
*
|
||||
* @since 3.2.1
|
||||
*/
|
||||
public enum ShowSummaryOutput {
|
||||
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.util.stream.StreamSupport;
|
||||
|
|
@ -17,4 +17,4 @@
|
|||
/**
|
||||
* Auto-configuration for Liquibase.
|
||||
*/
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
|
@ -0,0 +1,46 @@
|
|||
{
|
||||
"properties": [
|
||||
{
|
||||
"name": "spring.liquibase.check-change-log-location",
|
||||
"type": "java.lang.Boolean",
|
||||
"description": "Check the change log location exists.",
|
||||
"defaultValue": true,
|
||||
"deprecation": {
|
||||
"reason": "Liquibase has its own check that checks if the change log location exists making this property redundant.",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.labels",
|
||||
"deprecation": {
|
||||
"replacement": "spring.liquibase.label-filter",
|
||||
"level": "error"
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.show-summary",
|
||||
"defaultValue": "summary"
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.show-summary-output",
|
||||
"defaultValue": "log"
|
||||
},
|
||||
{
|
||||
"name": "spring.liquibase.ui-service",
|
||||
"defaultValue": "logger"
|
||||
}
|
||||
],
|
||||
"hints": [
|
||||
{
|
||||
"name": "spring.liquibase.change-log",
|
||||
"providers": [
|
||||
{
|
||||
"name": "handle-as",
|
||||
"parameters": {
|
||||
"target": "org.springframework.core.io.Resource"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
# Failure Analyzers
|
||||
org.springframework.boot.diagnostics.FailureAnalyzer=\
|
||||
org.springframework.boot.liquibase.LiquibaseChangelogMissingFailureAnalyzer
|
||||
|
||||
# Database Initializer Detectors
|
||||
org.springframework.boot.sql.init.dependency.DatabaseInitializerDetector=\
|
||||
org.springframework.boot.liquibase.LiquibaseDatabaseInitializerDetector
|
|
@ -0,0 +1 @@
|
|||
org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
|
@ -24,7 +24,6 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.beans.factory.BeanCreationException;
|
||||
import org.springframework.boot.diagnostics.FailureAnalysis;
|
||||
import org.springframework.boot.testsupport.classpath.ClassPathExclusions;
|
||||
import org.springframework.context.annotation.AnnotationConfigApplicationContext;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
@ -36,7 +35,6 @@ import static org.assertj.core.api.Assertions.assertThat;
|
|||
*
|
||||
* @author Sebastiaan Fernandez
|
||||
*/
|
||||
@ClassPathExclusions("derby-*")
|
||||
class LiquibaseChangelogMissingFailureAnalyzerTests {
|
||||
|
||||
@Test
|
||||
|
@ -71,7 +69,7 @@ class LiquibaseChangelogMissingFailureAnalyzerTests {
|
|||
@Bean
|
||||
DataSource dataSource() {
|
||||
HikariDataSource dataSource = new HikariDataSource();
|
||||
dataSource.setJdbcUrl("jdbc:hsqldb:mem:test");
|
||||
dataSource.setJdbcUrl("jdbc:h2:mem:test");
|
||||
dataSource.setUsername("sa");
|
||||
return dataSource;
|
||||
}
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.util.function.Consumer;
|
||||
|
|
@ -14,11 +14,10 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.IOException;
|
||||
import java.io.Serializable;
|
||||
import java.lang.annotation.ElementType;
|
||||
import java.lang.annotation.Retention;
|
||||
import java.lang.annotation.RetentionPolicy;
|
||||
|
@ -27,7 +26,6 @@ import java.nio.file.Files;
|
|||
import java.nio.file.Path;
|
||||
import java.sql.Connection;
|
||||
import java.sql.SQLException;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
import java.util.function.Consumer;
|
||||
|
@ -35,10 +33,6 @@ import java.util.function.Consumer;
|
|||
import javax.sql.DataSource;
|
||||
|
||||
import com.zaxxer.hikari.HikariDataSource;
|
||||
import jakarta.persistence.Column;
|
||||
import jakarta.persistence.Entity;
|
||||
import jakarta.persistence.GeneratedValue;
|
||||
import jakarta.persistence.Id;
|
||||
import liquibase.Liquibase;
|
||||
import liquibase.UpdateSummaryEnum;
|
||||
import liquibase.UpdateSummaryOutputEnum;
|
||||
|
@ -46,7 +40,6 @@ import liquibase.command.core.helpers.ShowSummaryArgument;
|
|||
import liquibase.integration.spring.Customizer;
|
||||
import liquibase.integration.spring.SpringLiquibase;
|
||||
import liquibase.ui.UIServiceEnum;
|
||||
import org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.junit.jupiter.api.io.TempDir;
|
||||
|
@ -56,16 +49,11 @@ import org.springframework.aot.hint.predicate.RuntimeHintsPredicates;
|
|||
import org.springframework.beans.factory.BeanCreationException;
|
||||
import org.springframework.beans.factory.config.BeanDefinition;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigurations;
|
||||
import org.springframework.boot.autoconfigure.jooq.JooqAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration.LiquibaseAutoConfigurationRuntimeHints;
|
||||
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.DataSourceBuilder;
|
||||
import org.springframework.boot.jdbc.EmbeddedDatabaseConnection;
|
||||
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.EmbeddedDataSourceConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcTemplateAutoConfiguration;
|
||||
import org.springframework.boot.orm.jpa.EntityManagerFactoryBuilder;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration.LiquibaseAutoConfigurationRuntimeHints;
|
||||
import org.springframework.boot.test.context.FilteredClassLoader;
|
||||
import org.springframework.boot.test.context.assertj.AssertableApplicationContext;
|
||||
import org.springframework.boot.test.context.runner.ApplicationContextRunner;
|
||||
|
@ -81,7 +69,6 @@ import org.springframework.jdbc.datasource.SimpleDriverDataSource;
|
|||
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabase;
|
||||
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseBuilder;
|
||||
import org.springframework.jdbc.datasource.embedded.EmbeddedDatabaseType;
|
||||
import org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean;
|
||||
import org.springframework.test.util.ReflectionTestUtils;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
@ -118,7 +105,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void createsDataSourceWithNoDataSourceBeanAndLiquibaseUrl() {
|
||||
String jdbcUrl = "jdbc:hsqldb:mem:liquibase" + UUID.randomUUID();
|
||||
String jdbcUrl = "jdbc:h2:mem:liquibase" + UUID.randomUUID();
|
||||
this.contextRunner.withPropertyValues("spring.liquibase.url:" + jdbcUrl).run(assertLiquibase((liquibase) -> {
|
||||
SimpleDriverDataSource dataSource = (SimpleDriverDataSource) liquibase.getDataSource();
|
||||
assertThat(dataSource.getUrl()).isEqualTo(jdbcUrl);
|
||||
|
@ -127,7 +114,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
|
||||
@Test
|
||||
void backsOffWithLiquibaseUrlAndNoSpringJdbc() {
|
||||
this.contextRunner.withPropertyValues("spring.liquibase.url:jdbc:hsqldb:mem:" + UUID.randomUUID())
|
||||
this.contextRunner.withPropertyValues("spring.liquibase.url:jdbc:h2:mem:" + UUID.randomUUID())
|
||||
.withClassLoader(new FilteredClassLoader("org.springframework.jdbc"))
|
||||
.run((context) -> assertThat(context).doesNotHaveBean(SpringLiquibase.class));
|
||||
}
|
||||
|
@ -162,7 +149,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
.withUserConfiguration(LiquibaseDataSourceConfiguration.class, JdbcConnectionDetailsConfiguration.class)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
HikariDataSource dataSource = (HikariDataSource) liquibase.getDataSource();
|
||||
assertThat(dataSource.getJdbcUrl()).startsWith("jdbc:hsqldb:mem:liquibasetest");
|
||||
assertThat(dataSource.getJdbcUrl()).startsWith("jdbc:h2:mem:liquibasetest");
|
||||
assertThat(dataSource.getUsername()).isEqualTo("sa");
|
||||
assertThat(dataSource.getPassword()).isNull();
|
||||
}));
|
||||
|
@ -176,7 +163,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
LiquibaseConnectionDetailsConfiguration.class)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
HikariDataSource dataSource = (HikariDataSource) liquibase.getDataSource();
|
||||
assertThat(dataSource.getJdbcUrl()).startsWith("jdbc:hsqldb:mem:liquibasetest");
|
||||
assertThat(dataSource.getJdbcUrl()).startsWith("jdbc:h2:mem:liquibasetest");
|
||||
assertThat(dataSource.getUsername()).isEqualTo("sa");
|
||||
assertThat(dataSource.getPassword()).isNull();
|
||||
}));
|
||||
|
@ -186,13 +173,12 @@ class LiquibaseAutoConfigurationTests {
|
|||
@WithDbChangelogMasterYamlResource
|
||||
void liquibasePropertiesAreUsedOverJdbcConnectionDetails() {
|
||||
this.contextRunner
|
||||
.withPropertyValues("spring.liquibase.url=jdbc:hsqldb:mem:liquibasetest", "spring.liquibase.user=some-user",
|
||||
"spring.liquibase.password=some-password",
|
||||
"spring.liquibase.driver-class-name=org.hsqldb.jdbc.JDBCDriver")
|
||||
.withPropertyValues("spring.liquibase.url=jdbc:h2:mem:liquibasetest", "spring.liquibase.user=some-user",
|
||||
"spring.liquibase.password=some-password", "spring.liquibase.driver-class-name=org.h2.Driver")
|
||||
.withUserConfiguration(JdbcConnectionDetailsConfiguration.class)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
SimpleDriverDataSource dataSource = (SimpleDriverDataSource) liquibase.getDataSource();
|
||||
assertThat(dataSource.getUrl()).startsWith("jdbc:hsqldb:mem:liquibasetest");
|
||||
assertThat(dataSource.getUrl()).startsWith("jdbc:h2:mem:liquibasetest");
|
||||
assertThat(dataSource.getUsername()).isEqualTo("some-user");
|
||||
assertThat(dataSource.getPassword()).isEqualTo("some-password");
|
||||
}));
|
||||
|
@ -201,9 +187,8 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Test
|
||||
void liquibaseConnectionDetailsAreUsedOverLiquibaseProperties() {
|
||||
this.contextRunner.withSystemProperties("shouldRun=false")
|
||||
.withPropertyValues("spring.liquibase.url=jdbc:hsqldb:mem:liquibasetest", "spring.liquibase.user=some-user",
|
||||
"spring.liquibase.password=some-password",
|
||||
"spring.liquibase.driver-class-name=org.hsqldb.jdbc.JDBCDriver")
|
||||
.withPropertyValues("spring.liquibase.url=jdbc:h2:mem:liquibasetest", "spring.liquibase.user=some-user",
|
||||
"spring.liquibase.password=some-password", "spring.liquibase.driver-class-name=org.h2.Driver")
|
||||
.withUserConfiguration(LiquibaseConnectionDetailsConfiguration.class)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
SimpleDriverDataSource dataSource = (SimpleDriverDataSource) liquibase.getDataSource();
|
||||
|
@ -331,7 +316,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void overrideClearChecksums() {
|
||||
String jdbcUrl = "jdbc:hsqldb:mem:liquibase" + UUID.randomUUID();
|
||||
String jdbcUrl = "jdbc:h2:mem:liquibase" + UUID.randomUUID();
|
||||
this.contextRunner.withUserConfiguration(EmbeddedDataSourceConfiguration.class)
|
||||
.withPropertyValues("spring.liquibase.url:" + jdbcUrl)
|
||||
.run((context) -> assertThat(context).hasNotFailed());
|
||||
|
@ -343,21 +328,21 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void overrideDataSource() {
|
||||
String jdbcUrl = "jdbc:hsqldb:mem:liquibase" + UUID.randomUUID();
|
||||
String jdbcUrl = "jdbc:h2:mem:liquibase" + UUID.randomUUID();
|
||||
this.contextRunner.withUserConfiguration(EmbeddedDataSourceConfiguration.class)
|
||||
.withPropertyValues("spring.liquibase.url:" + jdbcUrl)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
SimpleDriverDataSource dataSource = (SimpleDriverDataSource) liquibase.getDataSource();
|
||||
assertThat(dataSource.getUrl()).isEqualTo(jdbcUrl);
|
||||
assertThat(dataSource.getDriver().getClass().getName()).isEqualTo("org.hsqldb.jdbc.JDBCDriver");
|
||||
assertThat(dataSource.getDriver().getClass().getName()).isEqualTo("org.h2.Driver");
|
||||
}));
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void overrideDataSourceAndDriverClassName() {
|
||||
String jdbcUrl = "jdbc:hsqldb:mem:liquibase" + UUID.randomUUID();
|
||||
String driverClassName = "org.hsqldb.jdbcDriver";
|
||||
String jdbcUrl = "jdbc:h2:mem:liquibase" + UUID.randomUUID();
|
||||
String driverClassName = "org.h2.Driver";
|
||||
this.contextRunner.withUserConfiguration(EmbeddedDataSourceConfiguration.class)
|
||||
.withPropertyValues("spring.liquibase.url:" + jdbcUrl,
|
||||
"spring.liquibase.driver-class-name:" + driverClassName)
|
||||
|
@ -400,7 +385,7 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void createDataSourceDoesNotFallbackToEmbeddedProperties() {
|
||||
String jdbcUrl = "jdbc:hsqldb:mem:liquibase" + UUID.randomUUID();
|
||||
String jdbcUrl = "jdbc:h2:mem:liquibase" + UUID.randomUUID();
|
||||
this.contextRunner.withUserConfiguration(EmbeddedDataSourceConfiguration.class)
|
||||
.withPropertyValues("spring.liquibase.url:" + jdbcUrl)
|
||||
.run(assertLiquibase((liquibase) -> {
|
||||
|
@ -549,49 +534,6 @@ class LiquibaseAutoConfigurationTests {
|
|||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void userConfigurationEntityManagerFactoryDependency() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(HibernateJpaAutoConfiguration.class))
|
||||
.withUserConfiguration(LiquibaseUserConfiguration.class, EmbeddedDataSourceConfiguration.class)
|
||||
.run((context) -> {
|
||||
BeanDefinition beanDefinition = context.getBeanFactory().getBeanDefinition("entityManagerFactory");
|
||||
assertThat(beanDefinition.getDependsOn()).containsExactly("springLiquibase");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
@WithMetaInfPersistenceXmlResource
|
||||
void jpaApplyDdl() {
|
||||
this.contextRunner
|
||||
.withConfiguration(
|
||||
AutoConfigurations.of(DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class))
|
||||
.run((context) -> {
|
||||
Map<String, Object> jpaProperties = context.getBean(LocalContainerEntityManagerFactoryBean.class)
|
||||
.getJpaPropertyMap();
|
||||
assertThat(jpaProperties).doesNotContainKey("hibernate.hbm2ddl.auto");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
@WithMetaInfPersistenceXmlResource
|
||||
void jpaAndMultipleDataSourcesApplyDdl() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(HibernateJpaAutoConfiguration.class))
|
||||
.withUserConfiguration(JpaWithMultipleDataSourcesConfiguration.class)
|
||||
.run((context) -> {
|
||||
LocalContainerEntityManagerFactoryBean normalEntityManagerFactoryBean = context
|
||||
.getBean("&normalEntityManagerFactory", LocalContainerEntityManagerFactoryBean.class);
|
||||
assertThat(normalEntityManagerFactoryBean.getJpaPropertyMap()).containsEntry("configured", "normal")
|
||||
.containsEntry("hibernate.hbm2ddl.auto", "create-drop");
|
||||
LocalContainerEntityManagerFactoryBean liquibaseEntityManagerFactory = context
|
||||
.getBean("&liquibaseEntityManagerFactory", LocalContainerEntityManagerFactoryBean.class);
|
||||
assertThat(liquibaseEntityManagerFactory.getJpaPropertyMap()).containsEntry("configured", "liquibase")
|
||||
.doesNotContainKey("hibernate.hbm2ddl.auto");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void userConfigurationJdbcTemplateDependency() {
|
||||
|
@ -611,28 +553,6 @@ class LiquibaseAutoConfigurationTests {
|
|||
.run(assertLiquibase((liquibase) -> assertThat(liquibase.getTag()).isEqualTo("1.0.0")));
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void whenLiquibaseIsAutoConfiguredThenJooqDslContextDependsOnSpringLiquibaseBeans() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(JooqAutoConfiguration.class))
|
||||
.withUserConfiguration(EmbeddedDataSourceConfiguration.class)
|
||||
.run((context) -> {
|
||||
BeanDefinition beanDefinition = context.getBeanFactory().getBeanDefinition("dslContext");
|
||||
assertThat(beanDefinition.getDependsOn()).containsExactly("liquibase");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithDbChangelogMasterYamlResource
|
||||
void whenCustomSpringLiquibaseIsDefinedThenJooqDslContextDependsOnSpringLiquibaseBeans() {
|
||||
this.contextRunner.withConfiguration(AutoConfigurations.of(JooqAutoConfiguration.class))
|
||||
.withUserConfiguration(LiquibaseUserConfiguration.class, EmbeddedDataSourceConfiguration.class)
|
||||
.run((context) -> {
|
||||
BeanDefinition beanDefinition = context.getBeanFactory().getBeanDefinition("dslContext");
|
||||
assertThat(beanDefinition.getDependsOn()).containsExactly("springLiquibase");
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
void shouldRegisterHints() {
|
||||
RuntimeHints hints = new RuntimeHints();
|
||||
|
@ -684,14 +604,14 @@ class LiquibaseAutoConfigurationTests {
|
|||
@Bean
|
||||
@Primary
|
||||
DataSource normalDataSource() {
|
||||
return DataSourceBuilder.create().url("jdbc:hsqldb:mem:normal" + UUID.randomUUID()).username("sa").build();
|
||||
return DataSourceBuilder.create().url("jdbc:h2:mem:normal" + UUID.randomUUID()).username("sa").build();
|
||||
}
|
||||
|
||||
@LiquibaseDataSource
|
||||
@Bean
|
||||
DataSource liquibaseDataSource() {
|
||||
return DataSourceBuilder.create()
|
||||
.url("jdbc:hsqldb:mem:liquibasetest" + UUID.randomUUID())
|
||||
.url("jdbc:h2:mem:liquibasetest" + UUID.randomUUID())
|
||||
.username("sa")
|
||||
.build();
|
||||
}
|
||||
|
@ -712,46 +632,6 @@ class LiquibaseAutoConfigurationTests {
|
|||
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
static class JpaWithMultipleDataSourcesConfiguration {
|
||||
|
||||
@Bean
|
||||
@Primary
|
||||
DataSource normalDataSource() {
|
||||
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseConnection.HSQLDB.getType())
|
||||
.generateUniqueName(true)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Bean
|
||||
@Primary
|
||||
LocalContainerEntityManagerFactoryBean normalEntityManagerFactory(EntityManagerFactoryBuilder builder,
|
||||
DataSource normalDataSource) {
|
||||
Map<String, Object> properties = new HashMap<>();
|
||||
properties.put("configured", "normal");
|
||||
properties.put("hibernate.transaction.jta.platform", NoJtaPlatform.INSTANCE);
|
||||
return builder.dataSource(normalDataSource).properties(properties).build();
|
||||
}
|
||||
|
||||
@Bean
|
||||
@LiquibaseDataSource
|
||||
DataSource liquibaseDataSource() {
|
||||
return new EmbeddedDatabaseBuilder().setType(EmbeddedDatabaseConnection.HSQLDB.getType())
|
||||
.generateUniqueName(true)
|
||||
.build();
|
||||
}
|
||||
|
||||
@Bean
|
||||
LocalContainerEntityManagerFactoryBean liquibaseEntityManagerFactory(EntityManagerFactoryBuilder builder,
|
||||
@LiquibaseDataSource DataSource liquibaseDataSource) {
|
||||
Map<String, Object> properties = new HashMap<>();
|
||||
properties.put("configured", "liquibase");
|
||||
properties.put("hibernate.transaction.jta.platform", NoJtaPlatform.INSTANCE);
|
||||
return builder.dataSource(liquibaseDataSource).properties(properties).build();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@Configuration(proxyBeanMethods = false)
|
||||
static class CustomDataSourceConfiguration {
|
||||
|
||||
|
@ -888,74 +768,4 @@ class LiquibaseAutoConfigurationTests {
|
|||
|
||||
}
|
||||
|
||||
@Target(ElementType.METHOD)
|
||||
@Retention(RetentionPolicy.RUNTIME)
|
||||
@WithResource(name = "META-INF/persistence.xml",
|
||||
content = """
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/persistence https://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
|
||||
<persistence-unit name="manually-configured">
|
||||
<class>org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfigurationTests$City</class>
|
||||
<exclude-unlisted-classes>true</exclude-unlisted-classes>
|
||||
</persistence-unit>
|
||||
</persistence>
|
||||
""")
|
||||
@interface WithMetaInfPersistenceXmlResource {
|
||||
|
||||
}
|
||||
|
||||
@Entity
|
||||
public static class City implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Id
|
||||
@GeneratedValue
|
||||
private Long id;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String name;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String state;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String country;
|
||||
|
||||
@Column(nullable = false)
|
||||
private String map;
|
||||
|
||||
protected City() {
|
||||
}
|
||||
|
||||
City(String name, String state, String country, String map) {
|
||||
this.name = name;
|
||||
this.state = state;
|
||||
this.country = country;
|
||||
this.map = map;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return this.name;
|
||||
}
|
||||
|
||||
public String getState() {
|
||||
return this.state;
|
||||
}
|
||||
|
||||
public String getCountry() {
|
||||
return this.country;
|
||||
}
|
||||
|
||||
public String getMap() {
|
||||
return this.map;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return getName() + "," + getState() + "," + getCountry();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
|
@ -14,7 +14,7 @@
|
|||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package org.springframework.boot.autoconfigure.liquibase;
|
||||
package org.springframework.boot.liquibase.autoconfigure;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Stream;
|
||||
|
@ -24,9 +24,9 @@ import liquibase.UpdateSummaryOutputEnum;
|
|||
import liquibase.ui.UIServiceEnum;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseProperties.ShowSummary;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseProperties.ShowSummaryOutput;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseProperties.UiService;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseProperties.ShowSummary;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseProperties.ShowSummaryOutput;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseProperties.UiService;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
|
@ -57,6 +57,9 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-jackson"))
|
||||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-jsonb"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase")) {
|
||||
exclude(group: "org.liquibase")
|
||||
}
|
||||
optional(project(":spring-boot-project:spring-boot-reactor-netty"))
|
||||
optional(project(":spring-boot-project:spring-boot-tx"))
|
||||
optional(project(":spring-boot-project:spring-boot-validation"))
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
# AutoConfigureDataJdbc auto-configuration imports
|
||||
org.springframework.boot.autoconfigure.data.jdbc.JdbcRepositoriesAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration
|
||||
|
@ -8,4 +7,5 @@ org.springframework.boot.jdbc.autoconfigure.JdbcClientAutoConfiguration
|
|||
org.springframework.boot.jdbc.autoconfigure.JdbcTemplateAutoConfiguration
|
||||
org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration
|
||||
optional:org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration
|
||||
optional:org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
||||
optional:org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration
|
||||
|
|
|
@ -1,10 +1,10 @@
|
|||
# AutoConfigureDataR2dbc auto-configuration imports
|
||||
org.springframework.boot.autoconfigure.data.r2dbc.R2dbcRepositoriesAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.data.r2dbc.R2dbcDataAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.r2dbc.R2dbcAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.r2dbc.R2dbcInitializationAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.r2dbc.R2dbcTransactionManagerAutoConfiguration
|
||||
org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration
|
||||
optional:org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration
|
||||
optional:org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
||||
optional:org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
# AutoConfigureJdbc auto-configuration imports
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration
|
||||
|
@ -7,4 +6,5 @@ org.springframework.boot.jdbc.autoconfigure.JdbcClientAutoConfiguration
|
|||
org.springframework.boot.jdbc.autoconfigure.JdbcTemplateAutoConfiguration
|
||||
org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration
|
||||
optional:org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration
|
||||
optional:org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
||||
optional:org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# AutoConfigureJooq auto-configuration imports
|
||||
org.springframework.boot.autoconfigure.jooq.JooqAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceTransactionManagerAutoConfiguration
|
||||
org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration
|
||||
optional:org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration
|
||||
optional:org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
||||
optional:org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
# AutoConfigureDataJpa auto-configuration imports
|
||||
org.springframework.boot.autoconfigure.data.jpa.JpaRepositoriesAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration
|
||||
org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration
|
||||
org.springframework.boot.jdbc.autoconfigure.DataSourceInitializationAutoConfiguration
|
||||
|
@ -9,4 +8,5 @@ org.springframework.boot.jdbc.autoconfigure.JdbcClientAutoConfiguration
|
|||
org.springframework.boot.jdbc.autoconfigure.JdbcTemplateAutoConfiguration
|
||||
org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration
|
||||
optional:org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration
|
||||
optional:org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration
|
||||
optional:org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration
|
||||
|
|
|
@ -22,8 +22,8 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
|
|
|
@ -24,8 +24,8 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.jdbc.core.JdbcTemplate;
|
||||
|
|
|
@ -25,8 +25,8 @@ import org.junit.jupiter.api.Test;
|
|||
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.cache.CacheAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.test.autoconfigure.orm.jpa.ExampleComponent;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
|
|
|
@ -22,8 +22,8 @@ import org.junit.jupiter.api.Test;
|
|||
|
||||
import org.springframework.beans.factory.NoSuchBeanDefinitionException;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.flyway.autoconfigure.FlywayAutoConfiguration;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnectionAutoConfiguration;
|
||||
import org.springframework.context.ApplicationContext;
|
||||
import org.springframework.data.repository.config.BootstrapMode;
|
||||
|
|
|
@ -31,6 +31,7 @@ dependencies {
|
|||
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-flyway"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-test"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker"))
|
||||
dockerTestImplementation(project(":spring-boot-project:spring-boot-tx"))
|
||||
|
@ -75,6 +76,7 @@ dependencies {
|
|||
optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure"))
|
||||
optional(project(":spring-boot-project:spring-boot-flyway"))
|
||||
optional(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
optional(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
optional(project(":spring-boot-project:spring-boot-tx"))
|
||||
optional("org.springframework:spring-test")
|
||||
optional("org.springframework.data:spring-data-mongodb")
|
||||
|
|
|
@ -24,8 +24,8 @@ import org.testcontainers.junit.jupiter.Testcontainers;
|
|||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.jdbc.autoconfigure.JdbcConnectionDetails;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseAutoConfiguration;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
|
||||
import org.springframework.boot.testsupport.container.TestImage;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
|
|
@ -18,7 +18,7 @@ package org.springframework.boot.testcontainers.service.connection.liquibase;
|
|||
|
||||
import org.testcontainers.containers.JdbcDatabaseContainer;
|
||||
|
||||
import org.springframework.boot.autoconfigure.liquibase.LiquibaseConnectionDetails;
|
||||
import org.springframework.boot.liquibase.autoconfigure.LiquibaseConnectionDetails;
|
||||
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionDetailsFactory;
|
||||
import org.springframework.boot.testcontainers.service.connection.ContainerConnectionSource;
|
||||
import org.springframework.boot.testcontainers.service.connection.ServiceConnection;
|
||||
|
|
|
@ -33,9 +33,7 @@ dependencies {
|
|||
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-data-r2dbc"))
|
||||
|
||||
runtimeOnly(project(":spring-boot-project:spring-boot-jdbc"))
|
||||
runtimeOnly("org.liquibase:liquibase-core") {
|
||||
exclude group: "javax.xml.bind", module: "jaxb-api"
|
||||
}
|
||||
runtimeOnly(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
runtimeOnly("org.postgresql:postgresql")
|
||||
runtimeOnly("org.postgresql:r2dbc-postgresql")
|
||||
runtimeOnly("org.springframework:spring-jdbc")
|
||||
|
|
|
@ -21,13 +21,10 @@ plugins {
|
|||
description = "Spring Boot Liquibase smoke test"
|
||||
|
||||
dependencies {
|
||||
implementation(project(":spring-boot-project:spring-boot-liquibase"))
|
||||
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-actuator"))
|
||||
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-jdbc"))
|
||||
implementation(project(":spring-boot-project:spring-boot-starters:spring-boot-starter-web"))
|
||||
implementation("jakarta.xml.bind:jakarta.xml.bind-api")
|
||||
implementation("org.liquibase:liquibase-core") {
|
||||
exclude group: "javax.xml.bind", module: "jaxb-api"
|
||||
}
|
||||
|
||||
runtimeOnly("com.h2database:h2")
|
||||
|
||||
|
|
Loading…
Reference in New Issue