diff --git a/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/logback-test.xml b/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/logback-test.xml
new file mode 100644
index 0000000000..b8a41480d7
--- /dev/null
+++ b/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/logback-test.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/spring.properties b/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/spring.properties
new file mode 100644
index 0000000000..47dff33f0b
--- /dev/null
+++ b/spring-boot-project/spring-boot-amqp/src/dockerTest/resources/spring.properties
@@ -0,0 +1 @@
+spring.test.context.cache.maxSize=1
\ No newline at end of file
diff --git a/spring-boot-project/spring-boot-jdbc/build.gradle b/spring-boot-project/spring-boot-jdbc/build.gradle
index 260cf843fe..cdfdd9001d 100644
--- a/spring-boot-project/spring-boot-jdbc/build.gradle
+++ b/spring-boot-project/spring-boot-jdbc/build.gradle
@@ -3,6 +3,7 @@ plugins {
id "org.springframework.boot.auto-configuration"
id "org.springframework.boot.configuration-properties"
id "org.springframework.boot.deployed"
+ id "org.springframework.boot.docker-test"
id "org.springframework.boot.optional-dependencies"
}
@@ -19,6 +20,7 @@ dependencies {
optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure"))
optional(project(":spring-boot-project:spring-boot-autoconfigure"))
+ optional(project(":spring-boot-project:spring-boot-testcontainers"))
optional("com.h2database:h2")
optional("com.mchange:c3p0")
optional("com.oracle.database.jdbc:ojdbc11")
@@ -30,8 +32,14 @@ dependencies {
}
optional("org.apache.tomcat:tomcat-jdbc")
optional("org.postgresql:postgresql")
+ optional("org.testcontainers:jdbc")
optional("org.vibur:vibur-dbcp")
+ dockerTestImplementation(project(":spring-boot-project:spring-boot-test"))
+ dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker"))
+ dockerTestImplementation("org.testcontainers:junit-jupiter")
+ dockerTestImplementation("org.testcontainers:postgresql")
+
testImplementation(project(":spring-boot-project:spring-boot-test"))
testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support"))
testImplementation(testFixtures(project(":spring-boot-project:spring-boot-autoconfigure")))
diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-jdbc/src/dockerTest/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactoryTests.java
similarity index 97%
rename from spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactoryTests.java
rename to spring-boot-project/spring-boot-jdbc/src/dockerTest/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactoryTests.java
index d7e521781b..af5a2da1ad 100644
--- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactoryTests.java
+++ b/spring-boot-project/spring-boot-jdbc/src/dockerTest/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactoryTests.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.boot.testcontainers.service.connection.jdbc;
+package org.springframework.boot.jdbc.testcontainers;
import javax.sql.DataSource;
diff --git a/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/logback-test.xml b/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/logback-test.xml
new file mode 100644
index 0000000000..b8a41480d7
--- /dev/null
+++ b/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/logback-test.xml
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/spring.properties b/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/spring.properties
new file mode 100644
index 0000000000..47dff33f0b
--- /dev/null
+++ b/spring-boot-project/spring-boot-jdbc/src/dockerTest/resources/spring.properties
@@ -0,0 +1 @@
+spring.test.context.cache.maxSize=1
\ No newline at end of file
diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactory.java
similarity index 97%
rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactory.java
rename to spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactory.java
index 93f787779b..1a199f01a0 100644
--- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/JdbcContainerConnectionDetailsFactory.java
+++ b/spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/JdbcContainerConnectionDetailsFactory.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package org.springframework.boot.testcontainers.service.connection.jdbc;
+package org.springframework.boot.jdbc.testcontainers;
import org.testcontainers.containers.JdbcDatabaseContainer;
diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/package-info.java b/spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/package-info.java
similarity index 90%
rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/package-info.java
rename to spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/package-info.java
index 49e478c792..f5964b48fb 100644
--- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/jdbc/package-info.java
+++ b/spring-boot-project/spring-boot-jdbc/src/main/java/org/springframework/boot/jdbc/testcontainers/package-info.java
@@ -17,4 +17,4 @@
/**
* Support for testcontainers JDBC service connections.
*/
-package org.springframework.boot.testcontainers.service.connection.jdbc;
+package org.springframework.boot.jdbc.testcontainers;
diff --git a/spring-boot-project/spring-boot-jdbc/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-jdbc/src/main/resources/META-INF/spring.factories
index 5259f23cf2..8aa4cb6b38 100644
--- a/spring-boot-project/spring-boot-jdbc/src/main/resources/META-INF/spring.factories
+++ b/spring-boot-project/spring-boot-jdbc/src/main/resources/META-INF/spring.factories
@@ -3,6 +3,10 @@ org.springframework.boot.diagnostics.FailureAnalyzer=\
org.springframework.boot.jdbc.autoconfigure.DataSourceBeanCreationFailureAnalyzer,\
org.springframework.boot.jdbc.autoconfigure.HikariDriverConfigurationFailureAnalyzer
+# Connection Details Factories
+org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\
+org.springframework.boot.jdbc.testcontainers.JdbcContainerConnectionDetailsFactory
+
# Database Initializer Detectors
org.springframework.boot.sql.init.dependency.DatabaseInitializerDetector=\
org.springframework.boot.jdbc.init.DataSourceScriptDatabaseInitializerDetector
diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories
index e706363ab3..89d68bab1c 100644
--- a/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories
+++ b/spring-boot-project/spring-boot-testcontainers-all/src/main/resources/META-INF/spring.factories
@@ -2,7 +2,6 @@
org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\
org.springframework.boot.testcontainers.service.connection.flyway.FlywayContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.hazelcast.HazelcastContainerConnectionDetailsFactory,\
-org.springframework.boot.testcontainers.service.connection.jdbc.JdbcContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.kafka.ApacheKafkaContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.kafka.ConfluentKafkaContainerConnectionDetailsFactory,\
org.springframework.boot.testcontainers.service.connection.kafka.DeprecatedConfluentKafkaContainerConnectionDetailsFactory,\