From c4de496ae4d692c4c5c752ac5e59103ff0c0a75a Mon Sep 17 00:00:00 2001 From: Andy Wilkinson Date: Fri, 16 May 2025 12:13:48 +0100 Subject: [PATCH] Move AMQP health auto-configuration into spring-boot-amqp --- ...ngframework.boot.autoconfigure.AutoConfiguration.imports | 1 - ...csAutoConfigurationMeterBinderCycleIntegrationTests.java | 3 +-- spring-boot-project/spring-boot-amqp/build.gradle | 2 +- .../RabbitHealthContributorAutoConfiguration.java | 6 +++--- .../amqp/actuate/health/autoconfigure}/package-info.java | 4 ++-- ...ngframework.boot.autoconfigure.AutoConfiguration.imports | 1 + .../RabbitHealthContributorAutoConfigurationTests.java | 2 +- 7 files changed, 9 insertions(+), 10 deletions(-) rename spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/{ => metrics}/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java (93%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp => spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure}/RabbitHealthContributorAutoConfiguration.java (94%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp => spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure}/package-info.java (82%) rename spring-boot-project/{spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp => spring-boot-amqp/src/test/java/org/springframework/boot/amqp/actuate/health/autoconfigure}/RabbitHealthContributorAutoConfigurationTests.java (96%) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 250ddcf936..a6f022db8a 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,4 +1,3 @@ -org.springframework.boot.actuate.autoconfigure.amqp.RabbitHealthContributorAutoConfiguration org.springframework.boot.actuate.autoconfigure.audit.AuditAutoConfiguration org.springframework.boot.actuate.autoconfigure.audit.AuditEventsEndpointAutoConfiguration org.springframework.boot.actuate.autoconfigure.availability.AvailabilityHealthContributorAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java similarity index 93% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java rename to spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java index 43089510de..50a64fb89a 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/metrics/amqp/RabbitMetricsAutoConfigurationMeterBinderCycleIntegrationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.amqp; +package org.springframework.boot.actuate.autoconfigure.metrics.amqp; import io.micrometer.core.instrument.MeterRegistry; import io.micrometer.core.instrument.binder.MeterBinder; @@ -22,7 +22,6 @@ import org.junit.jupiter.api.Test; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.boot.actuate.autoconfigure.metrics.MetricsAutoConfiguration; -import org.springframework.boot.actuate.autoconfigure.metrics.amqp.RabbitMetricsAutoConfiguration; import org.springframework.boot.actuate.autoconfigure.metrics.export.simple.SimpleMetricsExportAutoConfiguration; import org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration; import org.springframework.context.annotation.AnnotationConfigApplicationContext; diff --git a/spring-boot-project/spring-boot-amqp/build.gradle b/spring-boot-project/spring-boot-amqp/build.gradle index 3642f8b7c5..50dbff2d27 100644 --- a/spring-boot-project/spring-boot-amqp/build.gradle +++ b/spring-boot-project/spring-boot-amqp/build.gradle @@ -17,7 +17,7 @@ dependencies { implementation(project(":spring-boot-project:spring-boot-tx")) - optional(project(":spring-boot-project:spring-boot-actuator")) + optional(project(":spring-boot-project:spring-boot-actuator-autoconfigure")) optional(project(":spring-boot-project:spring-boot-autoconfigure")) optional("io.micrometer:micrometer-core") optional("org.springframework.amqp:spring-rabbit-stream") diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfiguration.java similarity index 94% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfiguration.java rename to spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfiguration.java index 6ed0a89826..3c9b74d8c6 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.amqp; +package org.springframework.boot.amqp.actuate.health.autoconfigure; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; @@ -34,10 +34,10 @@ import org.springframework.context.annotation.Bean; * {@link EnableAutoConfiguration Auto-configuration} for {@link RabbitHealthIndicator}. * * @author Christian Dupuis - * @since 2.0.0 + * @since 4.0.0 */ @AutoConfiguration(after = RabbitAutoConfiguration.class) -@ConditionalOnClass({ RabbitHealthIndicator.class, RabbitTemplate.class }) +@ConditionalOnClass({ RabbitHealthIndicator.class, RabbitTemplate.class, ConditionalOnEnabledHealthIndicator.class }) @ConditionalOnBean(RabbitTemplate.class) @ConditionalOnEnabledHealthIndicator("rabbit") public class RabbitHealthContributorAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/package-info.java b/spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/package-info.java similarity index 82% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/package-info.java rename to spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/package-info.java index 55ddb2d047..1a12eab3e3 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/amqp/package-info.java +++ b/spring-boot-project/spring-boot-amqp/src/main/java/org/springframework/boot/amqp/actuate/health/autoconfigure/package-info.java @@ -15,6 +15,6 @@ */ /** - * Auto-configuration for actuator AMQP concerns. + * Auto-configuration of health integration for AMQP and RabbitMQ. */ -package org.springframework.boot.actuate.autoconfigure.amqp; +package org.springframework.boot.amqp.actuate.health.autoconfigure; diff --git a/spring-boot-project/spring-boot-amqp/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-amqp/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 70b36f6967..f68c7d8480 100644 --- a/spring-boot-project/spring-boot-amqp/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-amqp/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1 +1,2 @@ +org.springframework.boot.amqp.actuate.health.autoconfigure.RabbitHealthContributorAutoConfiguration org.springframework.boot.amqp.autoconfigure.RabbitAutoConfiguration \ No newline at end of file diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfigurationTests.java b/spring-boot-project/spring-boot-amqp/src/test/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfigurationTests.java similarity index 96% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfigurationTests.java rename to spring-boot-project/spring-boot-amqp/src/test/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfigurationTests.java index b443e7052a..992180e870 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/amqp/RabbitHealthContributorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-amqp/src/test/java/org/springframework/boot/amqp/actuate/health/autoconfigure/RabbitHealthContributorAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.amqp; +package org.springframework.boot.amqp.actuate.health.autoconfigure; import org.junit.jupiter.api.Test;