Alerting: Return 404 when /api/ruler/grafana/api/v1/rules/{Namespace}/{Groupname} does not exist (#100264)

* Return a 404 when rule group doesn't exist

* Update tests

* Update swagger doc and tests
This commit is contained in:
Fayzal Ghantiwala
2025-02-07 16:24:28 +00:00
committed by GitHub
parent 9ce6c69996
commit 7ae8058c8b
7 changed files with 134 additions and 74 deletions
+5
View File
@@ -242,6 +242,10 @@ func (srv RulerSrv) RouteGetRulesGroupConfig(c *contextmodel.ReqContext, namespa
return errorToResponse(err)
}
if len(rules) == 0 {
return ErrResp(http.StatusNotFound, errors.New("rule group does not exist"), "")
}
provenanceRecords, err := srv.provenanceStore.GetProvenances(c.Req.Context(), c.SignedInUser.GetOrgID(), (&ngmodels.AlertRule{}).ResourceType())
if err != nil {
return ErrResp(http.StatusInternalServerError, err, "failed to get group alert rules")
@@ -251,6 +255,7 @@ func (srv RulerSrv) RouteGetRulesGroupConfig(c *contextmodel.ReqContext, namespa
// nolint:staticcheck
GettableRuleGroupConfig: toGettableRuleGroupConfig(finalRuleGroup, rules, provenanceRecords, srv.resolveUserIdToNameFn(c.Req.Context())),
}
return response.JSON(http.StatusAccepted, result)
}