Handle partial group and resource responses consistently

Kubernetes-commit: e203c4e42b9037a6800dbc0dc433c63fc8cf7516
This commit is contained in:
Jordan Liggitt 2018-04-06 22:42:34 -04:00 committed by Kubernetes Publisher
parent 92a7e05901
commit bc399996ff

View File

@ -144,7 +144,10 @@ func NewRESTMapper(groupResources []*APIGroupResources, versionInterfaces meta.V
func GetAPIGroupResources(cl DiscoveryInterface) ([]*APIGroupResources, error) {
apiGroups, err := cl.ServerGroups()
if err != nil {
return nil, err
if apiGroups == nil || len(apiGroups.Groups) == 0 {
return nil, err
}
// TODO track the errors and update callers to handle partial errors.
}
var result []*APIGroupResources
for _, group := range apiGroups.Groups {
@ -157,7 +160,9 @@ func GetAPIGroupResources(cl DiscoveryInterface) ([]*APIGroupResources, error) {
if err != nil {
// continue as best we can
// TODO track the errors and update callers to handle partial errors.
continue
if resources == nil || len(resources.APIResources) == 0 {
continue
}
}
groupResources.VersionedResources[version.Version] = resources.APIResources
}