From 51e1dc3b2d1cd273cf28f541d47eb9572aafb519 Mon Sep 17 00:00:00 2001 From: William Petit Date: Thu, 20 Apr 2023 12:22:30 +0200 Subject: [PATCH] fix(server,api): return 'not found' errors --- internal/server/spec_api.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/internal/server/spec_api.go b/internal/server/spec_api.go index fa2fa21..f7a0b26 100644 --- a/internal/server/spec_api.go +++ b/internal/server/spec_api.go @@ -58,6 +58,12 @@ func (s *Server) updateSpec(w http.ResponseWriter, r *http.Request) { updateSpecReq.SpecData(), ) if err != nil { + if errors.Is(err, datastore.ErrNotFound) { + api.ErrorResponse(w, http.StatusNotFound, ErrCodeNotFound, nil) + + return + } + if errors.Is(err, datastore.ErrUnexpectedRevision) { api.ErrorResponse(w, http.StatusConflict, ErrCodeUnexpectedRevision, nil) @@ -87,6 +93,12 @@ func (s *Server) getAgentSpecs(w http.ResponseWriter, r *http.Request) { specs, err := s.agentRepo.GetSpecs(ctx, agentID) if err != nil { + if errors.Is(err, datastore.ErrNotFound) { + api.ErrorResponse(w, http.StatusNotFound, ErrCodeNotFound, nil) + + return + } + logger.Error(ctx, "could not list specs", logger.E(errors.WithStack(err))) api.ErrorResponse(w, http.StatusInternalServerError, ErrCodeUnknownError, nil)