Move Data MongoDB health auto-configuration to spring-data-mongodb

This commit is contained in:
Andy Wilkinson
2025-05-20 11:53:29 +01:00
committed by Phillip Webb
parent 3bafb6e0ff
commit 3e72525828
10 changed files with 25 additions and 27 deletions

View File

@@ -32,7 +32,6 @@ dependencies {
optional(project(":spring-boot-project:spring-boot-couchbase"))
optional(project(":spring-boot-project:spring-boot-data-cassandra"))
optional(project(":spring-boot-project:spring-boot-data-jpa"))
optional(project(":spring-boot-project:spring-boot-data-mongodb"))
optional(project(":spring-boot-project:spring-boot-data-redis"))
optional(project(":spring-boot-project:spring-boot-http-converter"))
optional(project(":spring-boot-project:spring-boot-http-codec"))
@@ -121,8 +120,6 @@ dependencies {
optional("org.hibernate.validator:hibernate-validator")
optional("org.influxdb:influxdb-java")
optional("org.junit.platform:junit-platform-launcher")
optional("org.mongodb:mongodb-driver-reactivestreams")
optional("org.mongodb:mongodb-driver-sync")
optional("org.springframework:spring-messaging")
optional("org.springframework:spring-webflux")
optional("org.springframework:spring-webmvc")

View File

@@ -8,8 +8,6 @@ org.springframework.boot.actuate.autoconfigure.cloudfoundry.servlet.CloudFoundry
org.springframework.boot.actuate.autoconfigure.condition.ConditionsReportEndpointAutoConfiguration
org.springframework.boot.actuate.autoconfigure.context.properties.ConfigurationPropertiesReportEndpointAutoConfiguration
org.springframework.boot.actuate.autoconfigure.context.ShutdownEndpointAutoConfiguration
org.springframework.boot.actuate.autoconfigure.data.mongo.MongoHealthContributorAutoConfiguration
org.springframework.boot.actuate.autoconfigure.data.mongo.MongoReactiveHealthContributorAutoConfiguration
org.springframework.boot.actuate.autoconfigure.data.redis.RedisHealthContributorAutoConfiguration
org.springframework.boot.actuate.autoconfigure.data.redis.RedisReactiveHealthContributorAutoConfiguration
org.springframework.boot.actuate.autoconfigure.endpoint.jackson.JacksonEndpointAutoConfiguration

View File

@@ -27,13 +27,9 @@ import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.cassandra.autoconfigure.CassandraAutoConfiguration;
import org.springframework.boot.context.annotation.UserConfigurations;
import org.springframework.boot.data.cassandra.autoconfigure.CassandraDataAutoConfiguration;
import org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration;
import org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveDataAutoConfiguration;
import org.springframework.boot.data.redis.autoconfigure.RedisAutoConfiguration;
import org.springframework.boot.data.redis.autoconfigure.RedisRepositoriesAutoConfiguration;
import org.springframework.boot.data.rest.autoconfigure.RepositoryRestMvcAutoConfiguration;
import org.springframework.boot.mongodb.autoconfigure.MongoAutoConfiguration;
import org.springframework.boot.mongodb.autoconfigure.MongoReactiveAutoConfiguration;
import org.springframework.boot.test.context.runner.ReactiveWebApplicationContextRunner;
import org.springframework.boot.test.context.runner.WebApplicationContextRunner;
import org.springframework.boot.testsupport.classpath.ClassPathExclusions;
@@ -73,9 +69,8 @@ class WebEndpointsAutoConfigurationIntegrationTests {
}
@EnableAutoConfiguration(exclude = { CassandraAutoConfiguration.class, CassandraDataAutoConfiguration.class,
MongoAutoConfiguration.class, MongoDataAutoConfiguration.class, MongoReactiveAutoConfiguration.class,
MongoReactiveDataAutoConfiguration.class, RepositoryRestMvcAutoConfiguration.class,
RedisAutoConfiguration.class, RedisRepositoriesAutoConfiguration.class, BraveAutoConfiguration.class,
RepositoryRestMvcAutoConfiguration.class, RedisAutoConfiguration.class,
RedisRepositoriesAutoConfiguration.class, BraveAutoConfiguration.class,
OpenTelemetryTracingAutoConfiguration.class })
@SpringBootConfiguration
static class WebEndpointTestApplication {

View File

@@ -15,7 +15,7 @@ dependencies {
compileOnly("com.fasterxml.jackson.core:jackson-annotations")
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(project(":spring-boot-project:spring-boot-reactor"))
optional("org.mongodb:mongodb-driver-reactivestreams")

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.actuate.autoconfigure.data.mongo;
package org.springframework.boot.data.mongodb.actuate.health.autoconfigure;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.boot.actuate.autoconfigure.health.CompositeHealthContributorConfiguration;
@@ -26,6 +26,8 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.data.mongodb.actuate.health.MongoHealthIndicator;
import org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration;
import org.springframework.boot.mongodb.autoconfigure.MongoAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.data.mongodb.core.MongoTemplate;
@@ -33,12 +35,11 @@ import org.springframework.data.mongodb.core.MongoTemplate;
* {@link EnableAutoConfiguration Auto-configuration} for {@link MongoHealthIndicator}.
*
* @author Stephane Nicoll
* @since 2.1.0
* @since 4.0.0
*/
@AutoConfiguration(after = MongoReactiveHealthContributorAutoConfiguration.class,
afterName = { "org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration",
"org.springframework.boot.mongodb.autoconfigure.MongoAutoConfiguration" })
@ConditionalOnClass({ MongoTemplate.class, MongoHealthIndicator.class })
@AutoConfiguration(after = { MongoReactiveHealthContributorAutoConfiguration.class, MongoDataAutoConfiguration.class,
MongoAutoConfiguration.class })
@ConditionalOnClass({ MongoTemplate.class, MongoHealthIndicator.class, ConditionalOnEnabledHealthIndicator.class })
@ConditionalOnBean(MongoTemplate.class)
@ConditionalOnEnabledHealthIndicator("mongo")
public class MongoHealthContributorAutoConfiguration

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.actuate.autoconfigure.data.mongo;
package org.springframework.boot.data.mongodb.actuate.health.autoconfigure;
import reactor.core.publisher.Flux;
@@ -28,6 +28,7 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.data.mongodb.actuate.health.MongoReactiveHealthIndicator;
import org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveDataAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.data.mongodb.core.ReactiveMongoTemplate;
@@ -36,10 +37,11 @@ import org.springframework.data.mongodb.core.ReactiveMongoTemplate;
* {@link MongoReactiveHealthIndicator}.
*
* @author Stephane Nicoll
* @since 2.1.0
* @since 4.0.0
*/
@AutoConfiguration(afterName = "org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveDataAutoConfiguration")
@ConditionalOnClass({ ReactiveMongoTemplate.class, Flux.class, MongoReactiveHealthIndicator.class })
@AutoConfiguration(after = MongoReactiveDataAutoConfiguration.class)
@ConditionalOnClass({ ReactiveMongoTemplate.class, Flux.class, MongoReactiveHealthIndicator.class,
ConditionalOnEnabledHealthIndicator.class })
@ConditionalOnBean(ReactiveMongoTemplate.class)
@ConditionalOnEnabledHealthIndicator("mongo")
public class MongoReactiveHealthContributorAutoConfiguration

View File

@@ -15,6 +15,6 @@
*/
/**
* Auto-configuration for actuator MongoDB concerns dependent on Spring Data.
* Auto-configuration for MongoDB health integration using Spring Data MongoDB.
*/
package org.springframework.boot.actuate.autoconfigure.data.mongo;
package org.springframework.boot.data.mongodb.actuate.health.autoconfigure;

View File

@@ -1,3 +1,5 @@
org.springframework.boot.data.mongodb.actuate.health.autoconfigure.MongoHealthContributorAutoConfiguration
org.springframework.boot.data.mongodb.actuate.health.autoconfigure.MongoReactiveHealthContributorAutoConfiguration
org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration
org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveDataAutoConfiguration
org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveRepositoriesAutoConfiguration

View File

@@ -14,13 +14,14 @@
* limitations under the License.
*/
package org.springframework.boot.actuate.autoconfigure.data.mongo;
package org.springframework.boot.mongodb.actuate.health.autoconfigure;
import org.junit.jupiter.api.Test;
import org.springframework.boot.actuate.autoconfigure.health.HealthContributorAutoConfiguration;
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.data.mongodb.actuate.health.MongoHealthIndicator;
import org.springframework.boot.data.mongodb.actuate.health.autoconfigure.MongoHealthContributorAutoConfiguration;
import org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration;
import org.springframework.boot.mongodb.autoconfigure.MongoAutoConfiguration;
import org.springframework.boot.test.context.runner.ApplicationContextRunner;

View File

@@ -14,7 +14,7 @@
* limitations under the License.
*/
package org.springframework.boot.actuate.autoconfigure.data.mongo;
package org.springframework.boot.mongodb.actuate.health.autoconfigure;
import org.junit.jupiter.api.Test;
@@ -22,6 +22,8 @@ import org.springframework.boot.actuate.autoconfigure.health.HealthContributorAu
import org.springframework.boot.autoconfigure.AutoConfigurations;
import org.springframework.boot.data.mongodb.actuate.health.MongoHealthIndicator;
import org.springframework.boot.data.mongodb.actuate.health.MongoReactiveHealthIndicator;
import org.springframework.boot.data.mongodb.actuate.health.autoconfigure.MongoHealthContributorAutoConfiguration;
import org.springframework.boot.data.mongodb.actuate.health.autoconfigure.MongoReactiveHealthContributorAutoConfiguration;
import org.springframework.boot.data.mongodb.autoconfigure.MongoDataAutoConfiguration;
import org.springframework.boot.data.mongodb.autoconfigure.MongoReactiveDataAutoConfiguration;
import org.springframework.boot.mongodb.autoconfigure.MongoAutoConfiguration;