GH-77 - Upgrade to Spring Boot 3.0.

Adapt to API changes in Micrometer and Spring Boot's test context loader API now exposing a checked ContextLoadException to signal failures during ApplicationContext bootstraps.
This commit is contained in:
Oliver Drotbohm
2022-11-24 22:31:49 +01:00
parent 065db76547
commit b402f00c77
3 changed files with 15 additions and 14 deletions

View File

@@ -33,7 +33,7 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<spring-asciidoctor-backends.version>0.0.4-SNAPSHOT</spring-asciidoctor-backends.version>
<spring-boot.version>3.0.0-RC1</spring-boot.version>
<spring-boot.version>3.0.0</spring-boot.version>
</properties>

View File

@@ -15,7 +15,7 @@
*/
package org.springframework.modulith.observability;
import io.micrometer.tracing.BaggageInScope;
import io.micrometer.tracing.Baggage;
import io.micrometer.tracing.Span;
import io.micrometer.tracing.Tracer;
import io.micrometer.tracing.Tracer.SpanInScope;
@@ -59,7 +59,7 @@ class ModuleEntryInterceptor implements MethodInterceptor {
if (currentSpan != null) {
BaggageInScope currentBaggage = tracer.getBaggage(ModuleTracingBeanPostProcessor.MODULE_BAGGAGE_KEY);
Baggage currentBaggage = tracer.getBaggage(ModuleTracingBeanPostProcessor.MODULE_BAGGAGE_KEY);
if (currentBaggage != null && moduleName.equals(currentBaggage.get())) {
return invocation.proceed();
@@ -76,10 +76,9 @@ class ModuleEntryInterceptor implements MethodInterceptor {
.tag(ModuleTracingBeanPostProcessor.MODULE_BAGGAGE_KEY, moduleName)
.start();
try (
SpanInScope ws = tracer.withSpan(span); //
BaggageInScope baggage = tracer.createBaggage(ModuleTracingBeanPostProcessor.MODULE_BAGGAGE_KEY, moduleName); //
) {
tracer.createBaggage(ModuleTracingBeanPostProcessor.MODULE_BAGGAGE_KEY, moduleName);
try (SpanInScope ws = tracer.withSpan(span)) {
return invocation.proceed();

View File

@@ -25,6 +25,7 @@ import org.springframework.boot.test.context.assertj.AssertableApplicationContex
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.test.context.BootstrapContext;
import org.springframework.test.context.CacheAwareContextLoaderDelegate;
import org.springframework.test.context.ContextLoadException;
import org.springframework.test.context.MergedContextConfiguration;
import org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate;
import org.springframework.test.context.support.DefaultBootstrapContext;
@@ -52,13 +53,10 @@ public class TestUtils {
return (ConfigurableApplicationContext) loader.loadContext(configuration);
} catch (Exception e) {
if (e instanceof RuntimeException) {
throw (RuntimeException) e;
}
throw new RuntimeException(e);
} catch (ContextLoadException o_O) {
throw asRuntimeException(o_O.getCause());
} catch (Exception o_O) {
throw asRuntimeException(o_O);
}
});
@@ -70,4 +68,8 @@ public class TestUtils {
});
});
}
private static RuntimeException asRuntimeException(Throwable o_O) {
return o_O instanceof RuntimeException ? (RuntimeException) o_O : new RuntimeException(o_O);
}
}