Alerting: Add rule group name validation to the Prometheus conversion API (#108740)

Alerting: Add rule group name validation to the conversion API
This commit is contained in:
Alexander Akhmetov
2025-07-28 11:44:17 +02:00
committed by GitHub
parent 252fc67fbd
commit f969eb0277
3 changed files with 52 additions and 4 deletions
@@ -291,6 +291,30 @@ func TestRouteConvertPrometheusPostRuleGroup(t *testing.T) {
}
})
t.Run("with empty rule group name should return 400", func(t *testing.T) {
srv, _, _ := createConvertPrometheusSrv(t)
rc := createRequestCtx()
emptyNameGroup := apimodels.PrometheusRuleGroup{
Name: "",
Interval: prommodel.Duration(1 * time.Minute),
Rules: []apimodels.PrometheusRule{
{
Alert: "TestAlert",
Expr: "up == 0",
For: util.Pointer(prommodel.Duration(5 * time.Minute)),
Labels: map[string]string{
"severity": "critical",
},
},
},
}
response := srv.RouteConvertPrometheusPostRuleGroup(rc, "test", emptyNameGroup)
require.Equal(t, http.StatusBadRequest, response.Status())
require.Contains(t, string(response.Body()), "rule group name must not be empty")
})
t.Run("with valid request should return 202", func(t *testing.T) {
srv, _, _ := createConvertPrometheusSrv(t)
rc := createRequestCtx()