Unverified Commit 7c0df535 authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #62545 from php-coder/psp_move_registry_to_policy

Automatic merge from submit-queue (batch tested with PRs 62650, 62303, 62545, 62375). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Move podsecuritypolicy registry to policy package **What this PR does / why we need it:** This is a part of the PSP migration from extensions to policy API group. This PR moves registry to policy package and changes preferred storage format to policy/v1beta1 **Which issue(s) this PR fixes:** Addressed to https://github.com/kubernetes/features/issues/5
parents 26135c5f ff636f25
...@@ -643,8 +643,7 @@ func BuildStorageFactory(s *options.ServerRunOptions, apiResourceConfig *servers ...@@ -643,8 +643,7 @@ func BuildStorageFactory(s *options.ServerRunOptions, apiResourceConfig *servers
storageFactory.AddCohabitatingResources(apps.Resource("daemonsets"), extensions.Resource("daemonsets")) storageFactory.AddCohabitatingResources(apps.Resource("daemonsets"), extensions.Resource("daemonsets"))
storageFactory.AddCohabitatingResources(apps.Resource("replicasets"), extensions.Resource("replicasets")) storageFactory.AddCohabitatingResources(apps.Resource("replicasets"), extensions.Resource("replicasets"))
storageFactory.AddCohabitatingResources(api.Resource("events"), events.Resource("events")) storageFactory.AddCohabitatingResources(api.Resource("events"), events.Resource("events"))
// TODO(#54933): 1.11: switch to using policy storage and flip the order here storageFactory.AddCohabitatingResources(policy.Resource("podsecuritypolicies"), extensions.Resource("podsecuritypolicies"))
storageFactory.AddCohabitatingResources(extensions.Resource("podsecuritypolicies"), policy.Resource("podsecuritypolicies"))
for _, override := range s.Etcd.EtcdServersOverrides { for _, override := range s.Etcd.EtcdServersOverrides {
tokens := strings.Split(override, "#") tokens := strings.Split(override, "#")
apiresource := strings.Split(tokens[0], "/") apiresource := strings.Split(tokens[0], "/")
......
...@@ -109,7 +109,7 @@ examples/persistent-volume-provisioning/rbd/rbd-storage-class.yaml,storageclasse ...@@ -109,7 +109,7 @@ examples/persistent-volume-provisioning/rbd/rbd-storage-class.yaml,storageclasse
) )
KUBE_OLD_API_VERSION="networking.k8s.io/v1,storage.k8s.io/v1beta1,extensions/v1beta1" KUBE_OLD_API_VERSION="networking.k8s.io/v1,storage.k8s.io/v1beta1,extensions/v1beta1"
KUBE_NEW_API_VERSION="networking.k8s.io/v1,storage.k8s.io/v1,extensions/v1beta1" KUBE_NEW_API_VERSION="networking.k8s.io/v1,storage.k8s.io/v1,extensions/v1beta1,policy/v1beta1"
KUBE_OLD_STORAGE_VERSIONS="storage.k8s.io/v1beta1" KUBE_OLD_STORAGE_VERSIONS="storage.k8s.io/v1beta1"
KUBE_NEW_STORAGE_VERSIONS="storage.k8s.io/v1" KUBE_NEW_STORAGE_VERSIONS="storage.k8s.io/v1"
......
...@@ -70,11 +70,11 @@ filegroup( ...@@ -70,11 +70,11 @@ filegroup(
"//pkg/registry/events/rest:all-srcs", "//pkg/registry/events/rest:all-srcs",
"//pkg/registry/extensions/controller/storage:all-srcs", "//pkg/registry/extensions/controller/storage:all-srcs",
"//pkg/registry/extensions/ingress:all-srcs", "//pkg/registry/extensions/ingress:all-srcs",
"//pkg/registry/extensions/podsecuritypolicy:all-srcs",
"//pkg/registry/extensions/rest:all-srcs", "//pkg/registry/extensions/rest:all-srcs",
"//pkg/registry/networking/networkpolicy:all-srcs", "//pkg/registry/networking/networkpolicy:all-srcs",
"//pkg/registry/networking/rest:all-srcs", "//pkg/registry/networking/rest:all-srcs",
"//pkg/registry/policy/poddisruptionbudget:all-srcs", "//pkg/registry/policy/poddisruptionbudget:all-srcs",
"//pkg/registry/policy/podsecuritypolicy:all-srcs",
"//pkg/registry/policy/rest:all-srcs", "//pkg/registry/policy/rest:all-srcs",
"//pkg/registry/rbac:all-srcs", "//pkg/registry/rbac:all-srcs",
"//pkg/registry/registrytest:all-srcs", "//pkg/registry/registrytest:all-srcs",
......
...@@ -17,8 +17,8 @@ go_library( ...@@ -17,8 +17,8 @@ go_library(
"//pkg/registry/apps/replicaset/storage:go_default_library", "//pkg/registry/apps/replicaset/storage:go_default_library",
"//pkg/registry/extensions/controller/storage:go_default_library", "//pkg/registry/extensions/controller/storage:go_default_library",
"//pkg/registry/extensions/ingress/storage:go_default_library", "//pkg/registry/extensions/ingress/storage:go_default_library",
"//pkg/registry/extensions/podsecuritypolicy/storage:go_default_library",
"//pkg/registry/networking/networkpolicy/storage:go_default_library", "//pkg/registry/networking/networkpolicy/storage:go_default_library",
"//pkg/registry/policy/podsecuritypolicy/storage:go_default_library",
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library", "//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library",
......
...@@ -29,8 +29,8 @@ import ( ...@@ -29,8 +29,8 @@ import (
replicasetstore "k8s.io/kubernetes/pkg/registry/apps/replicaset/storage" replicasetstore "k8s.io/kubernetes/pkg/registry/apps/replicaset/storage"
expcontrollerstore "k8s.io/kubernetes/pkg/registry/extensions/controller/storage" expcontrollerstore "k8s.io/kubernetes/pkg/registry/extensions/controller/storage"
ingressstore "k8s.io/kubernetes/pkg/registry/extensions/ingress/storage" ingressstore "k8s.io/kubernetes/pkg/registry/extensions/ingress/storage"
pspstore "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy/storage"
networkpolicystore "k8s.io/kubernetes/pkg/registry/networking/networkpolicy/storage" networkpolicystore "k8s.io/kubernetes/pkg/registry/networking/networkpolicy/storage"
pspstore "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy/storage"
) )
type RESTStorageProvider struct{} type RESTStorageProvider struct{}
...@@ -74,8 +74,8 @@ func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorag ...@@ -74,8 +74,8 @@ func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorag
storage["ingresses/status"] = ingressStatusStorage storage["ingresses/status"] = ingressStatusStorage
// podsecuritypolicy // podsecuritypolicy
podSecurityExtensionsStorage := pspstore.NewREST(restOptionsGetter) podSecurityPolicyStorage := pspstore.NewREST(restOptionsGetter)
storage["podSecurityPolicies"] = podSecurityExtensionsStorage storage["podSecurityPolicies"] = podSecurityPolicyStorage
// replicasets // replicasets
replicaSetStorage := replicasetstore.NewStorage(restOptionsGetter) replicaSetStorage := replicasetstore.NewStorage(restOptionsGetter)
......
...@@ -11,7 +11,7 @@ go_library( ...@@ -11,7 +11,7 @@ go_library(
"doc.go", "doc.go",
"strategy.go", "strategy.go",
], ],
importpath = "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy", importpath = "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy",
deps = [ deps = [
"//pkg/api/legacyscheme:go_default_library", "//pkg/api/legacyscheme:go_default_library",
"//pkg/apis/policy:go_default_library", "//pkg/apis/policy:go_default_library",
...@@ -35,7 +35,7 @@ filegroup( ...@@ -35,7 +35,7 @@ filegroup(
name = "all-srcs", name = "all-srcs",
srcs = [ srcs = [
":package-srcs", ":package-srcs",
"//pkg/registry/extensions/podsecuritypolicy/storage:all-srcs", "//pkg/registry/policy/podsecuritypolicy/storage:all-srcs",
], ],
tags = ["automanaged"], tags = ["automanaged"],
) )
...@@ -16,4 +16,4 @@ limitations under the License. ...@@ -16,4 +16,4 @@ limitations under the License.
// Package podsecuritypolicy provides Registry interface and its REST // Package podsecuritypolicy provides Registry interface and its REST
// implementation for storing PodSecurityPolicy api objects. // implementation for storing PodSecurityPolicy api objects.
package podsecuritypolicy // import "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy" package podsecuritypolicy // import "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy"
...@@ -27,14 +27,13 @@ go_test( ...@@ -27,14 +27,13 @@ go_test(
go_library( go_library(
name = "go_default_library", name = "go_default_library",
srcs = ["storage.go"], srcs = ["storage.go"],
importpath = "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy/storage", importpath = "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy/storage",
deps = [ deps = [
"//pkg/apis/policy:go_default_library", "//pkg/apis/policy:go_default_library",
"//pkg/printers:go_default_library", "//pkg/printers:go_default_library",
"//pkg/printers/internalversion:go_default_library", "//pkg/printers/internalversion:go_default_library",
"//pkg/printers/storage:go_default_library", "//pkg/printers/storage:go_default_library",
"//pkg/registry/extensions/podsecuritypolicy:go_default_library", "//pkg/registry/policy/podsecuritypolicy:go_default_library",
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library", "//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/generic/registry:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/generic/registry:go_default_library",
......
...@@ -17,7 +17,6 @@ limitations under the License. ...@@ -17,7 +17,6 @@ limitations under the License.
package storage package storage
import ( import (
extensions "k8s.io/api/extensions/v1beta1"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
"k8s.io/apiserver/pkg/registry/generic" "k8s.io/apiserver/pkg/registry/generic"
genericregistry "k8s.io/apiserver/pkg/registry/generic/registry" genericregistry "k8s.io/apiserver/pkg/registry/generic/registry"
...@@ -25,7 +24,7 @@ import ( ...@@ -25,7 +24,7 @@ import (
"k8s.io/kubernetes/pkg/printers" "k8s.io/kubernetes/pkg/printers"
printersinternal "k8s.io/kubernetes/pkg/printers/internalversion" printersinternal "k8s.io/kubernetes/pkg/printers/internalversion"
printerstorage "k8s.io/kubernetes/pkg/printers/storage" printerstorage "k8s.io/kubernetes/pkg/printers/storage"
"k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy" "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy"
) )
// REST implements a RESTStorage for PodSecurityPolicies. // REST implements a RESTStorage for PodSecurityPolicies.
...@@ -38,7 +37,7 @@ func NewREST(optsGetter generic.RESTOptionsGetter) *REST { ...@@ -38,7 +37,7 @@ func NewREST(optsGetter generic.RESTOptionsGetter) *REST {
store := &genericregistry.Store{ store := &genericregistry.Store{
NewFunc: func() runtime.Object { return &policy.PodSecurityPolicy{} }, NewFunc: func() runtime.Object { return &policy.PodSecurityPolicy{} },
NewListFunc: func() runtime.Object { return &policy.PodSecurityPolicyList{} }, NewListFunc: func() runtime.Object { return &policy.PodSecurityPolicyList{} },
DefaultQualifiedResource: extensions.Resource("podsecuritypolicies"), DefaultQualifiedResource: policy.Resource("podsecuritypolicies"),
CreateStrategy: podsecuritypolicy.Strategy, CreateStrategy: podsecuritypolicy.Strategy,
UpdateStrategy: podsecuritypolicy.Strategy, UpdateStrategy: podsecuritypolicy.Strategy,
......
...@@ -12,8 +12,8 @@ go_library( ...@@ -12,8 +12,8 @@ go_library(
deps = [ deps = [
"//pkg/api/legacyscheme:go_default_library", "//pkg/api/legacyscheme:go_default_library",
"//pkg/apis/policy:go_default_library", "//pkg/apis/policy:go_default_library",
"//pkg/registry/extensions/podsecuritypolicy/storage:go_default_library",
"//pkg/registry/policy/poddisruptionbudget/storage:go_default_library", "//pkg/registry/policy/poddisruptionbudget/storage:go_default_library",
"//pkg/registry/policy/podsecuritypolicy/storage:go_default_library",
"//vendor/k8s.io/api/policy/v1beta1:go_default_library", "//vendor/k8s.io/api/policy/v1beta1:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/generic:go_default_library",
"//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library", "//vendor/k8s.io/apiserver/pkg/registry/rest:go_default_library",
......
...@@ -24,8 +24,8 @@ import ( ...@@ -24,8 +24,8 @@ import (
serverstorage "k8s.io/apiserver/pkg/server/storage" serverstorage "k8s.io/apiserver/pkg/server/storage"
"k8s.io/kubernetes/pkg/api/legacyscheme" "k8s.io/kubernetes/pkg/api/legacyscheme"
"k8s.io/kubernetes/pkg/apis/policy" "k8s.io/kubernetes/pkg/apis/policy"
pspstore "k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy/storage"
poddisruptionbudgetstore "k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget/storage" poddisruptionbudgetstore "k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget/storage"
pspstore "k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy/storage"
) )
type RESTStorageProvider struct{} type RESTStorageProvider struct{}
......
...@@ -262,6 +262,7 @@ var etcdStorageData = map[schema.GroupVersionResource]struct { ...@@ -262,6 +262,7 @@ var etcdStorageData = map[schema.GroupVersionResource]struct {
gvr("extensions", "v1beta1", "podsecuritypolicies"): { gvr("extensions", "v1beta1", "podsecuritypolicies"): {
stub: `{"metadata": {"name": "psp1"}, "spec": {"fsGroup": {"rule": "RunAsAny"}, "privileged": true, "runAsUser": {"rule": "RunAsAny"}, "seLinux": {"rule": "MustRunAs"}, "supplementalGroups": {"rule": "RunAsAny"}}}`, stub: `{"metadata": {"name": "psp1"}, "spec": {"fsGroup": {"rule": "RunAsAny"}, "privileged": true, "runAsUser": {"rule": "RunAsAny"}, "seLinux": {"rule": "MustRunAs"}, "supplementalGroups": {"rule": "RunAsAny"}}}`,
expectedEtcdPath: "/registry/podsecuritypolicy/psp1", expectedEtcdPath: "/registry/podsecuritypolicy/psp1",
expectedGVK: gvkP("policy", "v1beta1", "PodSecurityPolicy"),
}, },
gvr("extensions", "v1beta1", "ingresses"): { gvr("extensions", "v1beta1", "ingresses"): {
stub: `{"metadata": {"name": "ingress1"}, "spec": {"backend": {"serviceName": "service", "servicePort": 5000}}}`, stub: `{"metadata": {"name": "ingress1"}, "spec": {"backend": {"serviceName": "service", "servicePort": 5000}}}`,
...@@ -299,7 +300,6 @@ var etcdStorageData = map[schema.GroupVersionResource]struct { ...@@ -299,7 +300,6 @@ var etcdStorageData = map[schema.GroupVersionResource]struct {
gvr("policy", "v1beta1", "podsecuritypolicies"): { gvr("policy", "v1beta1", "podsecuritypolicies"): {
stub: `{"metadata": {"name": "psp2"}, "spec": {"fsGroup": {"rule": "RunAsAny"}, "privileged": true, "runAsUser": {"rule": "RunAsAny"}, "seLinux": {"rule": "MustRunAs"}, "supplementalGroups": {"rule": "RunAsAny"}}}`, stub: `{"metadata": {"name": "psp2"}, "spec": {"fsGroup": {"rule": "RunAsAny"}, "privileged": true, "runAsUser": {"rule": "RunAsAny"}, "seLinux": {"rule": "MustRunAs"}, "supplementalGroups": {"rule": "RunAsAny"}}}`,
expectedEtcdPath: "/registry/podsecuritypolicy/psp2", expectedEtcdPath: "/registry/podsecuritypolicy/psp2",
expectedGVK: gvkP("extensions", "v1beta1", "PodSecurityPolicy"),
}, },
// -- // --
......
...@@ -749,12 +749,12 @@ k8s.io/kubernetes/pkg/registry/extensions/deployment,dchen1107,1, ...@@ -749,12 +749,12 @@ k8s.io/kubernetes/pkg/registry/extensions/deployment,dchen1107,1,
k8s.io/kubernetes/pkg/registry/extensions/deployment/storage,timothysc,1, k8s.io/kubernetes/pkg/registry/extensions/deployment/storage,timothysc,1,
k8s.io/kubernetes/pkg/registry/extensions/ingress,apelisse,1, k8s.io/kubernetes/pkg/registry/extensions/ingress,apelisse,1,
k8s.io/kubernetes/pkg/registry/extensions/ingress/storage,luxas,1, k8s.io/kubernetes/pkg/registry/extensions/ingress/storage,luxas,1,
k8s.io/kubernetes/pkg/registry/extensions/podsecuritypolicy/storage,dchen1107,1,
k8s.io/kubernetes/pkg/registry/extensions/replicaset,rrati,0, k8s.io/kubernetes/pkg/registry/extensions/replicaset,rrati,0,
k8s.io/kubernetes/pkg/registry/extensions/replicaset/storage,wojtek-t,1, k8s.io/kubernetes/pkg/registry/extensions/replicaset/storage,wojtek-t,1,
k8s.io/kubernetes/pkg/registry/extensions/rest,rrati,0, k8s.io/kubernetes/pkg/registry/extensions/rest,rrati,0,
k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget,Q-Lee,1, k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget,Q-Lee,1,
k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget/storage,dchen1107,1, k8s.io/kubernetes/pkg/registry/policy/poddisruptionbudget/storage,dchen1107,1,
k8s.io/kubernetes/pkg/registry/policy/podsecuritypolicy/storage,dchen1107,1,
k8s.io/kubernetes/pkg/registry/rbac/reconciliation,roberthbailey,1, k8s.io/kubernetes/pkg/registry/rbac/reconciliation,roberthbailey,1,
k8s.io/kubernetes/pkg/registry/rbac/validation,rkouj,0, k8s.io/kubernetes/pkg/registry/rbac/validation,rkouj,0,
k8s.io/kubernetes/pkg/registry/storage/storageclass,brendandburns,1, k8s.io/kubernetes/pkg/registry/storage/storageclass,brendandburns,1,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment