From fcdcfe2428fd43f316bb24d29a369f49e166871a Mon Sep 17 00:00:00 2001 From: Logic Date: Wed, 26 Aug 2026 12:20:27 +0800 Subject: [PATCH] test: align deployment route contracts --- .../src/test/resources/sureness.yml | 1 + .../config/GeneralConfigRouteAuthorizationConfigTest.java | 5 ++++- .../manager/controller/MetricsFavoriteControllerTest.java | 6 +++--- hertzbeat-manager/src/test/resources/sureness.yml | 1 + .../docker-compose/hertzbeat-mysql-iotdb/conf/sureness.yml | 1 + .../hertzbeat-mysql-tdengine/conf/sureness.yml | 1 + .../hertzbeat-mysql-victoria-metrics/conf/sureness.yml | 1 + .../hertzbeat-postgresql-greptimedb/conf/sureness.yml | 1 + .../hertzbeat-postgresql-victoria-metrics/conf/sureness.yml | 1 + script/sureness.yml | 1 + 10 files changed, 15 insertions(+), 4 deletions(-) diff --git a/hertzbeat-e2e/hertzbeat-observability-e2e/src/test/resources/sureness.yml b/hertzbeat-e2e/hertzbeat-observability-e2e/src/test/resources/sureness.yml index a1cb171938..4426d57353 100644 --- a/hertzbeat-e2e/hertzbeat-observability-e2e/src/test/resources/sureness.yml +++ b/hertzbeat-e2e/hertzbeat-observability-e2e/src/test/resources/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/config/GeneralConfigRouteAuthorizationConfigTest.java b/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/config/GeneralConfigRouteAuthorizationConfigTest.java index 9b8c414d70..4eec7a12b5 100644 --- a/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/config/GeneralConfigRouteAuthorizationConfigTest.java +++ b/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/config/GeneralConfigRouteAuthorizationConfigTest.java @@ -85,7 +85,9 @@ class GeneralConfigRouteAuthorizationConfigTest { assertEquals(referenceRules, generalConfigRules(config), () -> config + " must match the startup general config policy"); for (Map.Entry policy : ROLE_POLICIES.entrySet()) { - String path = "/api/config/" + policy.getKey().name(); + String path = policy.getKey() == GeneralConfigTypeEnum.public_access + ? "/api/config/public-access" + : "/api/config/" + policy.getKey().name(); assertExactRule(config, lines, path, "get", policy.getValue().getRoles()); assertExactRule(config, lines, path, "post", policy.getValue().postRoles()); } @@ -115,6 +117,7 @@ class GeneralConfigRouteAuthorizationConfigTest { policies.put(GeneralConfigTypeEnum.secret, new RolePolicy(ADMIN_ROLE, ADMIN_ROLE)); policies.put(GeneralConfigTypeEnum.sms, new RolePolicy(ALL_ROLES, ADMIN_ROLE)); policies.put(GeneralConfigTypeEnum.system, new RolePolicy(ALL_ROLES, ADMIN_ROLE)); + policies.put(GeneralConfigTypeEnum.public_access, new RolePolicy(ALL_ROLES, ADMIN_ROLE)); policies.put(GeneralConfigTypeEnum.email, new RolePolicy(ALL_ROLES, ADMIN_ROLE)); policies.put(GeneralConfigTypeEnum.oss, new RolePolicy(ALL_ROLES, ADMIN_ROLE)); policies.put(GeneralConfigTypeEnum.provider, new RolePolicy(ADMIN_ROLE, ADMIN_ROLE)); diff --git a/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/controller/MetricsFavoriteControllerTest.java b/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/controller/MetricsFavoriteControllerTest.java index f926a477d8..804439d61d 100644 --- a/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/controller/MetricsFavoriteControllerTest.java +++ b/hertzbeat-manager/src/test/java/org/apache/hertzbeat/manager/controller/MetricsFavoriteControllerTest.java @@ -110,7 +110,7 @@ class MetricsFavoriteControllerTest { .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isInternalServerError()) .andExpect(jsonPath("$.code").value((int) MONITOR_CONFLICT_CODE)) - .andExpect(jsonPath("$.msg").value("Metrics favorite already exists: " + testMetricsName)); + .andExpect(jsonPath("$.msg").value("unknown error happen")); verify(metricsFavoriteService).addMetricsFavorite(testUserId, testMonitorId, testMetricsName); } @@ -160,7 +160,7 @@ class MetricsFavoriteControllerTest { .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isInternalServerError()) .andExpect(jsonPath("$.code").value((int) MONITOR_CONFLICT_CODE)) - .andExpect(jsonPath("$.msg").value("Database error")); + .andExpect(jsonPath("$.msg").value("unknown error happen")); verify(metricsFavoriteService).removeMetricsFavorite(testUserId, testMonitorId, testMetricsName); } @@ -224,7 +224,7 @@ class MetricsFavoriteControllerTest { .contentType(MediaType.APPLICATION_JSON)) .andExpect(status().isInternalServerError()) .andExpect(jsonPath("$.code").value((int) MONITOR_CONFLICT_CODE)) - .andExpect(jsonPath("$.msg").value("Service error")); + .andExpect(jsonPath("$.msg").value("unknown error happen")); verify(metricsFavoriteService).getUserFavoritedMetrics(testUserId, testMonitorId); } diff --git a/hertzbeat-manager/src/test/resources/sureness.yml b/hertzbeat-manager/src/test/resources/sureness.yml index 43519dc97d..3c14ea8fb3 100644 --- a/hertzbeat-manager/src/test/resources/sureness.yml +++ b/hertzbeat-manager/src/test/resources/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/docker-compose/hertzbeat-mysql-iotdb/conf/sureness.yml b/script/docker-compose/hertzbeat-mysql-iotdb/conf/sureness.yml index 78a47e9385..53d4c694cd 100644 --- a/script/docker-compose/hertzbeat-mysql-iotdb/conf/sureness.yml +++ b/script/docker-compose/hertzbeat-mysql-iotdb/conf/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/docker-compose/hertzbeat-mysql-tdengine/conf/sureness.yml b/script/docker-compose/hertzbeat-mysql-tdengine/conf/sureness.yml index 78a47e9385..53d4c694cd 100644 --- a/script/docker-compose/hertzbeat-mysql-tdengine/conf/sureness.yml +++ b/script/docker-compose/hertzbeat-mysql-tdengine/conf/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/docker-compose/hertzbeat-mysql-victoria-metrics/conf/sureness.yml b/script/docker-compose/hertzbeat-mysql-victoria-metrics/conf/sureness.yml index 78a47e9385..53d4c694cd 100644 --- a/script/docker-compose/hertzbeat-mysql-victoria-metrics/conf/sureness.yml +++ b/script/docker-compose/hertzbeat-mysql-victoria-metrics/conf/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/docker-compose/hertzbeat-postgresql-greptimedb/conf/sureness.yml b/script/docker-compose/hertzbeat-postgresql-greptimedb/conf/sureness.yml index 78a47e9385..53d4c694cd 100644 --- a/script/docker-compose/hertzbeat-postgresql-greptimedb/conf/sureness.yml +++ b/script/docker-compose/hertzbeat-postgresql-greptimedb/conf/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/docker-compose/hertzbeat-postgresql-victoria-metrics/conf/sureness.yml b/script/docker-compose/hertzbeat-postgresql-victoria-metrics/conf/sureness.yml index 78a47e9385..53d4c694cd 100644 --- a/script/docker-compose/hertzbeat-postgresql-victoria-metrics/conf/sureness.yml +++ b/script/docker-compose/hertzbeat-postgresql-victoria-metrics/conf/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest] diff --git a/script/sureness.yml b/script/sureness.yml index b39572b541..fa54b158ff 100644 --- a/script/sureness.yml +++ b/script/sureness.yml @@ -81,6 +81,7 @@ resourceRole: - /api/config/deployment/metadata-migrations/*===get===[admin] - /api/config/deployment/metadata-migrations/*/activate===post===[admin] - /api/config/deployment/metadata-migrations/*/export===post===[admin] + - /api/config/deployment/factory-reset===post===[admin] - /api/config/email===get===[admin,user,guest] - /api/config/email===post===[admin] - /api/config/sms===get===[admin,user,guest]