From abdc0fdf90a8f644728968188e2c352e9a5e95ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Nicoll?= Date: Mon, 19 May 2025 14:30:05 +0200 Subject: [PATCH] Move Artemis testcontainers support into spring-boot-artemis --- spring-boot-project/spring-boot-artemis/build.gradle | 7 +++++++ ...sContainerConnectionDetailsFactoryIntegrationTests.java | 2 +- .../ArtemisContainerConnectionDetailsFactory.java | 2 +- .../boot/artemis/testcontainers}/package-info.java | 4 ++-- .../src/main/resources/META-INF/spring.factories | 2 ++ .../src/test/resources/logback-test.xml | 4 ++++ .../spring-boot-testcontainers-all/build.gradle | 4 ---- .../src/main/resources/META-INF/spring.factories | 1 - 8 files changed, 17 insertions(+), 9 deletions(-) rename spring-boot-project/{spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/activemq => spring-boot-artemis/src/dockerTest/java/org/springframework/boot/artemis/testcontainers}/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java (97%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq => spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers}/ArtemisContainerConnectionDetailsFactory.java (96%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq => spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers}/package-info.java (82%) create mode 100644 spring-boot-project/spring-boot-artemis/src/main/resources/META-INF/spring.factories create mode 100644 spring-boot-project/spring-boot-artemis/src/test/resources/logback-test.xml diff --git a/spring-boot-project/spring-boot-artemis/build.gradle b/spring-boot-project/spring-boot-artemis/build.gradle index 3888166fc6..e80b85a02d 100644 --- a/spring-boot-project/spring-boot-artemis/build.gradle +++ b/spring-boot-project/spring-boot-artemis/build.gradle @@ -1,5 +1,6 @@ plugins { id "java-library" + id "org.springframework.boot.docker-test" id "org.springframework.boot.auto-configuration" id "org.springframework.boot.configuration-properties" id "org.springframework.boot.deployed" @@ -13,11 +14,17 @@ dependencies { api("org.apache.activemq:artemis-jakarta-client") optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-testcontainers")) optional(project(":spring-boot-project:spring-boot-tx")) optional("org.apache.activemq:artemis-jakarta-server") optional("org.messaginghub:pooled-jms") { exclude group: "org.apache.geronimo.specs", module: "geronimo-jms_2.0_spec" } + optional("org.testcontainers:activemq") + + dockerTestImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support-docker")) + dockerTestImplementation("ch.qos.logback:logback-classic") + dockerTestImplementation("org.testcontainers:junit-jupiter") testImplementation(project(":spring-boot-project:spring-boot-test")) testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-artemis/src/dockerTest/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java similarity index 97% rename from spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java rename to spring-boot-project/spring-boot-artemis/src/dockerTest/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java index cabb3612f1..06abb9491d 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-artemis/src/dockerTest/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactoryIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.activemq; +package org.springframework.boot.artemis.testcontainers; import java.time.Duration; import java.util.ArrayList; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactory.java similarity index 96% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactory.java index 66f158aab8..66caad1d4a 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/ArtemisContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/ArtemisContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.activemq; +package org.springframework.boot.artemis.testcontainers; import org.testcontainers.activemq.ArtemisContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/package-info.java b/spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/package-info.java similarity index 82% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/package-info.java rename to spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/package-info.java index 48d0e1870c..1aa00644c9 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/activemq/package-info.java +++ b/spring-boot-project/spring-boot-artemis/src/main/java/org/springframework/boot/artemis/testcontainers/package-info.java @@ -15,6 +15,6 @@ */ /** - * Support for testcontainers ActiveMQ service connections. + * Support for testcontainers Artemis service connections. */ -package org.springframework.boot.testcontainers.service.connection.activemq; +package org.springframework.boot.artemis.testcontainers; diff --git a/spring-boot-project/spring-boot-artemis/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-artemis/src/main/resources/META-INF/spring.factories new file mode 100644 index 0000000000..f2cfe0ac09 --- /dev/null +++ b/spring-boot-project/spring-boot-artemis/src/main/resources/META-INF/spring.factories @@ -0,0 +1,2 @@ +org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ +org.springframework.boot.artemis.testcontainers.ArtemisContainerConnectionDetailsFactory diff --git a/spring-boot-project/spring-boot-artemis/src/test/resources/logback-test.xml b/spring-boot-project/spring-boot-artemis/src/test/resources/logback-test.xml new file mode 100644 index 0000000000..b8a41480d7 --- /dev/null +++ b/spring-boot-project/spring-boot-artemis/src/test/resources/logback-test.xml @@ -0,0 +1,4 @@ + + + + diff --git a/spring-boot-project/spring-boot-testcontainers-all/build.gradle b/spring-boot-project/spring-boot-testcontainers-all/build.gradle index f71ae0ce22..aefc27783a 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/build.gradle +++ b/spring-boot-project/spring-boot-testcontainers-all/build.gradle @@ -41,7 +41,6 @@ dependencies { dockerTestImplementation("org.mockito:mockito-core") dockerTestImplementation("org.springframework:spring-core-test") dockerTestImplementation("org.springframework:spring-jdbc") - dockerTestImplementation("org.springframework:spring-jms") dockerTestImplementation("org.springframework.amqp:spring-rabbit") dockerTestImplementation("org.springframework.data:spring-data-redis") dockerTestImplementation("org.springframework.kafka:spring-kafka") @@ -56,7 +55,6 @@ dependencies { dockerTestRuntimeOnly("org.postgresql:postgresql") optional(project(":spring-boot-project:spring-boot-amqp")) - optional(project(":spring-boot-project:spring-boot-artemis")) optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure-all")) optional(project(":spring-boot-project:spring-boot-cassandra")) optional(project(":spring-boot-project:spring-boot-couchbase")) @@ -76,7 +74,6 @@ dependencies { optional("org.springframework:spring-test") optional("org.springframework.data:spring-data-mongodb") optional("org.springframework.data:spring-data-neo4j") - optional("org.testcontainers:activemq") optional("org.testcontainers:cassandra") optional("org.testcontainers:clickhouse") optional("org.testcontainers:couchbase") @@ -103,7 +100,6 @@ dependencies { testImplementation(project(":spring-boot-project:spring-boot-tools:spring-boot-test-support")) testImplementation(testFixtures(project(":spring-boot-project:spring-boot-testcontainers"))) testImplementation("org.springframework:spring-jdbc") - testImplementation("org.springframework:spring-jms") testImplementation("org.springframework.amqp:spring-rabbit") testImplementation("org.springframework.data:spring-data-redis") testImplementation("org.springframework.kafka:spring-kafka") 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 348245e33c..9c8985a2ab 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 @@ -1,6 +1,5 @@ # Connection Details Factories org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ -org.springframework.boot.testcontainers.service.connection.activemq.ArtemisContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.amqp.RabbitContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.cassandra.CassandraContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.cassandra.DeprecatedCassandraContainerConnectionDetailsFactory,\