Deflake kubectl custom printing test

This commit is contained in:
Jordan Liggitt 2019-12-05 15:25:10 -05:00
parent c8b123e8e1
commit bacab3d457
2 changed files with 22 additions and 1 deletions

View File

@ -33,6 +33,7 @@ go_library(
"//staging/src/k8s.io/apimachinery/pkg/watch:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/authentication/serviceaccount:go_default_library",
"//staging/src/k8s.io/apiserver/pkg/registry/generic/registry:go_default_library",
"//staging/src/k8s.io/client-go/discovery:go_default_library",
"//staging/src/k8s.io/client-go/dynamic:go_default_library",
"//staging/src/k8s.io/client-go/kubernetes:go_default_library",
"//staging/src/k8s.io/client-go/tools/watch:go_default_library",

View File

@ -60,6 +60,7 @@ import (
"k8s.io/apimachinery/pkg/watch"
"k8s.io/apiserver/pkg/authentication/serviceaccount"
genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
"k8s.io/client-go/discovery"
"k8s.io/client-go/dynamic"
clientset "k8s.io/client-go/kubernetes"
watchtools "k8s.io/client-go/tools/watch"
@ -450,7 +451,26 @@ var _ = SIGDescribe("Kubectl client", func() {
}
apiGroups, err := c.Discovery().ServerPreferredResources()
framework.ExpectNoError(err)
if discovery.IsGroupDiscoveryFailedError(err) {
discoveryErr := err.(*discovery.ErrGroupDiscoveryFailed)
for gv := range discoveryErr.Groups {
if strings.Contains(gv.Group, ".") && !strings.HasSuffix(gv.Group, ".k8s.io") {
// tolerate discovery errors for non-k8s.io groups (like aggregated/crd groups)
continue
}
if gv.Group == "wardle.k8s.io" || gv.Group == "metrics.k8s.io" {
// tolerate discovery errors for known test k8s.io groups like aggregated/metrics groups
continue
}
// otherwise, fail
framework.ExpectNoError(err)
}
} else {
// fail immediately if this isn't a discovery error
framework.ExpectNoError(err)
}
testableResources := etcd.GetEtcdStorageDataForNamespace(f.Namespace.Name)