Swaps deprecated ConditionalOnEnabledEndpoint for updated annotation.
Swaps with ConditionalOnAvailableEndpoint
This commit is contained in:
@@ -21,7 +21,7 @@ import java.util.List;
|
||||
|
||||
import org.springframework.beans.factory.ObjectProvider;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
|
||||
import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
|
||||
import org.springframework.boot.actuate.health.HealthIndicator;
|
||||
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
|
||||
@@ -93,7 +93,7 @@ public class CommonsClientAutoConfiguration {
|
||||
private List<HasFeatures> hasFeatures = new ArrayList<>();
|
||||
|
||||
@Bean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public FeaturesEndpoint featuresEndpoint() {
|
||||
return new FeaturesEndpoint(this.hasFeatures);
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
package org.springframework.cloud.client.serviceregistry;
|
||||
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
|
||||
import org.springframework.boot.actuate.endpoint.annotation.Endpoint;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
@@ -39,7 +39,7 @@ public class ServiceRegistryAutoConfiguration {
|
||||
private Registration registration;
|
||||
|
||||
@Bean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public ServiceRegistryEndpoint serviceRegistryEndpoint(
|
||||
ServiceRegistry serviceRegistry) {
|
||||
ServiceRegistryEndpoint endpoint = new ServiceRegistryEndpoint(
|
||||
|
||||
@@ -51,6 +51,7 @@ public class CommonsClientAutoConfigurationTests {
|
||||
applicationContextRunner
|
||||
.withConfiguration(
|
||||
AutoConfigurations.of(HealthEndpointAutoConfiguration.class))
|
||||
.withPropertyValues("management.endpoints.web.exposure.include=features")
|
||||
.run(ctxt -> {
|
||||
then(ctxt.getBean(DiscoveryClientHealthIndicator.class)).isNotNull();
|
||||
then(ctxt.getBean(DiscoveryCompositeHealthContributor.class))
|
||||
@@ -63,7 +64,9 @@ public class CommonsClientAutoConfigurationTests {
|
||||
@Test
|
||||
public void disableAll() {
|
||||
applicationContextRunner
|
||||
.withPropertyValues("spring.cloud.discovery.enabled=false").run(ctxt -> {
|
||||
.withPropertyValues("spring.cloud.discovery.enabled=false",
|
||||
"management.endpoints.web.exposure.include=features")
|
||||
.run(ctxt -> {
|
||||
assertThat(ctxt)
|
||||
.doesNotHaveBean(DiscoveryClientHealthIndicator.class);
|
||||
assertThat(ctxt)
|
||||
@@ -77,7 +80,8 @@ public class CommonsClientAutoConfigurationTests {
|
||||
@Test
|
||||
public void disableBlocking() {
|
||||
applicationContextRunner
|
||||
.withPropertyValues("spring.cloud.discovery.blocking.enabled=false")
|
||||
.withPropertyValues("spring.cloud.discovery.blocking.enabled=false",
|
||||
"management.endpoints.web.exposure.include=features")
|
||||
.run(ctxt -> {
|
||||
assertThat(ctxt)
|
||||
.doesNotHaveBean(DiscoveryClientHealthIndicator.class);
|
||||
|
||||
@@ -46,20 +46,24 @@ public class ReactiveCommonsClientAutoConfigurationTests {
|
||||
|
||||
@Test
|
||||
public void beansCreatedNormally() {
|
||||
applicationContextRunner.run(context -> {
|
||||
then(context.getBean(ReactiveDiscoveryClientHealthIndicator.class))
|
||||
.isNotNull();
|
||||
then(context.getBean(ReactiveDiscoveryCompositeHealthContributor.class))
|
||||
.isNotNull();
|
||||
then(context.getBean(FeaturesEndpoint.class)).isNotNull();
|
||||
then(context.getBeansOfType(HasFeatures.class).values()).isNotEmpty();
|
||||
});
|
||||
applicationContextRunner
|
||||
.withPropertyValues("management.endpoints.web.exposure.include=features")
|
||||
.run(context -> {
|
||||
then(context.getBean(ReactiveDiscoveryClientHealthIndicator.class))
|
||||
.isNotNull();
|
||||
then(context
|
||||
.getBean(ReactiveDiscoveryCompositeHealthContributor.class))
|
||||
.isNotNull();
|
||||
then(context.getBean(FeaturesEndpoint.class)).isNotNull();
|
||||
then(context.getBeansOfType(HasFeatures.class).values()).isNotEmpty();
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
public void disableAll() {
|
||||
applicationContextRunner
|
||||
.withPropertyValues("spring.cloud.discovery.enabled=false")
|
||||
.withPropertyValues("spring.cloud.discovery.enabled=false",
|
||||
"management.endpoints.web.exposure.include=features")
|
||||
.run(context -> {
|
||||
assertThat(context).doesNotHaveBean(
|
||||
ReactiveDiscoveryClientHealthIndicator.class);
|
||||
@@ -74,7 +78,8 @@ public class ReactiveCommonsClientAutoConfigurationTests {
|
||||
@Test
|
||||
public void disableReactive() {
|
||||
applicationContextRunner
|
||||
.withPropertyValues("spring.cloud.discovery.reactive.enabled=false")
|
||||
.withPropertyValues("spring.cloud.discovery.reactive.enabled=false",
|
||||
"management.endpoints.web.exposure.include=features")
|
||||
.run(context -> {
|
||||
assertThat(context).doesNotHaveBean(
|
||||
ReactiveDiscoveryClientHealthIndicator.class);
|
||||
|
||||
@@ -20,7 +20,6 @@ import org.springframework.beans.factory.ObjectProvider;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.EndpointAutoConfiguration;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.health.ConditionalOnEnabledHealthIndicator;
|
||||
import org.springframework.boot.actuate.health.Health;
|
||||
import org.springframework.boot.autoconfigure.AutoConfigureAfter;
|
||||
@@ -87,7 +86,7 @@ class RestartEndpointWithIntegrationConfiguration {
|
||||
private IntegrationMBeanExporter exporter;
|
||||
|
||||
@Bean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
@ConditionalOnMissingBean
|
||||
public RestartEndpoint restartEndpoint() {
|
||||
RestartEndpoint endpoint = new RestartEndpoint();
|
||||
@@ -104,7 +103,7 @@ class RestartEndpointWithIntegrationConfiguration {
|
||||
class RestartEndpointWithoutIntegrationConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
@ConditionalOnMissingBean
|
||||
public RestartEndpoint restartEndpointWithoutIntegration() {
|
||||
return new RestartEndpoint();
|
||||
@@ -118,7 +117,7 @@ class PauseResumeEndpointsConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnBean(RestartEndpoint.class)
|
||||
@ConditionalOnMissingBean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public RestartEndpoint.PauseEndpoint pauseEndpoint(RestartEndpoint restartEndpoint) {
|
||||
return restartEndpoint.getPauseEndpoint();
|
||||
}
|
||||
@@ -126,7 +125,7 @@ class PauseResumeEndpointsConfiguration {
|
||||
@Bean
|
||||
@ConditionalOnBean(RestartEndpoint.class)
|
||||
@ConditionalOnMissingBean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public RestartEndpoint.ResumeEndpoint resumeEndpoint(
|
||||
RestartEndpoint restartEndpoint) {
|
||||
return restartEndpoint.getResumeEndpoint();
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
package org.springframework.cloud.autoconfigure;
|
||||
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnEnabledEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.endpoint.condition.ConditionalOnAvailableEndpoint;
|
||||
import org.springframework.boot.actuate.autoconfigure.env.EnvironmentEndpointAutoConfiguration;
|
||||
import org.springframework.boot.actuate.autoconfigure.env.EnvironmentEndpointProperties;
|
||||
import org.springframework.boot.actuate.env.EnvironmentEndpoint;
|
||||
@@ -61,7 +61,7 @@ public class WritableEnvironmentEndpointAutoConfiguration {
|
||||
|
||||
@Bean
|
||||
@ConditionalOnMissingBean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public WritableEnvironmentEndpoint environmentEndpoint(Environment environment) {
|
||||
WritableEnvironmentEndpoint endpoint = new WritableEnvironmentEndpoint(
|
||||
environment);
|
||||
@@ -73,7 +73,7 @@ public class WritableEnvironmentEndpointAutoConfiguration {
|
||||
}
|
||||
|
||||
@Bean
|
||||
@ConditionalOnEnabledEndpoint
|
||||
@ConditionalOnAvailableEndpoint
|
||||
public WritableEnvironmentEndpointWebExtension environmentEndpointWebExtension(
|
||||
WritableEnvironmentEndpoint endpoint, EnvironmentManager environment) {
|
||||
return new WritableEnvironmentEndpointWebExtension(endpoint, environment);
|
||||
|
||||
@@ -63,7 +63,8 @@ public class LifecycleMvcAutoConfigurationTests {
|
||||
@Test
|
||||
public void environmentWebEndpointExtensionEnabled() {
|
||||
beanCreated("environmentEndpointWebExtension",
|
||||
"management.endpoint.env.enabled=true");
|
||||
"management.endpoint.env.enabled=true",
|
||||
"management.endpoints.web.exposure.include=env");
|
||||
}
|
||||
|
||||
// restartEndpoint
|
||||
@@ -80,7 +81,8 @@ public class LifecycleMvcAutoConfigurationTests {
|
||||
@Test
|
||||
public void restartEndpointEnabled() {
|
||||
beanCreatedAndEndpointEnabled("restartEndpoint", RestartEndpoint.class,
|
||||
RestartEndpoint::restart, "management.endpoint.restart.enabled=true");
|
||||
RestartEndpoint::restart, "management.endpoint.restart.enabled=true",
|
||||
"management.endpoints.web.exposure.include=restart");
|
||||
}
|
||||
|
||||
// pauseEndpoint
|
||||
@@ -105,6 +107,7 @@ public class LifecycleMvcAutoConfigurationTests {
|
||||
beanCreatedAndEndpointEnabled("pauseEndpoint",
|
||||
RestartEndpoint.PauseEndpoint.class, RestartEndpoint.PauseEndpoint::pause,
|
||||
"management.endpoint.restart.enabled=true",
|
||||
"management.endpoints.web.exposure.include=restart,pause",
|
||||
"management.endpoint.pause.enabled=true");
|
||||
}
|
||||
|
||||
@@ -112,12 +115,14 @@ public class LifecycleMvcAutoConfigurationTests {
|
||||
@Test
|
||||
public void resumeEndpointDisabled() {
|
||||
beanNotCreated("resumeEndpoint", "management.endpoint.restart.enabled=true",
|
||||
"management.endpoints.web.exposure.include=restart",
|
||||
"management.endpoint.resume.enabled=false");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void resumeEndpointRestartDisabled() {
|
||||
beanNotCreated("resumeEndpoint", "management.endpoint.restart.enabled=false",
|
||||
"management.endpoints.web.exposure.include=resume",
|
||||
"management.endpoint.resume.enabled=true");
|
||||
}
|
||||
|
||||
@@ -132,7 +137,8 @@ public class LifecycleMvcAutoConfigurationTests {
|
||||
RestartEndpoint.ResumeEndpoint.class,
|
||||
RestartEndpoint.ResumeEndpoint::resume,
|
||||
"management.endpoint.restart.enabled=true",
|
||||
"management.endpoint.resume.enabled=true");
|
||||
"management.endpoint.resume.enabled=true",
|
||||
"management.endpoints.web.exposure.include=restart,resume");
|
||||
}
|
||||
|
||||
private void beanNotCreated(String beanName, String... contextProperties) {
|
||||
|
||||
@@ -47,6 +47,7 @@ public class RestartIntegrationTests {
|
||||
|
||||
this.context = SpringApplication.run(TestConfiguration.class,
|
||||
"--management.endpoint.restart.enabled=true", "--server.port=0",
|
||||
"--management.endpoints.web.exposure.include=restart",
|
||||
"--spring.liveBeansView.mbeanDomain=livebeans");
|
||||
|
||||
RestartEndpoint endpoint = this.context.getBean(RestartEndpoint.class);
|
||||
|
||||
Reference in New Issue
Block a user