From 86a0d9b64dbc60096f37933abcc3eb7a2f6fa7d6 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 --- .../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 7c1c23c71a..2e63be736a 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 f583b6fa78..b2d11832e4 100644 --- a/spring-boot-project/spring-boot-zipkin/build.gradle +++ b/spring-boot-project/spring-boot-zipkin/build.gradle @@ -1,6 +1,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" @@ -13,9 +14,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 7e37585e84..e9d60cd1e0 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 2e70c7d403..85ae9470b9 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 a939cf481c..de2cf6d21e 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 0000000000..58a58da909 --- /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 f8bbcfa92c..ed174ced6c 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 5e1a003a68..dfbd72429c 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;