From 0c88697b2e90362fe47c54917c5de2cbc146a66c Mon Sep 17 00:00:00 2001 From: nitrix Date: Wed, 4 Mar 2026 02:47:36 +0100 Subject: [PATCH] Replace manual health endpoint with Spring Boot Actuator Remove the hand-rolled HealthController and use spring-boot-starter-actuator instead. Only the health endpoint is exposed, with no detail leakage. Co-Authored-By: Claude Opus 4.6 --- backend/pom.xml | 5 +++++ .../de/fete/adapter/in/web/HealthController.java | 16 ---------------- .../src/main/resources/application.properties | 3 +++ .../test/java/de/fete/FeteApplicationTest.java | 4 ++-- 4 files changed, 10 insertions(+), 18 deletions(-) delete mode 100644 backend/src/main/java/de/fete/adapter/in/web/HealthController.java diff --git a/backend/pom.xml b/backend/pom.xml index e3ba340..99bd545 100644 --- a/backend/pom.xml +++ b/backend/pom.xml @@ -27,6 +27,11 @@ spring-boot-starter-web + + org.springframework.boot + spring-boot-starter-actuator + + org.springframework.boot spring-boot-starter-test diff --git a/backend/src/main/java/de/fete/adapter/in/web/HealthController.java b/backend/src/main/java/de/fete/adapter/in/web/HealthController.java deleted file mode 100644 index d42314c..0000000 --- a/backend/src/main/java/de/fete/adapter/in/web/HealthController.java +++ /dev/null @@ -1,16 +0,0 @@ -package de.fete.adapter.in.web; - -import java.util.Map; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RestController; - -/** REST endpoint for health checks. */ -@RestController -public class HealthController { - - /** Returns a simple health status. */ - @GetMapping("/health") - public Map health() { - return Map.of("status", "ok"); - } -} diff --git a/backend/src/main/resources/application.properties b/backend/src/main/resources/application.properties index aa24dc4..ea9dbcd 100644 --- a/backend/src/main/resources/application.properties +++ b/backend/src/main/resources/application.properties @@ -1 +1,4 @@ spring.application.name=fete + +management.endpoints.web.exposure.include=health +management.endpoint.health.show-details=never diff --git a/backend/src/test/java/de/fete/FeteApplicationTest.java b/backend/src/test/java/de/fete/FeteApplicationTest.java index 98be55a..8980362 100644 --- a/backend/src/test/java/de/fete/FeteApplicationTest.java +++ b/backend/src/test/java/de/fete/FeteApplicationTest.java @@ -24,8 +24,8 @@ class FeteApplicationTest { @Test void healthEndpointReturns200() throws Exception { - mockMvc.perform(get("/health")) + mockMvc.perform(get("/actuator/health")) .andExpect(status().isOk()) - .andExpect(jsonPath("$.status").value("ok")); + .andExpect(jsonPath("$.status").value("UP")); } }