K8s: Folders: fix error conversion (#102737)

This commit is contained in:
Stephanie Hingtgen
2025-03-24 19:59:26 +02:00
committed by GitHub
parent c8881c272f
commit 1e4555c79b
3 changed files with 26 additions and 5 deletions
+7 -3
View File
@@ -44,9 +44,13 @@ func ToFolderErrorResponse(err error) response.Response {
return response.JSON(http.StatusPreconditionFailed, util.DynMap{"status": "version-mismatch", "message": dashboards.ErrFolderVersionMismatch.Error()})
}
// folder errors are wrapped in an error util, so this is the only way of comparing errors
if err.Error() == folder.ErrMaximumDepthReached.Error() {
return response.JSON(http.StatusBadRequest, util.DynMap{"messageId": "folder.maximum-depth-reached", "message": "Maximum nested folder depth reached"})
if errors.Is(err, folder.ErrMaximumDepthReached) {
return response.JSON(http.StatusBadRequest, util.DynMap{"messageId": "folder.maximum-depth-reached", "message": folder.ErrMaximumDepthReached.Error()})
}
var statusErr *k8sErrors.StatusError
if errors.As(err, &statusErr) {
return response.Error(int(statusErr.ErrStatus.Code), statusErr.ErrStatus.Message, err)
}
return response.ErrOrFallback(http.StatusInternalServerError, "Folder API error", err)