From 4bf2be4ef88b9c8d31317967d9e0a856fff57854 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Fri, 23 May 2025 14:27:54 -0700 Subject: [PATCH] Move Zipkin testcontainers support into spring-boot-zipkin See gh-46148 --- .../src/main/resources/META-INF/spring.factories | 3 +-- spring-boot-project/spring-boot-zipkin/build.gradle | 7 +++++++ ...nContainerConnectionDetailsFactoryIntegrationTests.java | 2 +- .../ZipkinContainerConnectionDetailsFactory.java | 2 +- .../boot/zipkin/testcontainers}/package-info.java | 2 +- .../src/main/resources/META-INF/spring.factories | 3 +++ .../ZipkinContainerConnectionDetailsFactoryTests.java | 2 +- ...tainerConnectionDetailsFactoryWithoutActuatorTests.java | 2 +- 8 files changed, 16 insertions(+), 7 deletions(-) rename spring-boot-project/{spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/zipkin => spring-boot-zipkin/src/dockerTest/java/org/springframework/boot/zipkin/testcontainers}/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java (96%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin => spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers}/ZipkinContainerConnectionDetailsFactory.java (96%) rename spring-boot-project/{spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin => spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers}/package-info.java (90%) create mode 100644 spring-boot-project/spring-boot-zipkin/src/main/resources/META-INF/spring.factories rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin => spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers}/ZipkinContainerConnectionDetailsFactoryTests.java (95%) rename spring-boot-project/{spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin => spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers}/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java (94%) 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 7c1c23c71a4..2e63be736a2 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 @@ -5,5 +5,4 @@ org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelem org.springframework.boot.testcontainers.service.connection.otlp.GrafanaOpenTelemetryTracingContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryLoggingContainerConnectionDetailsFactory,\ org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryMetricsContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryTracingContainerConnectionDetailsFactory,\ -org.springframework.boot.testcontainers.service.connection.zipkin.ZipkinContainerConnectionDetailsFactory +org.springframework.boot.testcontainers.service.connection.otlp.OpenTelemetryTracingContainerConnectionDetailsFactory \ No newline at end of file diff --git a/spring-boot-project/spring-boot-zipkin/build.gradle b/spring-boot-project/spring-boot-zipkin/build.gradle index c7b2f803a28..2ce1281ee87 100644 --- a/spring-boot-project/spring-boot-zipkin/build.gradle +++ b/spring-boot-project/spring-boot-zipkin/build.gradle @@ -18,6 +18,7 @@ plugins { id "java-library" id "org.springframework.boot.auto-configuration" + id "org.springframework.boot.docker-test" id "org.springframework.boot.configuration-properties" id "org.springframework.boot.deployed" id "org.springframework.boot.optional-dependencies" @@ -30,9 +31,15 @@ dependencies { api("io.zipkin.reporter2:zipkin-reporter-brave") optional(project(":spring-boot-project:spring-boot-autoconfigure")) + optional(project(":spring-boot-project:spring-boot-testcontainers")) optional("io.zipkin.reporter2:zipkin-reporter-brave") + 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") + 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-testcontainers"))) testImplementation("com.squareup.okhttp3:mockwebserver") } diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java b/spring-boot-project/spring-boot-zipkin/src/dockerTest/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java similarity index 96% rename from spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java rename to spring-boot-project/spring-boot-zipkin/src/dockerTest/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java index 87485f872a5..76a2802cded 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/dockerTest/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java +++ b/spring-boot-project/spring-boot-zipkin/src/dockerTest/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.zipkin; +package org.springframework.boot.zipkin.testcontainers; import org.junit.jupiter.api.Test; import org.testcontainers.containers.GenericContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactory.java b/spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactory.java similarity index 96% rename from spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactory.java rename to spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactory.java index 4afcf2e4b6f..c4eadafc650 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactory.java +++ b/spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactory.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.zipkin; +package org.springframework.boot.zipkin.testcontainers; import org.testcontainers.containers.Container; import org.testcontainers.containers.GenericContainer; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin/package-info.java b/spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/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/zipkin/package-info.java rename to spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers/package-info.java index b42fda572e7..f1ce8fda22a 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/main/java/org/springframework/boot/testcontainers/service/connection/zipkin/package-info.java +++ b/spring-boot-project/spring-boot-zipkin/src/main/java/org/springframework/boot/zipkin/testcontainers/package-info.java @@ -17,4 +17,4 @@ /** * Support for testcontainers Zipkin service connections. */ -package org.springframework.boot.testcontainers.service.connection.zipkin; +package org.springframework.boot.zipkin.testcontainers; diff --git a/spring-boot-project/spring-boot-zipkin/src/main/resources/META-INF/spring.factories b/spring-boot-project/spring-boot-zipkin/src/main/resources/META-INF/spring.factories new file mode 100644 index 00000000000..58a58da909e --- /dev/null +++ b/spring-boot-project/spring-boot-zipkin/src/main/resources/META-INF/spring.factories @@ -0,0 +1,3 @@ +# Connection Details Factories +org.springframework.boot.autoconfigure.service.connection.ConnectionDetailsFactory=\ +org.springframework.boot.zipkin.testcontainers.ZipkinContainerConnectionDetailsFactory diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryTests.java b/spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryTests.java similarity index 95% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryTests.java rename to spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryTests.java index e4bdc8657e6..61be89fc09e 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryTests.java +++ b/spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.zipkin; +package org.springframework.boot.zipkin.testcontainers; import org.junit.jupiter.api.Test; diff --git a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java b/spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java similarity index 94% rename from spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java rename to spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java index 1d0a390fba6..7afc3c03ba0 100644 --- a/spring-boot-project/spring-boot-testcontainers-all/src/test/java/org/springframework/boot/testcontainers/service/connection/zipkin/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java +++ b/spring-boot-project/spring-boot-zipkin/src/test/java/org/springframework/boot/zipkin/testcontainers/ZipkinContainerConnectionDetailsFactoryWithoutActuatorTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.testcontainers.service.connection.zipkin; +package org.springframework.boot.zipkin.testcontainers; import org.junit.jupiter.api.Test;