diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json index e0d0056dcdc..f7c0fb35595 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -59,28 +59,6 @@ "description": "Whether to enable disk space health check.", "defaultValue": true }, - { - "name": "management.health.elasticsearch.enabled", - "type": "java.lang.Boolean", - "description": "Whether to enable Elasticsearch health check.", - "defaultValue": true - }, - { - "name": "management.health.elasticsearch.indices", - "type": "java.util.List", - "description": "Comma-separated index names.", - "deprecation": { - "level": "error" - } - }, - { - "name": "management.health.elasticsearch.response-timeout", - "type": "java.time.Duration", - "description": "Time to wait for a response from the cluster.", - "deprecation": { - "level": "error" - } - }, { "name": "management.health.influxdb.enabled", "type": "java.lang.Boolean", 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 b98992ee5a5..108e102bb59 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 @@ -13,7 +13,6 @@ org.springframework.boot.actuate.autoconfigure.data.mongo.MongoHealthContributor 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.elasticsearch.ElasticsearchRestHealthContributorAutoConfiguration org.springframework.boot.actuate.autoconfigure.endpoint.jackson.JacksonEndpointAutoConfiguration org.springframework.boot.actuate.autoconfigure.endpoint.jmx.JmxEndpointAutoConfiguration org.springframework.boot.actuate.autoconfigure.env.EnvironmentEndpointAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/data/elasticsearch/ElasticsearchReactiveHealthContributorAutoConfigurationTests.java b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/data/elasticsearch/ElasticsearchReactiveHealthContributorAutoConfigurationTests.java index 2e0b6651b07..5418e039621 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/data/elasticsearch/ElasticsearchReactiveHealthContributorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/data/elasticsearch/ElasticsearchReactiveHealthContributorAutoConfigurationTests.java @@ -18,12 +18,12 @@ package org.springframework.boot.actuate.autoconfigure.data.elasticsearch; import org.junit.jupiter.api.Test; -import org.springframework.boot.actuate.autoconfigure.elasticsearch.ElasticsearchRestHealthContributorAutoConfiguration; import org.springframework.boot.actuate.autoconfigure.health.HealthContributorAutoConfiguration; import org.springframework.boot.autoconfigure.AutoConfigurations; import org.springframework.boot.data.elasticsearch.actuate.health.ElasticsearchReactiveHealthIndicator; import org.springframework.boot.data.elasticsearch.autoconfigure.ElasticsearchDataAutoConfiguration; import org.springframework.boot.elasticsearch.actuate.health.ElasticsearchRestClientHealthIndicator; +import org.springframework.boot.elasticsearch.actuate.health.autoconfigure.ElasticsearchRestHealthContributorAutoConfiguration; import org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchRestClientAutoConfiguration; import org.springframework.boot.elasticsearch.autoconfigure.ReactiveElasticsearchClientAutoConfiguration; import org.springframework.boot.test.context.runner.ApplicationContextRunner; diff --git a/spring-boot-project/spring-boot-elasticsearch/build.gradle b/spring-boot-project/spring-boot-elasticsearch/build.gradle index bbf5913894d..97fb425f37d 100644 --- a/spring-boot-project/spring-boot-elasticsearch/build.gradle +++ b/spring-boot-project/spring-boot-elasticsearch/build.gradle @@ -30,7 +30,7 @@ dependencies { api(project(":spring-boot-project:spring-boot")) api("org.elasticsearch.client:elasticsearch-rest-client") - 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-jsonb")) optional(project(":spring-boot-project:spring-boot-reactor")) diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfiguration.java b/spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfiguration.java similarity index 87% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfiguration.java rename to spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfiguration.java index 3559e333c68..751d90c46a4 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfiguration.java +++ b/spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfiguration.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.elasticsearch; +package org.springframework.boot.elasticsearch.actuate.health.autoconfigure; import org.elasticsearch.client.RestClient; @@ -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.elasticsearch.actuate.health.ElasticsearchRestClientHealthIndicator; +import org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchRestClientAutoConfiguration; import org.springframework.context.annotation.Bean; /** @@ -37,9 +38,8 @@ import org.springframework.context.annotation.Bean; * @author Artsiom Yudovin * @since 2.1.1 */ -@AutoConfiguration( - afterName = "org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchRestClientAutoConfiguration") -@ConditionalOnClass({ RestClient.class, ElasticsearchRestClientHealthIndicator.class }) +@AutoConfiguration(after = ElasticsearchRestClientAutoConfiguration.class) +@ConditionalOnClass({ RestClient.class, ConditionalOnEnabledHealthIndicator.class }) @ConditionalOnBean(RestClient.class) @ConditionalOnEnabledHealthIndicator("elasticsearch") public class ElasticsearchRestHealthContributorAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/package-info.java b/spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/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/elasticsearch/package-info.java rename to spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/package-info.java index daf6df05d08..015ab23374e 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/main/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/package-info.java +++ b/spring-boot-project/spring-boot-elasticsearch/src/main/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/package-info.java @@ -15,6 +15,6 @@ */ /** - * Auto-configuration for actuator Elasticsearch concerns. + * Auto-configuration for Elasticsearch health integration. */ -package org.springframework.boot.actuate.autoconfigure.elasticsearch; +package org.springframework.boot.elasticsearch.actuate.health.autoconfigure; diff --git a/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/additional-spring-configuration-metadata.json b/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/additional-spring-configuration-metadata.json index 888c9ab4138..eb026829f27 100644 --- a/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/additional-spring-configuration-metadata.json +++ b/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/additional-spring-configuration-metadata.json @@ -1,6 +1,28 @@ { "groups": [], "properties": [ + { + "name": "management.health.elasticsearch.enabled", + "type": "java.lang.Boolean", + "description": "Whether to enable Elasticsearch health check.", + "defaultValue": true + }, + { + "name": "management.health.elasticsearch.indices", + "type": "java.util.List", + "description": "Comma-separated index names.", + "deprecation": { + "level": "error" + } + }, + { + "name": "management.health.elasticsearch.response-timeout", + "type": "java.time.Duration", + "description": "Time to wait for a response from the cluster.", + "deprecation": { + "level": "error" + } + }, { "name": "spring.elasticsearch.jest.connection-timeout", "type": "java.time.Duration", diff --git a/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports index 9b5593b0ce6..9ec0c7de154 100644 --- a/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ b/spring-boot-project/spring-boot-elasticsearch/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports @@ -1,3 +1,4 @@ +org.springframework.boot.elasticsearch.actuate.health.autoconfigure.ElasticsearchRestHealthContributorAutoConfiguration org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchClientAutoConfiguration org.springframework.boot.elasticsearch.autoconfigure.ElasticsearchRestClientAutoConfiguration -org.springframework.boot.elasticsearch.autoconfigure.ReactiveElasticsearchClientAutoConfiguration \ No newline at end of file +org.springframework.boot.elasticsearch.autoconfigure.ReactiveElasticsearchClientAutoConfiguration diff --git a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfigurationTests.java b/spring-boot-project/spring-boot-elasticsearch/src/test/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfigurationTests.java similarity index 97% rename from spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfigurationTests.java rename to spring-boot-project/spring-boot-elasticsearch/src/test/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfigurationTests.java index e0e48db5273..e7fdee71617 100644 --- a/spring-boot-project/spring-boot-actuator-autoconfigure-all/src/test/java/org/springframework/boot/actuate/autoconfigure/elasticsearch/ElasticsearchRestHealthContributorAutoConfigurationTests.java +++ b/spring-boot-project/spring-boot-elasticsearch/src/test/java/org/springframework/boot/elasticsearch/actuate/health/autoconfigure/ElasticsearchRestHealthContributorAutoConfigurationTests.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.springframework.boot.actuate.autoconfigure.elasticsearch; +package org.springframework.boot.elasticsearch.actuate.health.autoconfigure; import org.elasticsearch.client.RestClient; import org.elasticsearch.client.RestClientBuilder;