From 76c4ab8bb51a1d0a7f30ee725a65c177d6c84002 Mon Sep 17 00:00:00 2001 From: danielqsj Date: Tue, 12 Nov 2019 16:26:59 +0800 Subject: [PATCH] unify alias of api errors under pkg and staging Kubernetes-commit: 5bc0e26c1902e7e28abfc828de19a2dbb3e492c2 --- pkg/endpoints/apiserver_test.go | 16 ++++++++-------- pkg/registry/generic/registry/store.go | 26 +++++++++++++------------- pkg/storage/etcd3/watcher.go | 8 ++++---- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/pkg/endpoints/apiserver_test.go b/pkg/endpoints/apiserver_test.go index bdd41236a..53561de7e 100644 --- a/pkg/endpoints/apiserver_test.go +++ b/pkg/endpoints/apiserver_test.go @@ -41,7 +41,7 @@ import ( fuzzer "k8s.io/apimachinery/pkg/api/apitesting/fuzzer" apiequality "k8s.io/apimachinery/pkg/api/equality" - apierrs "k8s.io/apimachinery/pkg/api/errors" + apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/meta" metainternalversion "k8s.io/apimachinery/pkg/apis/meta/internalversion" metainternalversionscheme "k8s.io/apimachinery/pkg/apis/meta/internalversion/scheme" @@ -2802,7 +2802,7 @@ func TestGetNamespaceSelfLink(t *testing.T) { func TestGetMissing(t *testing.T) { storage := map[string]rest.Storage{} simpleStorage := SimpleRESTStorage{ - errors: map[string]error{"get": apierrs.NewNotFound(schema.GroupResource{Resource: "simples"}, "id")}, + errors: map[string]error{"get": apierrors.NewNotFound(schema.GroupResource{Resource: "simples"}, "id")}, } storage["simple"] = &simpleStorage handler := handle(storage) @@ -2822,7 +2822,7 @@ func TestGetMissing(t *testing.T) { func TestGetRetryAfter(t *testing.T) { storage := map[string]rest.Storage{} simpleStorage := SimpleRESTStorage{ - errors: map[string]error{"get": apierrs.NewServerTimeout(schema.GroupResource{Resource: "simples"}, "id", 2)}, + errors: map[string]error{"get": apierrors.NewServerTimeout(schema.GroupResource{Resource: "simples"}, "id", 2)}, } storage["simple"] = &simpleStorage handler := handle(storage) @@ -2925,7 +2925,7 @@ func TestConnectResponderError(t *testing.T) { connectStorage := &ConnecterRESTStorage{} connectStorage.handlerFunc = func() http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) { - connectStorage.receivedResponder.Error(apierrs.NewForbidden(schema.GroupResource{Resource: "simples"}, itemID, errors.New("you are terminated"))) + connectStorage.receivedResponder.Error(apierrors.NewForbidden(schema.GroupResource{Resource: "simples"}, itemID, errors.New("you are terminated"))) }) } storage := map[string]rest.Storage{ @@ -3271,7 +3271,7 @@ func TestDeleteMissing(t *testing.T) { storage := map[string]rest.Storage{} ID := "id" simpleStorage := SimpleRESTStorage{ - errors: map[string]error{"delete": apierrs.NewNotFound(schema.GroupResource{Resource: "simples"}, ID)}, + errors: map[string]error{"delete": apierrors.NewNotFound(schema.GroupResource{Resource: "simples"}, ID)}, } storage["simple"] = &simpleStorage handler := handle(storage) @@ -3543,7 +3543,7 @@ func TestUpdateMissing(t *testing.T) { storage := map[string]rest.Storage{} ID := "id" simpleStorage := SimpleRESTStorage{ - errors: map[string]error{"update": apierrs.NewNotFound(schema.GroupResource{Resource: "simples"}, ID)}, + errors: map[string]error{"update": apierrors.NewNotFound(schema.GroupResource{Resource: "simples"}, ID)}, } storage["simple"] = &simpleStorage handler := handle(storage) @@ -3581,7 +3581,7 @@ func TestCreateNotFound(t *testing.T) { "simple": &SimpleRESTStorage{ // storage.Create can fail with not found error in theory. // See http://pr.k8s.io/486#discussion_r15037092. - errors: map[string]error{"create": apierrs.NewNotFound(schema.GroupResource{Resource: "simples"}, "id")}, + errors: map[string]error{"create": apierrors.NewNotFound(schema.GroupResource{Resource: "simples"}, "id")}, }, }) server := httptest.NewServer(handler) @@ -4217,7 +4217,7 @@ func expectAPIStatus(t *testing.T, method, url string, data []byte, code int) *m func TestDelayReturnsError(t *testing.T) { storage := SimpleRESTStorage{ injectedFunction: func(obj runtime.Object) (runtime.Object, error) { - return nil, apierrs.NewAlreadyExists(schema.GroupResource{Resource: "foos"}, "bar") + return nil, apierrors.NewAlreadyExists(schema.GroupResource{Resource: "foos"}, "bar") }, } handler := handle(map[string]rest.Storage{"foo": &storage}) diff --git a/pkg/registry/generic/registry/store.go b/pkg/registry/generic/registry/store.go index f12975d31..b3c554040 100644 --- a/pkg/registry/generic/registry/store.go +++ b/pkg/registry/generic/registry/store.go @@ -24,7 +24,7 @@ import ( "sync" "time" - kubeerr "k8s.io/apimachinery/pkg/api/errors" + apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/apimachinery/pkg/api/validation/path" metainternalversion "k8s.io/apimachinery/pkg/apis/meta/internalversion" @@ -220,13 +220,13 @@ func NamespaceKeyFunc(ctx context.Context, prefix string, name string) (string, key := NamespaceKeyRootFunc(ctx, prefix) ns, ok := genericapirequest.NamespaceFrom(ctx) if !ok || len(ns) == 0 { - return "", kubeerr.NewBadRequest("Namespace parameter required.") + return "", apierrors.NewBadRequest("Namespace parameter required.") } if len(name) == 0 { - return "", kubeerr.NewBadRequest("Name parameter required.") + return "", apierrors.NewBadRequest("Name parameter required.") } if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { - return "", kubeerr.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) + return "", apierrors.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) } key = key + "/" + name return key, nil @@ -236,10 +236,10 @@ func NamespaceKeyFunc(ctx context.Context, prefix string, name string) (string, // to a resource relative to the given prefix without a namespace. func NoNamespaceKeyFunc(ctx context.Context, prefix string, name string) (string, error) { if len(name) == 0 { - return "", kubeerr.NewBadRequest("Name parameter required.") + return "", apierrors.NewBadRequest("Name parameter required.") } if msgs := path.IsValidPathSegmentName(name); len(msgs) != 0 { - return "", kubeerr.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) + return "", apierrors.NewBadRequest(fmt.Sprintf("Name parameter invalid: %q: %s", name, strings.Join(msgs, ";"))) } key := prefix + "/" + name return key, nil @@ -363,7 +363,7 @@ func (e *Store) Create(ctx context.Context, obj runtime.Object, createValidation if err := e.Storage.Create(ctx, key, obj, out, ttl, dryrun.IsDryRun(options.DryRun)); err != nil { err = storeerr.InterpretCreateError(err, qualifiedResource, name) err = rest.CheckGeneratedNameError(e.CreateStrategy, err, obj) - if !kubeerr.IsAlreadyExists(err) { + if !apierrors.IsAlreadyExists(err) { return nil, err } if errGet := e.Storage.Get(ctx, key, "", out, false); errGet != nil { @@ -374,7 +374,7 @@ func (e *Store) Create(ctx context.Context, obj runtime.Object, createValidation return nil, err } if accessor.GetDeletionTimestamp() != nil { - msg := &err.(*kubeerr.StatusError).ErrStatus.Message + msg := &err.(*apierrors.StatusError).ErrStatus.Message *msg = fmt.Sprintf("object is being deleted: %s", *msg) } return nil, err @@ -493,7 +493,7 @@ func (e *Store) Update(ctx context.Context, name string, objInfo rest.UpdatedObj } if version == 0 { if !e.UpdateStrategy.AllowCreateOnUpdate() && !forceAllowCreate { - return nil, nil, kubeerr.NewNotFound(qualifiedResource, name) + return nil, nil, apierrors.NewNotFound(qualifiedResource, name) } creating = true creatingObj = obj @@ -533,10 +533,10 @@ func (e *Store) Update(ctx context.Context, name string, objInfo rest.UpdatedObj // leave the Kind field empty. See the discussion in #18526. qualifiedKind := schema.GroupKind{Group: qualifiedResource.Group, Kind: qualifiedResource.Resource} fieldErrList := field.ErrorList{field.Invalid(field.NewPath("metadata").Child("resourceVersion"), resourceVersion, "must be specified for an update")} - return nil, nil, kubeerr.NewInvalid(qualifiedKind, name, fieldErrList) + return nil, nil, apierrors.NewInvalid(qualifiedKind, name, fieldErrList) } if resourceVersion != version { - return nil, nil, kubeerr.NewConflict(qualifiedResource, name, fmt.Errorf(OptimisticLockErrorMsg)) + return nil, nil, apierrors.NewConflict(qualifiedResource, name, fmt.Errorf(OptimisticLockErrorMsg)) } } if err := rest.BeforeUpdate(e.UpdateStrategy, ctx, obj, existing); err != nil { @@ -916,7 +916,7 @@ func (e *Store) Delete(ctx context.Context, name string, deleteValidation rest.V // check if obj has pending finalizers accessor, err := meta.Accessor(obj) if err != nil { - return nil, false, kubeerr.NewInternalError(err) + return nil, false, apierrors.NewInternalError(err) } pendingFinalizers := len(accessor.GetFinalizers()) != 0 var ignoreNotFound bool @@ -1038,7 +1038,7 @@ func (e *Store) DeleteCollection(ctx context.Context, deleteValidation rest.Vali errs <- err return } - if _, _, err := e.Delete(ctx, accessor.GetName(), deleteValidation, options); err != nil && !kubeerr.IsNotFound(err) { + if _, _, err := e.Delete(ctx, accessor.GetName(), deleteValidation, options); err != nil && !apierrors.IsNotFound(err) { klog.V(4).Infof("Delete %s in DeleteCollection failed: %v", accessor.GetName(), err) errs <- err return diff --git a/pkg/storage/etcd3/watcher.go b/pkg/storage/etcd3/watcher.go index a66c9eb9e..e4b8721ea 100644 --- a/pkg/storage/etcd3/watcher.go +++ b/pkg/storage/etcd3/watcher.go @@ -25,7 +25,7 @@ import ( "strings" "sync" - apierrs "k8s.io/apimachinery/pkg/api/errors" + apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/watch" "k8s.io/apiserver/pkg/storage" @@ -332,10 +332,10 @@ func (wc *watchChan) transform(e *event) (res *watch.Event) { func transformErrorToEvent(err error) *watch.Event { err = interpretWatchError(err) - if _, ok := err.(apierrs.APIStatus); !ok { - err = apierrs.NewInternalError(err) + if _, ok := err.(apierrors.APIStatus); !ok { + err = apierrors.NewInternalError(err) } - status := err.(apierrs.APIStatus).Status() + status := err.(apierrors.APIStatus).Status() return &watch.Event{ Type: watch.Error, Object: &status,