From b1980b2f6b83c81daa580fb1db737418a2f66a3a Mon Sep 17 00:00:00 2001 From: Mahmoud Atwa Date: Wed, 22 Feb 2023 13:41:41 +0000 Subject: [PATCH 1/4] Update ExistsInDiscovery to ignore 404 & 403 errors in autoscaling utils framework --- test/e2e/framework/autoscaling/autoscaling_utils.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/test/e2e/framework/autoscaling/autoscaling_utils.go b/test/e2e/framework/autoscaling/autoscaling_utils.go index 0bf99ac062c..3f3a83d1534 100644 --- a/test/e2e/framework/autoscaling/autoscaling_utils.go +++ b/test/e2e/framework/autoscaling/autoscaling_utils.go @@ -29,6 +29,7 @@ import ( apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" crdclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" "k8s.io/apiextensions-apiserver/test/integration/fixtures" + "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -965,6 +966,11 @@ func CreateCustomResourceDefinition(ctx context.Context, c crdclientset.Interfac func ExistsInDiscovery(crd *apiextensionsv1.CustomResourceDefinition, apiExtensionsClient crdclientset.Interface, version string) (bool, error) { groupResource, err := apiExtensionsClient.Discovery().ServerResourcesForGroupVersion(crd.Spec.Group + "/" + version) if err != nil { + // Ignore 404 & 403 errors + // As they're not ignored by `ServerResourcesForGroupVersion` because passed version is not equal to `v1` + if version == "v1" && (errors.IsNotFound(err) || errors.IsForbidden(err)) { + return false, nil + } return false, err } for _, g := range groupResource.APIResources { @@ -1001,7 +1007,7 @@ func CreateCustomSubresourceInstance(ctx context.Context, namespace, name string } createdObjectMeta, err := meta.Accessor(instance) if err != nil { - return nil, fmt.Errorf("Error while creating object meta: %w", err) + return nil, fmt.Errorf("Error while creating object meta: %v", err) } if len(createdObjectMeta.GetUID()) == 0 { return nil, fmt.Errorf("Missing UUID: %v", instance) From e4c25afa599f711b886012b5d3c17564a85a6e04 Mon Sep 17 00:00:00 2001 From: Mahmoud Atwa Date: Wed, 22 Feb 2023 13:51:01 +0000 Subject: [PATCH 2/4] Remove unneeded edit in error formatting --- test/e2e/framework/autoscaling/autoscaling_utils.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e/framework/autoscaling/autoscaling_utils.go b/test/e2e/framework/autoscaling/autoscaling_utils.go index 3f3a83d1534..1065f6b685a 100644 --- a/test/e2e/framework/autoscaling/autoscaling_utils.go +++ b/test/e2e/framework/autoscaling/autoscaling_utils.go @@ -1007,7 +1007,7 @@ func CreateCustomSubresourceInstance(ctx context.Context, namespace, name string } createdObjectMeta, err := meta.Accessor(instance) if err != nil { - return nil, fmt.Errorf("Error while creating object meta: %v", err) + return nil, fmt.Errorf("Error while creating object meta: %w", err) } if len(createdObjectMeta.GetUID()) == 0 { return nil, fmt.Errorf("Missing UUID: %v", instance) From 13d25acdfabc6288e583aaaa85b87ea7d429b5a5 Mon Sep 17 00:00:00 2001 From: Mahmoud Atwa Date: Wed, 22 Feb 2023 16:03:18 +0000 Subject: [PATCH 3/4] Remove version check & 403 ignore --- test/e2e/framework/autoscaling/autoscaling_utils.go | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/test/e2e/framework/autoscaling/autoscaling_utils.go b/test/e2e/framework/autoscaling/autoscaling_utils.go index 1065f6b685a..0e48cb48c41 100644 --- a/test/e2e/framework/autoscaling/autoscaling_utils.go +++ b/test/e2e/framework/autoscaling/autoscaling_utils.go @@ -966,9 +966,8 @@ func CreateCustomResourceDefinition(ctx context.Context, c crdclientset.Interfac func ExistsInDiscovery(crd *apiextensionsv1.CustomResourceDefinition, apiExtensionsClient crdclientset.Interface, version string) (bool, error) { groupResource, err := apiExtensionsClient.Discovery().ServerResourcesForGroupVersion(crd.Spec.Group + "/" + version) if err != nil { - // Ignore 404 & 403 errors - // As they're not ignored by `ServerResourcesForGroupVersion` because passed version is not equal to `v1` - if version == "v1" && (errors.IsNotFound(err) || errors.IsForbidden(err)) { + // Ignore 404 errors as it means the resources doesn't exist + if errors.IsNotFound(err) { return false, nil } return false, err From 5df798f22c8057fd51213158126ed363ab2d33e9 Mon Sep 17 00:00:00 2001 From: Mahmoud Atwa Date: Thu, 23 Feb 2023 12:22:32 +0000 Subject: [PATCH 4/4] Fix import alias issue for errors package --- test/e2e/framework/autoscaling/autoscaling_utils.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/e2e/framework/autoscaling/autoscaling_utils.go b/test/e2e/framework/autoscaling/autoscaling_utils.go index 0e48cb48c41..6a0515520fd 100644 --- a/test/e2e/framework/autoscaling/autoscaling_utils.go +++ b/test/e2e/framework/autoscaling/autoscaling_utils.go @@ -29,7 +29,7 @@ import ( apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1" crdclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset" "k8s.io/apiextensions-apiserver/test/integration/fixtures" - "k8s.io/apimachinery/pkg/api/errors" + apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/api/meta" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -967,7 +967,7 @@ func ExistsInDiscovery(crd *apiextensionsv1.CustomResourceDefinition, apiExtensi groupResource, err := apiExtensionsClient.Discovery().ServerResourcesForGroupVersion(crd.Spec.Group + "/" + version) if err != nil { // Ignore 404 errors as it means the resources doesn't exist - if errors.IsNotFound(err) { + if apierrors.IsNotFound(err) { return false, nil } return false, err