From 06327e35d6b87cdd2914de8f7dae24b518beafd1 Mon Sep 17 00:00:00 2001 From: Bouke van der Bijl Date: Mon, 2 Sep 2019 12:39:33 +0000 Subject: [PATCH] Revert "registry: convert AWS S3 error to correct errcode" This reverts commit f02edffc68a4224b466479acd009bb48484ba814. --- registry/api/errcode/handler.go | 43 --------------------------------- 1 file changed, 43 deletions(-) diff --git a/registry/api/errcode/handler.go b/registry/api/errcode/handler.go index 84f49ad10..ebb9ce927 100644 --- a/registry/api/errcode/handler.go +++ b/registry/api/errcode/handler.go @@ -3,9 +3,6 @@ package errcode import ( "encoding/json" "net/http" - - "github.com/aws/aws-sdk-go/aws/awserr" - "github.com/docker/distribution/registry/storage/driver" ) // ServeJSON attempts to serve the errcode in a JSON envelope. It marshals err @@ -21,27 +18,13 @@ func ServeJSON(w http.ResponseWriter, err error) error { break } - for i := range errs { - if err2, ok := errs[i].(Error); ok { - errs[i] = replaceError(err2) - } - } - if err, ok := errs[0].(ErrorCoder); ok { sc = err.ErrorCode().Descriptor().HTTPStatusCode } case ErrorCoder: - if err2, ok := errs.(Error); ok { - errs = replaceError(err2) - } - sc = errs.ErrorCode().Descriptor().HTTPStatusCode err = Errors{err} // create an envelope. default: - if err2, ok := err.(Error); ok { - err = replaceError(err2) - } - // We just have an unhandled error type, so just place in an envelope // and move along. err = Errors{err} @@ -55,29 +38,3 @@ func ServeJSON(w http.ResponseWriter, err error) error { return json.NewEncoder(w).Encode(err) } - -func replaceError(e Error) Error { - serr, ok := e.Detail.(driver.Error) - if !ok { - return e - } - - err, ok := serr.Enclosed.(awserr.RequestFailure) - if !ok { - return e - } - - code := ErrorCodeUnknown - switch err.StatusCode() { - case http.StatusForbidden: - code = ErrorCodeDenied - case http.StatusServiceUnavailable: - code = ErrorCodeUnavailable - case http.StatusUnauthorized: - code = ErrorCodeUnauthorized - case http.StatusTooManyRequests: - code = ErrorCodeTooManyRequests - } - - return code.WithDetail(err.Code()) -}