From 3df9e86a4ead169f493366dd71ce12c222315b36 Mon Sep 17 00:00:00 2001 From: Jordan Liggitt Date: Mon, 2 Dec 2019 11:23:20 -0500 Subject: [PATCH] Remove ability to re-enable serving deprecated APIs --- cmd/kube-apiserver/app/aggregator.go | 2 - pkg/master/master.go | 16 ---- pkg/registry/apps/rest/storage_apps.go | 96 ------------------- .../extensions/rest/storage_extensions.go | 67 ------------- 4 files changed, 181 deletions(-) diff --git a/cmd/kube-apiserver/app/aggregator.go b/cmd/kube-apiserver/app/aggregator.go index c21c6e81387..ce3ced35b27 100644 --- a/cmd/kube-apiserver/app/aggregator.go +++ b/cmd/kube-apiserver/app/aggregator.go @@ -251,8 +251,6 @@ var apiVersionPriorities = map[schema.GroupVersion]priority{ // can reasonably expect seems questionable. {Group: "extensions", Version: "v1beta1"}: {group: 17900, version: 1}, // to my knowledge, nothing below here collides - {Group: "apps", Version: "v1beta1"}: {group: 17800, version: 1}, - {Group: "apps", Version: "v1beta2"}: {group: 17800, version: 9}, {Group: "apps", Version: "v1"}: {group: 17800, version: 15}, {Group: "events.k8s.io", Version: "v1beta1"}: {group: 17750, version: 5}, {Group: "authentication.k8s.io", Version: "v1"}: {group: 17700, version: 15}, diff --git a/pkg/master/master.go b/pkg/master/master.go index 769376ec1f4..b03b0c9ea03 100644 --- a/pkg/master/master.go +++ b/pkg/master/master.go @@ -27,8 +27,6 @@ import ( admissionregistrationv1 "k8s.io/api/admissionregistration/v1" admissionregistrationv1beta1 "k8s.io/api/admissionregistration/v1beta1" appsv1 "k8s.io/api/apps/v1" - appsv1beta1 "k8s.io/api/apps/v1beta1" - appsv1beta2 "k8s.io/api/apps/v1beta2" auditregistrationv1alpha1 "k8s.io/api/auditregistration/v1alpha1" authenticationv1 "k8s.io/api/authentication/v1" authenticationv1beta1 "k8s.io/api/authentication/v1beta1" @@ -591,20 +589,6 @@ func DefaultAPIResourceConfigSource() *serverstorage.ResourceConfig { ret.EnableResources( extensionsapiv1beta1.SchemeGroupVersion.WithResource("ingresses"), ) - // disable deprecated beta resources in extensions/v1beta1 explicitly so we have a full list of what's possible to serve - ret.DisableResources( - extensionsapiv1beta1.SchemeGroupVersion.WithResource("daemonsets"), - extensionsapiv1beta1.SchemeGroupVersion.WithResource("deployments"), - extensionsapiv1beta1.SchemeGroupVersion.WithResource("networkpolicies"), - extensionsapiv1beta1.SchemeGroupVersion.WithResource("podsecuritypolicies"), - extensionsapiv1beta1.SchemeGroupVersion.WithResource("replicasets"), - extensionsapiv1beta1.SchemeGroupVersion.WithResource("replicationcontrollers"), - ) - // disable deprecated beta versions explicitly so we have a full list of what's possible to serve - ret.DisableVersions( - appsv1beta1.SchemeGroupVersion, - appsv1beta2.SchemeGroupVersion, - ) // disable alpha versions explicitly so we have a full list of what's possible to serve ret.DisableVersions( auditregistrationv1alpha1.SchemeGroupVersion, diff --git a/pkg/registry/apps/rest/storage_apps.go b/pkg/registry/apps/rest/storage_apps.go index 866d0fe6603..141c1280f2f 100644 --- a/pkg/registry/apps/rest/storage_apps.go +++ b/pkg/registry/apps/rest/storage_apps.go @@ -18,8 +18,6 @@ package rest import ( appsapiv1 "k8s.io/api/apps/v1" - appsapiv1beta1 "k8s.io/api/apps/v1beta1" - appsapiv1beta2 "k8s.io/api/apps/v1beta2" "k8s.io/apiserver/pkg/registry/generic" "k8s.io/apiserver/pkg/registry/rest" genericapiserver "k8s.io/apiserver/pkg/server" @@ -40,20 +38,6 @@ func (p RESTStorageProvider) NewRESTStorage(apiResourceConfigSource serverstorag // If you add a version here, be sure to add an entry in `k8s.io/kubernetes/cmd/kube-apiserver/app/aggregator.go with specific priorities. // TODO refactor the plumbing to provide the information in the APIGroupInfo - if apiResourceConfigSource.VersionEnabled(appsapiv1beta1.SchemeGroupVersion) { - if storageMap, err := p.v1beta1Storage(apiResourceConfigSource, restOptionsGetter); err != nil { - return genericapiserver.APIGroupInfo{}, false, err - } else { - apiGroupInfo.VersionedResourcesStorageMap[appsapiv1beta1.SchemeGroupVersion.Version] = storageMap - } - } - if apiResourceConfigSource.VersionEnabled(appsapiv1beta2.SchemeGroupVersion) { - if storageMap, err := p.v1beta2Storage(apiResourceConfigSource, restOptionsGetter); err != nil { - return genericapiserver.APIGroupInfo{}, false, err - } else { - apiGroupInfo.VersionedResourcesStorageMap[appsapiv1beta2.SchemeGroupVersion.Version] = storageMap - } - } if apiResourceConfigSource.VersionEnabled(appsapiv1.SchemeGroupVersion) { if storageMap, err := p.v1Storage(apiResourceConfigSource, restOptionsGetter); err != nil { return genericapiserver.APIGroupInfo{}, false, err @@ -65,86 +49,6 @@ func (p RESTStorageProvider) NewRESTStorage(apiResourceConfigSource serverstorag return apiGroupInfo, true, nil } -func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorage.APIResourceConfigSource, restOptionsGetter generic.RESTOptionsGetter) (map[string]rest.Storage, error) { - storage := map[string]rest.Storage{} - - // deployments - deploymentStorage, err := deploymentstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["deployments"] = deploymentStorage.Deployment - storage["deployments/status"] = deploymentStorage.Status - storage["deployments/rollback"] = deploymentStorage.Rollback - storage["deployments/scale"] = deploymentStorage.Scale - - // statefulsets - statefulSetStorage, err := statefulsetstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["statefulsets"] = statefulSetStorage.StatefulSet - storage["statefulsets/status"] = statefulSetStorage.Status - storage["statefulsets/scale"] = statefulSetStorage.Scale - - // controllerrevisions - historyStorage, err := controllerrevisionsstore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["controllerrevisions"] = historyStorage - - return storage, nil -} - -func (p RESTStorageProvider) v1beta2Storage(apiResourceConfigSource serverstorage.APIResourceConfigSource, restOptionsGetter generic.RESTOptionsGetter) (map[string]rest.Storage, error) { - storage := map[string]rest.Storage{} - - // deployments - deploymentStorage, err := deploymentstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["deployments"] = deploymentStorage.Deployment - storage["deployments/status"] = deploymentStorage.Status - storage["deployments/scale"] = deploymentStorage.Scale - - // statefulsets - statefulSetStorage, err := statefulsetstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["statefulsets"] = statefulSetStorage.StatefulSet - storage["statefulsets/status"] = statefulSetStorage.Status - storage["statefulsets/scale"] = statefulSetStorage.Scale - - // daemonsets - daemonSetStorage, daemonSetStatusStorage, err := daemonsetstore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["daemonsets"] = daemonSetStorage - storage["daemonsets/status"] = daemonSetStatusStorage - - // replicasets - replicaSetStorage, err := replicasetstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["replicasets"] = replicaSetStorage.ReplicaSet - storage["replicasets/status"] = replicaSetStorage.Status - storage["replicasets/scale"] = replicaSetStorage.Scale - - // controllerrevisions - historyStorage, err := controllerrevisionsstore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["controllerrevisions"] = historyStorage - - return storage, nil -} - func (p RESTStorageProvider) v1Storage(apiResourceConfigSource serverstorage.APIResourceConfigSource, restOptionsGetter generic.RESTOptionsGetter) (map[string]rest.Storage, error) { storage := map[string]rest.Storage{} diff --git a/pkg/registry/extensions/rest/storage_extensions.go b/pkg/registry/extensions/rest/storage_extensions.go index 458e8f899a7..9843fb6bb68 100644 --- a/pkg/registry/extensions/rest/storage_extensions.go +++ b/pkg/registry/extensions/rest/storage_extensions.go @@ -24,13 +24,7 @@ import ( serverstorage "k8s.io/apiserver/pkg/server/storage" "k8s.io/kubernetes/pkg/api/legacyscheme" "k8s.io/kubernetes/pkg/apis/extensions" - daemonstore "k8s.io/kubernetes/pkg/registry/apps/daemonset/storage" - deploymentstore "k8s.io/kubernetes/pkg/registry/apps/deployment/storage" - replicasetstore "k8s.io/kubernetes/pkg/registry/apps/replicaset/storage" - expcontrollerstore "k8s.io/kubernetes/pkg/registry/extensions/controller/storage" ingressstore "k8s.io/kubernetes/pkg/registry/networking/ingress/storage" - networkpolicystore "k8s.io/kubernetes/pkg/registry/networking/networkpolicy/storage" - pspstore "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy/storage" ) type RESTStorageProvider struct{} @@ -54,38 +48,6 @@ func (p RESTStorageProvider) NewRESTStorage(apiResourceConfigSource serverstorag func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorage.APIResourceConfigSource, restOptionsGetter generic.RESTOptionsGetter) (map[string]rest.Storage, error) { storage := map[string]rest.Storage{} - // This is a dummy replication controller for scale subresource purposes. - // TODO: figure out how to enable this only if needed as a part of scale subresource GA. - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("replicationcontrollers")) { - controllerStorage, err := expcontrollerstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["replicationcontrollers"] = controllerStorage.ReplicationController - storage["replicationcontrollers/scale"] = controllerStorage.Scale - } - - // daemonsets - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("daemonsets")) { - daemonSetStorage, daemonSetStatusStorage, err := daemonstore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["daemonsets"] = daemonSetStorage.WithCategories(nil) - storage["daemonsets/status"] = daemonSetStatusStorage - } - - //deployments - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("deployments")) { - deploymentStorage, err := deploymentstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["deployments"] = deploymentStorage.Deployment.WithCategories(nil) - storage["deployments/status"] = deploymentStorage.Status - storage["deployments/rollback"] = deploymentStorage.Rollback - storage["deployments/scale"] = deploymentStorage.Scale - } // ingresses if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("ingresses")) { ingressStorage, ingressStatusStorage, err := ingressstore.NewREST(restOptionsGetter) @@ -96,35 +58,6 @@ func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorag storage["ingresses/status"] = ingressStatusStorage } - // podsecuritypolicy - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("podsecuritypolicies")) { - podSecurityPolicyStorage, err := pspstore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["podSecurityPolicies"] = podSecurityPolicyStorage - } - - // replicasets - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("replicasets")) { - replicaSetStorage, err := replicasetstore.NewStorage(restOptionsGetter) - if err != nil { - return storage, err - } - storage["replicasets"] = replicaSetStorage.ReplicaSet.WithCategories(nil) - storage["replicasets/status"] = replicaSetStorage.Status - storage["replicasets/scale"] = replicaSetStorage.Scale - } - - // networkpolicies - if apiResourceConfigSource.ResourceEnabled(extensionsapiv1beta1.SchemeGroupVersion.WithResource("networkpolicies")) { - networkExtensionsStorage, err := networkpolicystore.NewREST(restOptionsGetter) - if err != nil { - return storage, err - } - storage["networkpolicies"] = networkExtensionsStorage - } - return storage, nil }