mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-01 15:58:37 +00:00
restrict discoverable versions to those that have resources
This commit is contained in:
parent
75e09a892f
commit
26558da40d
@ -408,6 +408,10 @@ func (s *GenericAPIServer) InstallAPIGroup(apiGroupInfo *APIGroupInfo) error {
|
|||||||
// Add a handler at /apis/<groupName> to enumerate all versions supported by this group.
|
// Add a handler at /apis/<groupName> to enumerate all versions supported by this group.
|
||||||
apiVersionsForDiscovery := []unversioned.GroupVersionForDiscovery{}
|
apiVersionsForDiscovery := []unversioned.GroupVersionForDiscovery{}
|
||||||
for _, groupVersion := range apiGroupInfo.GroupMeta.GroupVersions {
|
for _, groupVersion := range apiGroupInfo.GroupMeta.GroupVersions {
|
||||||
|
// Check the config to make sure that we elide versions that don't have any resources
|
||||||
|
if len(apiGroupInfo.VersionedResourcesStorageMap[groupVersion.Version]) == 0 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
apiVersionsForDiscovery = append(apiVersionsForDiscovery, unversioned.GroupVersionForDiscovery{
|
apiVersionsForDiscovery = append(apiVersionsForDiscovery, unversioned.GroupVersionForDiscovery{
|
||||||
GroupVersion: groupVersion.String(),
|
GroupVersion: groupVersion.String(),
|
||||||
Version: groupVersion.Version,
|
Version: groupVersion.Version,
|
||||||
@ -422,6 +426,7 @@ func (s *GenericAPIServer) InstallAPIGroup(apiGroupInfo *APIGroupInfo) error {
|
|||||||
Versions: apiVersionsForDiscovery,
|
Versions: apiVersionsForDiscovery,
|
||||||
PreferredVersion: preferedVersionForDiscovery,
|
PreferredVersion: preferedVersionForDiscovery,
|
||||||
}
|
}
|
||||||
|
|
||||||
s.AddAPIGroupForDiscovery(apiGroup)
|
s.AddAPIGroupForDiscovery(apiGroup)
|
||||||
apiserver.AddGroupWebService(s.Serializer, s.HandlerContainer, apiPrefix+"/"+apiGroup.Name, apiGroup)
|
apiserver.AddGroupWebService(s.Serializer, s.HandlerContainer, apiPrefix+"/"+apiGroup.Name, apiGroup)
|
||||||
}
|
}
|
||||||
|
@ -37,7 +37,7 @@ import (
|
|||||||
apiv1 "k8s.io/kubernetes/pkg/api/v1"
|
apiv1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
"k8s.io/kubernetes/pkg/apimachinery/registered"
|
"k8s.io/kubernetes/pkg/apimachinery/registered"
|
||||||
"k8s.io/kubernetes/pkg/apis/apps"
|
"k8s.io/kubernetes/pkg/apis/apps"
|
||||||
appsapi "k8s.io/kubernetes/pkg/apis/apps"
|
appsapiv1alpha1 "k8s.io/kubernetes/pkg/apis/apps/v1alpha1"
|
||||||
"k8s.io/kubernetes/pkg/apis/autoscaling"
|
"k8s.io/kubernetes/pkg/apis/autoscaling"
|
||||||
autoscalingapiv1 "k8s.io/kubernetes/pkg/apis/autoscaling/v1"
|
autoscalingapiv1 "k8s.io/kubernetes/pkg/apis/autoscaling/v1"
|
||||||
"k8s.io/kubernetes/pkg/apis/batch"
|
"k8s.io/kubernetes/pkg/apis/batch"
|
||||||
@ -148,7 +148,7 @@ func limitedAPIResourceConfigSource() *genericapiserver.ResourceConfig {
|
|||||||
extensionsapiv1beta1.SchemeGroupVersion,
|
extensionsapiv1beta1.SchemeGroupVersion,
|
||||||
batchapiv1.SchemeGroupVersion,
|
batchapiv1.SchemeGroupVersion,
|
||||||
batchapiv2alpha1.SchemeGroupVersion,
|
batchapiv2alpha1.SchemeGroupVersion,
|
||||||
appsapi.SchemeGroupVersion,
|
appsapiv1alpha1.SchemeGroupVersion,
|
||||||
autoscalingapiv1.SchemeGroupVersion,
|
autoscalingapiv1.SchemeGroupVersion,
|
||||||
)
|
)
|
||||||
return ret
|
return ret
|
||||||
|
Loading…
Reference in New Issue
Block a user