diff --git a/cmd/kube-aggregator/pkg/registry/apiservice/BUILD b/cmd/kube-aggregator/pkg/registry/apiservice/BUILD index 082e41aea22..990a9d33945 100644 --- a/cmd/kube-aggregator/pkg/registry/apiservice/BUILD +++ b/cmd/kube-aggregator/pkg/registry/apiservice/BUILD @@ -22,6 +22,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/cmd/kube-aggregator/pkg/registry/apiservice/strategy.go b/cmd/kube-aggregator/pkg/registry/apiservice/strategy.go index 3a25c4fa7cf..0e9a7317cbb 100644 --- a/cmd/kube-aggregator/pkg/registry/apiservice/strategy.go +++ b/cmd/kube-aggregator/pkg/registry/apiservice/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" kapi "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/fields" "k8s.io/kubernetes/pkg/registry/generic" @@ -34,10 +35,10 @@ import ( type apiServerStrategy struct { runtime.ObjectTyper - kapi.NameGenerator + names.NameGenerator } -var Strategy = apiServerStrategy{kapi.Scheme, kapi.SimpleNameGenerator} +var Strategy = apiServerStrategy{kapi.Scheme, names.SimpleNameGenerator} func (apiServerStrategy) NamespaceScoped() bool { return false diff --git a/examples/apiserver/rest/BUILD b/examples/apiserver/rest/BUILD index a88e825e2de..ec7e10d1d6e 100644 --- a/examples/apiserver/rest/BUILD +++ b/examples/apiserver/rest/BUILD @@ -22,6 +22,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/examples/apiserver/rest/reststorage.go b/examples/apiserver/rest/reststorage.go index ba71ea7c80a..6b597b596e6 100644 --- a/examples/apiserver/rest/reststorage.go +++ b/examples/apiserver/rest/reststorage.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/cmd/libs/go2idl/client-gen/test_apis/testgroup" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/fields" @@ -61,7 +62,7 @@ func NewREST(optsGetter generic.RESTOptionsGetter) *REST { type fakeStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } func (*fakeStrategy) NamespaceScoped() bool { return false } @@ -71,7 +72,7 @@ func (*fakeStrategy) Validate(ctx genericapirequest.Context, obj runtime.Object) } func (*fakeStrategy) Canonicalize(obj runtime.Object) {} -var strategy = &fakeStrategy{api.Scheme, api.SimpleNameGenerator} +var strategy = &fakeStrategy{api.Scheme, names.SimpleNameGenerator} func getAttrs(obj runtime.Object) (labels.Set, fields.Set, error) { testType, ok := obj.(*testgroup.TestType) diff --git a/federation/registry/cluster/BUILD b/federation/registry/cluster/BUILD index f1196775bb7..71b8e954dd5 100644 --- a/federation/registry/cluster/BUILD +++ b/federation/registry/cluster/BUILD @@ -29,6 +29,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/federation/registry/cluster/strategy.go b/federation/registry/cluster/strategy.go index 497ad3808f5..a9c9a156598 100644 --- a/federation/registry/cluster/strategy.go +++ b/federation/registry/cluster/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/federation/apis/federation" "k8s.io/kubernetes/federation/apis/federation/validation" "k8s.io/kubernetes/pkg/api" @@ -33,10 +34,10 @@ import ( type clusterStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } -var Strategy = clusterStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = clusterStrategy{api.Scheme, names.SimpleNameGenerator} func (clusterStrategy) NamespaceScoped() bool { return false diff --git a/hack/.linted_packages b/hack/.linted_packages index 25fc210cbcd..23390faa0f1 100644 --- a/hack/.linted_packages +++ b/hack/.linted_packages @@ -265,6 +265,7 @@ pkg/util/logs pkg/util/maps pkg/util/metrics pkg/util/netsh +pkg/util/rand pkg/util/ratelimit pkg/util/replicaset pkg/util/restoptions diff --git a/pkg/api/BUILD b/pkg/api/BUILD index 3c05143f3ce..dd8ac0c0979 100644 --- a/pkg/api/BUILD +++ b/pkg/api/BUILD @@ -15,7 +15,6 @@ go_library( "defaults.go", "doc.go", "field_constants.go", - "generate.go", "helpers.go", "mapper.go", "meta.go", @@ -31,7 +30,6 @@ go_library( "//pkg/fields:go_default_library", "//pkg/util/intstr:go_default_library", "//pkg/util/labels:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:github.com/davecgh/go-spew/spew", "//vendor:k8s.io/apimachinery/pkg/api/meta", "//vendor:k8s.io/apimachinery/pkg/apimachinery/registered", @@ -51,7 +49,6 @@ go_library( go_test( name = "go_default_test", srcs = [ - "generate_test.go", "helpers_test.go", "ref_test.go", "resource_helpers_test.go", diff --git a/pkg/api/rest/BUILD b/pkg/api/rest/BUILD index 0ad3c9ad140..aa924c27861 100644 --- a/pkg/api/rest/BUILD +++ b/pkg/api/rest/BUILD @@ -34,6 +34,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/api/rest/create.go b/pkg/api/rest/create.go index f84c7f43e83..d38941b61c5 100644 --- a/pkg/api/rest/create.go +++ b/pkg/api/rest/create.go @@ -22,6 +22,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation/genericvalidation" "k8s.io/kubernetes/pkg/api/validation/path" @@ -34,7 +35,7 @@ type RESTCreateStrategy interface { runtime.ObjectTyper // The name generate is used when the standard GenerateName field is set. // The NameGenerator will be invoked prior to validation. - api.NameGenerator + names.NameGenerator // NamespaceScoped returns true if the object must be within a namespace. NamespaceScoped() bool @@ -71,7 +72,9 @@ func BeforeCreate(strategy RESTCreateStrategy, ctx genericapirequest.Context, ob objectMeta.DeletionGracePeriodSeconds = nil strategy.PrepareForCreate(ctx, obj) FillObjectMetaSystemFields(ctx, objectMeta) - api.GenerateName(strategy, objectMeta) + if len(objectMeta.GenerateName) > 0 && len(objectMeta.Name) == 0 { + objectMeta.Name = strategy.GenerateName(objectMeta.GenerateName) + } // ClusterName is ignored and should not be saved objectMeta.ClusterName = "" diff --git a/pkg/api/v1/BUILD b/pkg/api/v1/BUILD index f12c8477b66..a902eb4bbeb 100644 --- a/pkg/api/v1/BUILD +++ b/pkg/api/v1/BUILD @@ -37,7 +37,6 @@ go_library( "//pkg/util:go_default_library", "//pkg/util/intstr:go_default_library", "//pkg/util/parsers:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:github.com/gogo/protobuf/proto", "//vendor:github.com/gogo/protobuf/sortkeys", "//vendor:github.com/ugorji/go/codec", @@ -49,6 +48,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime/schema", "//vendor:k8s.io/apimachinery/pkg/selection", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/util/rand", "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", ], diff --git a/pkg/api/v1/generate.go b/pkg/api/v1/generate.go index b6d1b347eba..b8c44e4c7f0 100644 --- a/pkg/api/v1/generate.go +++ b/pkg/api/v1/generate.go @@ -19,7 +19,7 @@ package v1 import ( "fmt" - utilrand "k8s.io/kubernetes/pkg/util/rand" + utilrand "k8s.io/apimachinery/pkg/util/rand" ) // NameGenerator generates names for objects. Some backends may have more information diff --git a/pkg/cloudprovider/providers/openstack/BUILD b/pkg/cloudprovider/providers/openstack/BUILD index 265ab96cf4c..0ca9db5ce92 100644 --- a/pkg/cloudprovider/providers/openstack/BUILD +++ b/pkg/cloudprovider/providers/openstack/BUILD @@ -69,10 +69,10 @@ go_test( deps = [ "//pkg/api/v1:go_default_library", "//pkg/cloudprovider:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:github.com/rackspace/gophercloud", "//vendor:github.com/rackspace/gophercloud/openstack/compute/v2/servers", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/util/rand", ], ) diff --git a/pkg/cloudprovider/providers/openstack/openstack_test.go b/pkg/cloudprovider/providers/openstack/openstack_test.go index 10d8214c07a..66580076deb 100644 --- a/pkg/cloudprovider/providers/openstack/openstack_test.go +++ b/pkg/cloudprovider/providers/openstack/openstack_test.go @@ -27,8 +27,8 @@ import ( "github.com/rackspace/gophercloud" "github.com/rackspace/gophercloud/openstack/compute/v2/servers" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/kubernetes/pkg/api/v1" - "k8s.io/kubernetes/pkg/util/rand" ) const volumeAvailableStatus = "available" diff --git a/pkg/cloudprovider/providers/photon/BUILD b/pkg/cloudprovider/providers/photon/BUILD index 00a9552d59d..a718a5848bb 100644 --- a/pkg/cloudprovider/providers/photon/BUILD +++ b/pkg/cloudprovider/providers/photon/BUILD @@ -29,8 +29,8 @@ go_test( tags = ["automanaged"], deps = [ "//pkg/cloudprovider:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/util/rand", ], ) diff --git a/pkg/cloudprovider/providers/photon/photon_test.go b/pkg/cloudprovider/providers/photon/photon_test.go index e3ec563afa1..87b025d24ae 100644 --- a/pkg/cloudprovider/providers/photon/photon_test.go +++ b/pkg/cloudprovider/providers/photon/photon_test.go @@ -24,8 +24,8 @@ import ( "testing" "k8s.io/apimachinery/pkg/types" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/util/rand" ) func configFromEnv() (TestVM string, TestFlavor string, cfg PCConfig, ok bool) { diff --git a/pkg/cloudprovider/providers/vsphere/BUILD b/pkg/cloudprovider/providers/vsphere/BUILD index e8fda0e4375..a752b42442f 100644 --- a/pkg/cloudprovider/providers/vsphere/BUILD +++ b/pkg/cloudprovider/providers/vsphere/BUILD @@ -39,9 +39,9 @@ go_test( tags = ["automanaged"], deps = [ "//pkg/cloudprovider:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:golang.org/x/net/context", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/util/rand", ], ) diff --git a/pkg/cloudprovider/providers/vsphere/vsphere_test.go b/pkg/cloudprovider/providers/vsphere/vsphere_test.go index 65419a895e9..b7bbdd7cc57 100644 --- a/pkg/cloudprovider/providers/vsphere/vsphere_test.go +++ b/pkg/cloudprovider/providers/vsphere/vsphere_test.go @@ -25,8 +25,8 @@ import ( "golang.org/x/net/context" "k8s.io/apimachinery/pkg/types" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/kubernetes/pkg/cloudprovider" - "k8s.io/kubernetes/pkg/util/rand" ) func configFromEnv() (cfg VSphereConfig, ok bool) { diff --git a/pkg/controller/job/BUILD b/pkg/controller/job/BUILD index d6bc46accf2..b613f51d7c8 100644 --- a/pkg/controller/job/BUILD +++ b/pkg/controller/job/BUILD @@ -55,8 +55,8 @@ go_test( "//pkg/client/testing/core:go_default_library", "//pkg/controller:go_default_library", "//pkg/controller/informers:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:k8s.io/apimachinery/pkg/apis/meta/v1", + "//vendor:k8s.io/apimachinery/pkg/util/rand", "//vendor:k8s.io/apimachinery/pkg/util/wait", "//vendor:k8s.io/apimachinery/pkg/watch", ], diff --git a/pkg/controller/job/jobcontroller_test.go b/pkg/controller/job/jobcontroller_test.go index 95507dbf6ab..5a75046bf86 100644 --- a/pkg/controller/job/jobcontroller_test.go +++ b/pkg/controller/job/jobcontroller_test.go @@ -22,6 +22,7 @@ import ( "time" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/apimachinery/pkg/watch" "k8s.io/kubernetes/pkg/api" @@ -34,7 +35,6 @@ import ( "k8s.io/kubernetes/pkg/client/testing/core" "k8s.io/kubernetes/pkg/controller" "k8s.io/kubernetes/pkg/controller/informers" - "k8s.io/kubernetes/pkg/util/rand" ) var alwaysReady = func() bool { return true } diff --git a/pkg/controller/serviceaccount/BUILD b/pkg/controller/serviceaccount/BUILD index 0e1f9d124ba..03e0a287ad4 100644 --- a/pkg/controller/serviceaccount/BUILD +++ b/pkg/controller/serviceaccount/BUILD @@ -65,12 +65,12 @@ go_test( "//pkg/client/testing/core:go_default_library", "//pkg/controller:go_default_library", "//pkg/controller/informers:go_default_library", - "//pkg/util/rand:go_default_library", "//vendor:github.com/davecgh/go-spew/spew", "//vendor:github.com/golang/glog", "//vendor:k8s.io/apimachinery/pkg/api/errors", "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/runtime/schema", + "//vendor:k8s.io/apimachinery/pkg/util/rand", "//vendor:k8s.io/apimachinery/pkg/util/sets", ], ) diff --git a/pkg/controller/serviceaccount/tokens_controller_test.go b/pkg/controller/serviceaccount/tokens_controller_test.go index e171483c4d5..2e065673962 100644 --- a/pkg/controller/serviceaccount/tokens_controller_test.go +++ b/pkg/controller/serviceaccount/tokens_controller_test.go @@ -28,11 +28,11 @@ import ( apierrors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" + utilrand "k8s.io/apimachinery/pkg/util/rand" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/fake" "k8s.io/kubernetes/pkg/client/testing/core" - utilrand "k8s.io/kubernetes/pkg/util/rand" ) type testGenerator struct { diff --git a/pkg/kubelet/BUILD b/pkg/kubelet/BUILD index f49638f5f1f..ca82778561b 100644 --- a/pkg/kubelet/BUILD +++ b/pkg/kubelet/BUILD @@ -184,7 +184,6 @@ go_test( "//pkg/util/clock:go_default_library", "//pkg/util/flowcontrol:go_default_library", "//pkg/util/mount:go_default_library", - "//pkg/util/rand:go_default_library", "//pkg/util/strategicpatch:go_default_library", "//pkg/util/testing:go_default_library", "//pkg/util/uuid:go_default_library", @@ -203,6 +202,7 @@ go_test( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/types", "//vendor:k8s.io/apimachinery/pkg/util/diff", + "//vendor:k8s.io/apimachinery/pkg/util/rand", "//vendor:k8s.io/apimachinery/pkg/util/runtime", "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/apimachinery/pkg/util/wait", diff --git a/pkg/kubelet/kubelet_node_status_test.go b/pkg/kubelet/kubelet_node_status_test.go index 4c4bc43078f..2dd38405418 100644 --- a/pkg/kubelet/kubelet_node_status_test.go +++ b/pkg/kubelet/kubelet_node_status_test.go @@ -32,6 +32,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/diff" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/resource" @@ -40,7 +41,6 @@ import ( "k8s.io/kubernetes/pkg/client/testing/core" kubecontainer "k8s.io/kubernetes/pkg/kubelet/container" "k8s.io/kubernetes/pkg/kubelet/util/sliceutils" - "k8s.io/kubernetes/pkg/util/rand" "k8s.io/kubernetes/pkg/util/strategicpatch" "k8s.io/kubernetes/pkg/util/uuid" "k8s.io/kubernetes/pkg/version" diff --git a/pkg/registry/apps/petset/BUILD b/pkg/registry/apps/petset/BUILD index 355be3678ba..c6ce956f871 100644 --- a/pkg/registry/apps/petset/BUILD +++ b/pkg/registry/apps/petset/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/apps/petset/strategy.go b/pkg/registry/apps/petset/strategy.go index dea1b3607dc..ba332b60a7e 100644 --- a/pkg/registry/apps/petset/strategy.go +++ b/pkg/registry/apps/petset/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/apps" "k8s.io/kubernetes/pkg/apis/apps/validation" @@ -35,11 +36,11 @@ import ( // statefulSetStrategy implements verification logic for Replication StatefulSets. type statefulSetStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Replication StatefulSet objects. -var Strategy = statefulSetStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = statefulSetStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all StatefulSet' need to be within a namespace. func (statefulSetStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/autoscaling/horizontalpodautoscaler/BUILD b/pkg/registry/autoscaling/horizontalpodautoscaler/BUILD index c69c6374872..e913cb17ac3 100644 --- a/pkg/registry/autoscaling/horizontalpodautoscaler/BUILD +++ b/pkg/registry/autoscaling/horizontalpodautoscaler/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/autoscaling/horizontalpodautoscaler/strategy.go b/pkg/registry/autoscaling/horizontalpodautoscaler/strategy.go index a0de7135139..5b1a895a71e 100644 --- a/pkg/registry/autoscaling/horizontalpodautoscaler/strategy.go +++ b/pkg/registry/autoscaling/horizontalpodautoscaler/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/autoscaling" "k8s.io/kubernetes/pkg/apis/autoscaling/validation" @@ -33,12 +34,12 @@ import ( // autoscalerStrategy implements behavior for HorizontalPodAutoscalers type autoscalerStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating HorizontalPodAutoscaler // objects via the REST API. -var Strategy = autoscalerStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = autoscalerStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for autoscaler. func (autoscalerStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/batch/cronjob/BUILD b/pkg/registry/batch/cronjob/BUILD index ca8eb4b424b..f1f59a2a804 100644 --- a/pkg/registry/batch/cronjob/BUILD +++ b/pkg/registry/batch/cronjob/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/batch/cronjob/strategy.go b/pkg/registry/batch/cronjob/strategy.go index 4a5df12f7e1..e6ef0cdd04d 100644 --- a/pkg/registry/batch/cronjob/strategy.go +++ b/pkg/registry/batch/cronjob/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/batch/validation" @@ -34,11 +35,11 @@ import ( // scheduledJobStrategy implements verification logic for Replication Controllers. type scheduledJobStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating CronJob objects. -var Strategy = scheduledJobStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = scheduledJobStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all scheduled jobs need to be within a namespace. func (scheduledJobStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/batch/job/BUILD b/pkg/registry/batch/job/BUILD index 0f3b6f2a58d..b9632ba5e92 100644 --- a/pkg/registry/batch/job/BUILD +++ b/pkg/registry/batch/job/BUILD @@ -27,6 +27,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/batch/job/strategy.go b/pkg/registry/batch/job/strategy.go index ae2255f3c91..cd01c8e9da2 100644 --- a/pkg/registry/batch/job/strategy.go +++ b/pkg/registry/batch/job/strategy.go @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/batch" "k8s.io/kubernetes/pkg/apis/batch/validation" @@ -36,11 +37,11 @@ import ( // jobStrategy implements verification logic for Replication Controllers. type jobStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Replication Controller objects. -var Strategy = jobStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = jobStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all jobs need to be within a namespace. func (jobStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/certificates/certificates/BUILD b/pkg/registry/certificates/certificates/BUILD index b12c9808837..a75c60ce290 100644 --- a/pkg/registry/certificates/certificates/BUILD +++ b/pkg/registry/certificates/certificates/BUILD @@ -30,6 +30,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/certificates/certificates/strategy.go b/pkg/registry/certificates/certificates/strategy.go index 9171c54aa85..0b4d42f8b4b 100644 --- a/pkg/registry/certificates/certificates/strategy.go +++ b/pkg/registry/certificates/certificates/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/certificates" "k8s.io/kubernetes/pkg/apis/certificates/validation" @@ -34,12 +35,12 @@ import ( // csrStrategy implements behavior for CSRs type csrStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // csrStrategy is the default logic that applies when creating and updating // CSR objects. -var Strategy = csrStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = csrStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for CSRs. func (csrStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/configmap/BUILD b/pkg/registry/core/configmap/BUILD index 340b326b5c8..77532d5fa8f 100644 --- a/pkg/registry/core/configmap/BUILD +++ b/pkg/registry/core/configmap/BUILD @@ -29,6 +29,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/configmap/strategy.go b/pkg/registry/core/configmap/strategy.go index 6a5fdf00fe3..35081da255c 100644 --- a/pkg/registry/core/configmap/strategy.go +++ b/pkg/registry/core/configmap/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/validation" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for ConfigMap objects type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating ConfigMap // objects via the REST API. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} // Strategy should implement rest.RESTCreateStrategy var _ rest.RESTCreateStrategy = Strategy diff --git a/pkg/registry/core/controller/BUILD b/pkg/registry/core/controller/BUILD index 7f58dc1bc91..7db0415835a 100644 --- a/pkg/registry/core/controller/BUILD +++ b/pkg/registry/core/controller/BUILD @@ -29,6 +29,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/controller/strategy.go b/pkg/registry/core/controller/strategy.go index f000dd66be4..00dc9ea9899 100644 --- a/pkg/registry/core/controller/strategy.go +++ b/pkg/registry/core/controller/strategy.go @@ -27,6 +27,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/validation" @@ -38,11 +39,11 @@ import ( // rcStrategy implements verification logic for Replication Controllers. type rcStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Replication Controller objects. -var Strategy = rcStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = rcStrategy{api.Scheme, names.SimpleNameGenerator} // DefaultGarbageCollectionPolicy returns Orphan because that was the default // behavior before the server-side garbage collection was implemented. diff --git a/pkg/registry/core/endpoint/BUILD b/pkg/registry/core/endpoint/BUILD index a8d43d53d8b..2eecf26de2e 100644 --- a/pkg/registry/core/endpoint/BUILD +++ b/pkg/registry/core/endpoint/BUILD @@ -30,6 +30,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/endpoint/strategy.go b/pkg/registry/core/endpoint/strategy.go index ff289211d8b..d5203f56853 100644 --- a/pkg/registry/core/endpoint/strategy.go +++ b/pkg/registry/core/endpoint/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" endptspkg "k8s.io/kubernetes/pkg/api/endpoints" "k8s.io/kubernetes/pkg/api/validation" @@ -34,12 +35,12 @@ import ( // endpointsStrategy implements behavior for Endpoints type endpointsStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Endpoint // objects via the REST API. -var Strategy = endpointsStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = endpointsStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for endpoints. func (endpointsStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/event/BUILD b/pkg/registry/core/event/BUILD index c32af53cd42..a515a20eac4 100644 --- a/pkg/registry/core/event/BUILD +++ b/pkg/registry/core/event/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/event/strategy.go b/pkg/registry/core/event/strategy.go index f09b36bc02b..9ce61daf8d3 100644 --- a/pkg/registry/core/event/strategy.go +++ b/pkg/registry/core/event/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -32,12 +33,12 @@ import ( type eventStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that pplies when creating and updating // Event objects via the REST API. -var Strategy = eventStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = eventStrategy{api.Scheme, names.SimpleNameGenerator} func (eventStrategy) NamespaceScoped() bool { return true diff --git a/pkg/registry/core/limitrange/BUILD b/pkg/registry/core/limitrange/BUILD index acd3bbdaa79..7c1853fd6b8 100644 --- a/pkg/registry/core/limitrange/BUILD +++ b/pkg/registry/core/limitrange/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/limitrange/strategy.go b/pkg/registry/core/limitrange/strategy.go index 0fd044f9e37..aae6fa0a2c0 100644 --- a/pkg/registry/core/limitrange/strategy.go +++ b/pkg/registry/core/limitrange/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -32,12 +33,12 @@ import ( type limitrangeStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating // LimitRange objects via the REST API. -var Strategy = limitrangeStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = limitrangeStrategy{api.Scheme, names.SimpleNameGenerator} func (limitrangeStrategy) NamespaceScoped() bool { return true diff --git a/pkg/registry/core/namespace/BUILD b/pkg/registry/core/namespace/BUILD index 1d73c3fd7b0..ef4e0ac64db 100644 --- a/pkg/registry/core/namespace/BUILD +++ b/pkg/registry/core/namespace/BUILD @@ -29,6 +29,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/namespace/strategy.go b/pkg/registry/core/namespace/strategy.go index 2202359e82b..c5d700522aa 100644 --- a/pkg/registry/core/namespace/strategy.go +++ b/pkg/registry/core/namespace/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // namespaceStrategy implements behavior for Namespaces type namespaceStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Namespace // objects via the REST API. -var Strategy = namespaceStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = namespaceStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is false for namespaces. func (namespaceStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/node/BUILD b/pkg/registry/core/node/BUILD index 3c50a5cb0a8..9e68fcf9ae4 100644 --- a/pkg/registry/core/node/BUILD +++ b/pkg/registry/core/node/BUILD @@ -33,6 +33,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/node/strategy.go b/pkg/registry/core/node/strategy.go index 5d0ca3034c0..d977ee2e32e 100644 --- a/pkg/registry/core/node/strategy.go +++ b/pkg/registry/core/node/strategy.go @@ -30,6 +30,7 @@ import ( utilnet "k8s.io/apimachinery/pkg/util/net" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -41,12 +42,12 @@ import ( // nodeStrategy implements behavior for nodes type nodeStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Nodes is the default logic that applies when creating and updating Node // objects. -var Strategy = nodeStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = nodeStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is false for nodes. func (nodeStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/persistentvolume/BUILD b/pkg/registry/core/persistentvolume/BUILD index 456e80e12e2..882315a3258 100644 --- a/pkg/registry/core/persistentvolume/BUILD +++ b/pkg/registry/core/persistentvolume/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/persistentvolume/strategy.go b/pkg/registry/core/persistentvolume/strategy.go index c4afa7ed598..fcf36cd2cd8 100644 --- a/pkg/registry/core/persistentvolume/strategy.go +++ b/pkg/registry/core/persistentvolume/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // persistentvolumeStrategy implements behavior for PersistentVolume objects type persistentvolumeStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating PersistentVolume // objects via the REST API. -var Strategy = persistentvolumeStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = persistentvolumeStrategy{api.Scheme, names.SimpleNameGenerator} func (persistentvolumeStrategy) NamespaceScoped() bool { return false diff --git a/pkg/registry/core/persistentvolumeclaim/BUILD b/pkg/registry/core/persistentvolumeclaim/BUILD index 9cce2a0a795..1cf12f7f1db 100644 --- a/pkg/registry/core/persistentvolumeclaim/BUILD +++ b/pkg/registry/core/persistentvolumeclaim/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/persistentvolumeclaim/strategy.go b/pkg/registry/core/persistentvolumeclaim/strategy.go index a4c2e619e6e..bb039cc8eaf 100644 --- a/pkg/registry/core/persistentvolumeclaim/strategy.go +++ b/pkg/registry/core/persistentvolumeclaim/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // persistentvolumeclaimStrategy implements behavior for PersistentVolumeClaim objects type persistentvolumeclaimStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating PersistentVolumeClaim // objects via the REST API. -var Strategy = persistentvolumeclaimStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = persistentvolumeclaimStrategy{api.Scheme, names.SimpleNameGenerator} func (persistentvolumeclaimStrategy) NamespaceScoped() bool { return true diff --git a/pkg/registry/core/pod/BUILD b/pkg/registry/core/pod/BUILD index 74e1e60c6c0..0ae9227cf76 100644 --- a/pkg/registry/core/pod/BUILD +++ b/pkg/registry/core/pod/BUILD @@ -31,6 +31,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/net", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/pod/strategy.go b/pkg/registry/core/pod/strategy.go index 53d28a06a05..9b388437426 100644 --- a/pkg/registry/core/pod/strategy.go +++ b/pkg/registry/core/pod/strategy.go @@ -33,6 +33,7 @@ import ( utilnet "k8s.io/apimachinery/pkg/util/net" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -45,12 +46,12 @@ import ( // podStrategy implements behavior for Pods type podStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Pod // objects via the REST API. -var Strategy = podStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = podStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for pods. func (podStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/podtemplate/BUILD b/pkg/registry/core/podtemplate/BUILD index d0cddc9e57d..5610976fa0f 100644 --- a/pkg/registry/core/podtemplate/BUILD +++ b/pkg/registry/core/podtemplate/BUILD @@ -24,6 +24,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/podtemplate/strategy.go b/pkg/registry/core/podtemplate/strategy.go index f65f5609257..8c6f403e7e7 100644 --- a/pkg/registry/core/podtemplate/strategy.go +++ b/pkg/registry/core/podtemplate/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -32,12 +33,12 @@ import ( // podTemplateStrategy implements behavior for PodTemplates type podTemplateStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating PodTemplate // objects via the REST API. -var Strategy = podTemplateStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = podTemplateStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for pod templates. func (podTemplateStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/resourcequota/BUILD b/pkg/registry/core/resourcequota/BUILD index 3771ab9298e..6bc239aee84 100644 --- a/pkg/registry/core/resourcequota/BUILD +++ b/pkg/registry/core/resourcequota/BUILD @@ -25,6 +25,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/resourcequota/strategy.go b/pkg/registry/core/resourcequota/strategy.go index 1bf4e590b89..5611d618641 100644 --- a/pkg/registry/core/resourcequota/strategy.go +++ b/pkg/registry/core/resourcequota/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // resourcequotaStrategy implements behavior for ResourceQuota objects type resourcequotaStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating ResourceQuota // objects via the REST API. -var Strategy = resourcequotaStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = resourcequotaStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for resourcequotas. func (resourcequotaStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/secret/BUILD b/pkg/registry/core/secret/BUILD index 1e1b3a94341..574080f5280 100644 --- a/pkg/registry/core/secret/BUILD +++ b/pkg/registry/core/secret/BUILD @@ -30,6 +30,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/secret/strategy.go b/pkg/registry/core/secret/strategy.go index 520388b74a3..359b1a0a0fa 100644 --- a/pkg/registry/core/secret/strategy.go +++ b/pkg/registry/core/secret/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/validation" @@ -35,12 +36,12 @@ import ( // strategy implements behavior for Secret objects type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Secret // objects via the REST API. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} var _ = rest.RESTCreateStrategy(Strategy) diff --git a/pkg/registry/core/service/BUILD b/pkg/registry/core/service/BUILD index d97263ccdd9..07bf2c2ad5c 100644 --- a/pkg/registry/core/service/BUILD +++ b/pkg/registry/core/service/BUILD @@ -42,6 +42,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/service/strategy.go b/pkg/registry/core/service/strategy.go index 01822cafaee..c65b2b2abe7 100644 --- a/pkg/registry/core/service/strategy.go +++ b/pkg/registry/core/service/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // svcStrategy implements behavior for Services type svcStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Services is the default logic that applies when creating and updating Service // objects. -var Strategy = svcStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = svcStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped is true for services. func (svcStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/core/serviceaccount/BUILD b/pkg/registry/core/serviceaccount/BUILD index fd7ed585b86..633bf95b44a 100644 --- a/pkg/registry/core/serviceaccount/BUILD +++ b/pkg/registry/core/serviceaccount/BUILD @@ -29,6 +29,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/core/serviceaccount/strategy.go b/pkg/registry/core/serviceaccount/strategy.go index f000d043161..044ffa23f94 100644 --- a/pkg/registry/core/serviceaccount/strategy.go +++ b/pkg/registry/core/serviceaccount/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/validation" "k8s.io/kubernetes/pkg/fields" @@ -33,12 +34,12 @@ import ( // strategy implements behavior for ServiceAccount objects type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating ServiceAccount // objects via the REST API. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} func (strategy) NamespaceScoped() bool { return true diff --git a/pkg/registry/extensions/daemonset/BUILD b/pkg/registry/extensions/daemonset/BUILD index 882e2c478e9..63bc8460f67 100644 --- a/pkg/registry/extensions/daemonset/BUILD +++ b/pkg/registry/extensions/daemonset/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/daemonset/strategy.go b/pkg/registry/extensions/daemonset/strategy.go index b5624d82f46..2af39b1f1b2 100644 --- a/pkg/registry/extensions/daemonset/strategy.go +++ b/pkg/registry/extensions/daemonset/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions/validation" @@ -35,11 +36,11 @@ import ( // daemonSetStrategy implements verification logic for daemon sets. type daemonSetStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating DaemonSet objects. -var Strategy = daemonSetStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = daemonSetStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all DaemonSets need to be within a namespace. func (daemonSetStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/extensions/deployment/BUILD b/pkg/registry/extensions/deployment/BUILD index 80af48ea43c..229bb125935 100644 --- a/pkg/registry/extensions/deployment/BUILD +++ b/pkg/registry/extensions/deployment/BUILD @@ -30,6 +30,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/deployment/strategy.go b/pkg/registry/extensions/deployment/strategy.go index 88cc3ac34b0..af5274a87d7 100644 --- a/pkg/registry/extensions/deployment/strategy.go +++ b/pkg/registry/extensions/deployment/strategy.go @@ -26,6 +26,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/extensions" @@ -39,12 +40,12 @@ import ( // deploymentStrategy implements behavior for Deployments. type deploymentStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Deployment // objects via the REST API. -var Strategy = deploymentStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = deploymentStrategy{api.Scheme, names.SimpleNameGenerator} // DefaultGarbageCollectionPolicy returns Orphan because that's the default // behavior before the server-side garbage collection is implemented. diff --git a/pkg/registry/extensions/ingress/BUILD b/pkg/registry/extensions/ingress/BUILD index 4df0ad0f810..33683c6cb4f 100644 --- a/pkg/registry/extensions/ingress/BUILD +++ b/pkg/registry/extensions/ingress/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/ingress/strategy.go b/pkg/registry/extensions/ingress/strategy.go index 9eb056766a8..e5ec6501bd9 100644 --- a/pkg/registry/extensions/ingress/strategy.go +++ b/pkg/registry/extensions/ingress/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions/validation" @@ -35,11 +36,11 @@ import ( // ingressStrategy implements verification logic for Replication Ingresss. type ingressStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating Replication Ingress objects. -var Strategy = ingressStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = ingressStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all Ingress' need to be within a namespace. func (ingressStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/extensions/networkpolicy/BUILD b/pkg/registry/extensions/networkpolicy/BUILD index d6f8c2f3cff..07d74f8eb9b 100644 --- a/pkg/registry/extensions/networkpolicy/BUILD +++ b/pkg/registry/extensions/networkpolicy/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/networkpolicy/strategy.go b/pkg/registry/extensions/networkpolicy/strategy.go index c2030a063eb..0a6f34bbd54 100644 --- a/pkg/registry/extensions/networkpolicy/strategy.go +++ b/pkg/registry/extensions/networkpolicy/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/extensions" "k8s.io/kubernetes/pkg/apis/extensions/validation" @@ -35,11 +36,11 @@ import ( // networkPolicyStrategy implements verification logic for NetworkPolicys. type networkPolicyStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating NetworkPolicy objects. -var Strategy = networkPolicyStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = networkPolicyStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all NetworkPolicys need to be within a namespace. func (networkPolicyStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/extensions/podsecuritypolicy/BUILD b/pkg/registry/extensions/podsecuritypolicy/BUILD index 6c63b45cc89..a651d796df8 100644 --- a/pkg/registry/extensions/podsecuritypolicy/BUILD +++ b/pkg/registry/extensions/podsecuritypolicy/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/podsecuritypolicy/strategy.go b/pkg/registry/extensions/podsecuritypolicy/strategy.go index 401e62b4e03..0a135222b6c 100644 --- a/pkg/registry/extensions/podsecuritypolicy/strategy.go +++ b/pkg/registry/extensions/podsecuritypolicy/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/extensions" @@ -35,12 +36,12 @@ import ( // strategy implements behavior for PodSecurityPolicy objects type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating PodSecurityPolicy // objects via the REST API. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} var _ = rest.RESTCreateStrategy(Strategy) diff --git a/pkg/registry/extensions/replicaset/BUILD b/pkg/registry/extensions/replicaset/BUILD index 29c9999f30b..bec062ba0b7 100644 --- a/pkg/registry/extensions/replicaset/BUILD +++ b/pkg/registry/extensions/replicaset/BUILD @@ -30,6 +30,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/replicaset/strategy.go b/pkg/registry/extensions/replicaset/strategy.go index 4a97f5f53bb..146c043f4c3 100644 --- a/pkg/registry/extensions/replicaset/strategy.go +++ b/pkg/registry/extensions/replicaset/strategy.go @@ -27,6 +27,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/extensions" @@ -39,11 +40,11 @@ import ( // rsStrategy implements verification logic for ReplicaSets. type rsStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating ReplicaSet objects. -var Strategy = rsStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = rsStrategy{api.Scheme, names.SimpleNameGenerator} // DefaultGarbageCollectionPolicy returns Orphan because that's the default // behavior before the server-side garbage collection is implemented. diff --git a/pkg/registry/extensions/thirdpartyresourcedata/BUILD b/pkg/registry/extensions/thirdpartyresourcedata/BUILD index 394fe71e2b9..4c81de8973e 100644 --- a/pkg/registry/extensions/thirdpartyresourcedata/BUILD +++ b/pkg/registry/extensions/thirdpartyresourcedata/BUILD @@ -37,6 +37,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/yaml", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/extensions/thirdpartyresourcedata/strategy.go b/pkg/registry/extensions/thirdpartyresourcedata/strategy.go index ea5eddf0cfa..9876a386016 100644 --- a/pkg/registry/extensions/thirdpartyresourcedata/strategy.go +++ b/pkg/registry/extensions/thirdpartyresourcedata/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/extensions" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for ThirdPartyResource objects type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating ThirdPartyResource // objects via the REST API. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} var _ = rest.RESTCreateStrategy(Strategy) diff --git a/pkg/registry/generic/registry/BUILD b/pkg/registry/generic/registry/BUILD index e420ced502d..f814875fe37 100644 --- a/pkg/registry/generic/registry/BUILD +++ b/pkg/registry/generic/registry/BUILD @@ -74,6 +74,7 @@ go_test( "//vendor:k8s.io/apimachinery/pkg/util/wait", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/generic/registry/store_test.go b/pkg/registry/generic/registry/store_test.go index fd2c36b5312..fd0e8642376 100644 --- a/pkg/registry/generic/registry/store_test.go +++ b/pkg/registry/generic/registry/store_test.go @@ -35,6 +35,7 @@ import ( "k8s.io/apimachinery/pkg/util/validation/field" "k8s.io/apimachinery/pkg/util/wait" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/api/testapi" @@ -68,7 +69,7 @@ func (t *testOrphanDeleteStrategy) DefaultGarbageCollectionPolicy() rest.Garbage type testRESTStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator namespaceScoped bool allowCreateOnUpdate bool allowUnconditionalUpdate bool @@ -640,7 +641,7 @@ func TestGracefulStoreCanDeleteIfExistingGracePeriodZero(t *testing.T) { testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") destroyFunc, registry := NewTestGenericStoreRegistry(t) registry.EnableGarbageCollection = false - defaultDeleteStrategy := testRESTStrategy{api.Scheme, api.SimpleNameGenerator, true, false, true} + defaultDeleteStrategy := testRESTStrategy{api.Scheme, names.SimpleNameGenerator, true, false, true} registry.DeleteStrategy = testGracefulStrategy{defaultDeleteStrategy} defer destroyFunc() @@ -666,7 +667,7 @@ func TestGracefulStoreHandleFinalizers(t *testing.T) { testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") destroyFunc, registry := NewTestGenericStoreRegistry(t) registry.EnableGarbageCollection = true - defaultDeleteStrategy := testRESTStrategy{api.Scheme, api.SimpleNameGenerator, true, false, true} + defaultDeleteStrategy := testRESTStrategy{api.Scheme, names.SimpleNameGenerator, true, false, true} registry.DeleteStrategy = testGracefulStrategy{defaultDeleteStrategy} defer destroyFunc() // create pod @@ -823,7 +824,7 @@ func TestStoreDeleteWithOrphanDependents(t *testing.T) { nilOrphanOptions := &api.DeleteOptions{} // defaultDeleteStrategy doesn't implement rest.GarbageCollectionDeleteStrategy. - defaultDeleteStrategy := &testRESTStrategy{api.Scheme, api.SimpleNameGenerator, true, false, true} + defaultDeleteStrategy := &testRESTStrategy{api.Scheme, names.SimpleNameGenerator, true, false, true} // orphanDeleteStrategy indicates the default garbage collection policy is // to orphan dependentes. orphanDeleteStrategy := &testOrphanDeleteStrategy{defaultDeleteStrategy} @@ -1233,7 +1234,7 @@ func TestStoreWatch(t *testing.T) { func newTestGenericStoreRegistry(t *testing.T, hasCacheEnabled bool) (factory.DestroyFunc, *Store) { podPrefix := "/pods" server, sc := etcdtesting.NewUnsecuredEtcd3TestClientServer(t) - strategy := &testRESTStrategy{api.Scheme, api.SimpleNameGenerator, true, false, true} + strategy := &testRESTStrategy{api.Scheme, names.SimpleNameGenerator, true, false, true} sc.Codec = testapi.Default.StorageCodec() s, dFunc, err := factory.Create(*sc) diff --git a/pkg/registry/policy/poddisruptionbudget/BUILD b/pkg/registry/policy/poddisruptionbudget/BUILD index d275dd737a8..525923c0751 100644 --- a/pkg/registry/policy/poddisruptionbudget/BUILD +++ b/pkg/registry/policy/poddisruptionbudget/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/policy/poddisruptionbudget/strategy.go b/pkg/registry/policy/poddisruptionbudget/strategy.go index 2570edff884..4dd73d3e221 100644 --- a/pkg/registry/policy/poddisruptionbudget/strategy.go +++ b/pkg/registry/policy/poddisruptionbudget/strategy.go @@ -24,6 +24,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/policy" "k8s.io/kubernetes/pkg/apis/policy/validation" @@ -35,11 +36,11 @@ import ( // podDisruptionBudgetStrategy implements verification logic for PodDisruptionBudgets. type podDisruptionBudgetStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating PodDisruptionBudget objects. -var Strategy = podDisruptionBudgetStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = podDisruptionBudgetStrategy{api.Scheme, names.SimpleNameGenerator} // NamespaceScoped returns true because all PodDisruptionBudget' need to be within a namespace. func (podDisruptionBudgetStrategy) NamespaceScoped() bool { diff --git a/pkg/registry/rbac/clusterrole/BUILD b/pkg/registry/rbac/clusterrole/BUILD index 23cf16988f8..67f1315d99a 100644 --- a/pkg/registry/rbac/clusterrole/BUILD +++ b/pkg/registry/rbac/clusterrole/BUILD @@ -28,6 +28,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/rbac/clusterrole/strategy.go b/pkg/registry/rbac/clusterrole/strategy.go index a9a1517a883..33ac76ccfb9 100644 --- a/pkg/registry/rbac/clusterrole/strategy.go +++ b/pkg/registry/rbac/clusterrole/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/rbac" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for ClusterRoles type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // strategy is the default logic that applies when creating and updating // ClusterRole objects. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} // Strategy should implement rest.RESTCreateStrategy var _ rest.RESTCreateStrategy = Strategy diff --git a/pkg/registry/rbac/clusterrolebinding/BUILD b/pkg/registry/rbac/clusterrolebinding/BUILD index 673e657a25b..95e71bcc1af 100644 --- a/pkg/registry/rbac/clusterrolebinding/BUILD +++ b/pkg/registry/rbac/clusterrolebinding/BUILD @@ -28,6 +28,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/rbac/clusterrolebinding/strategy.go b/pkg/registry/rbac/clusterrolebinding/strategy.go index a6649dfb1fb..b059ef59f65 100644 --- a/pkg/registry/rbac/clusterrolebinding/strategy.go +++ b/pkg/registry/rbac/clusterrolebinding/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/rbac" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for ClusterRoleBindings type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // strategy is the default logic that applies when creating and updating // ClusterRoleBinding objects. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} // Strategy should implement rest.RESTCreateStrategy var _ rest.RESTCreateStrategy = Strategy diff --git a/pkg/registry/rbac/role/BUILD b/pkg/registry/rbac/role/BUILD index 4d6d0f1a1b4..97f09fbe33b 100644 --- a/pkg/registry/rbac/role/BUILD +++ b/pkg/registry/rbac/role/BUILD @@ -28,6 +28,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/rbac/role/strategy.go b/pkg/registry/rbac/role/strategy.go index 2c0429475da..733f3cc3f39 100644 --- a/pkg/registry/rbac/role/strategy.go +++ b/pkg/registry/rbac/role/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/rbac" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for Roles type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // strategy is the default logic that applies when creating and updating // Role objects. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} // Strategy should implement rest.RESTCreateStrategy var _ rest.RESTCreateStrategy = Strategy diff --git a/pkg/registry/rbac/rolebinding/BUILD b/pkg/registry/rbac/rolebinding/BUILD index f4dcf32ba09..1e2410192a9 100644 --- a/pkg/registry/rbac/rolebinding/BUILD +++ b/pkg/registry/rbac/rolebinding/BUILD @@ -28,6 +28,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apimachinery/pkg/watch", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/rbac/rolebinding/strategy.go b/pkg/registry/rbac/rolebinding/strategy.go index 498de0831ef..18aee07bd65 100644 --- a/pkg/registry/rbac/rolebinding/strategy.go +++ b/pkg/registry/rbac/rolebinding/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/rest" "k8s.io/kubernetes/pkg/apis/rbac" @@ -34,12 +35,12 @@ import ( // strategy implements behavior for RoleBindings type strategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // strategy is the default logic that applies when creating and updating // RoleBinding objects. -var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} // Strategy should implement rest.RESTCreateStrategy var _ rest.RESTCreateStrategy = Strategy diff --git a/pkg/registry/storage/storageclass/BUILD b/pkg/registry/storage/storageclass/BUILD index 15fcc41fca9..43c8cd24a75 100644 --- a/pkg/registry/storage/storageclass/BUILD +++ b/pkg/registry/storage/storageclass/BUILD @@ -26,6 +26,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime", "//vendor:k8s.io/apimachinery/pkg/util/validation/field", "//vendor:k8s.io/apiserver/pkg/request", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/pkg/registry/storage/storageclass/strategy.go b/pkg/registry/storage/storageclass/strategy.go index dcc348b360c..5585853d6e8 100644 --- a/pkg/registry/storage/storageclass/strategy.go +++ b/pkg/registry/storage/storageclass/strategy.go @@ -23,6 +23,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/validation/field" genericapirequest "k8s.io/apiserver/pkg/request" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/apis/storage" "k8s.io/kubernetes/pkg/apis/storage/validation" @@ -34,12 +35,12 @@ import ( // storageClassStrategy implements behavior for StorageClass objects type storageClassStrategy struct { runtime.ObjectTyper - api.NameGenerator + names.NameGenerator } // Strategy is the default logic that applies when creating and updating // StorageClass objects via the REST API. -var Strategy = storageClassStrategy{api.Scheme, api.SimpleNameGenerator} +var Strategy = storageClassStrategy{api.Scheme, names.SimpleNameGenerator} func (storageClassStrategy) NamespaceScoped() bool { return false diff --git a/pkg/util/rand/BUILD b/pkg/util/rand/BUILD index ff1048c49bf..deefdcef3c1 100644 --- a/pkg/util/rand/BUILD +++ b/pkg/util/rand/BUILD @@ -5,19 +5,11 @@ licenses(["notice"]) load( "@io_bazel_rules_go//go:def.bzl", "go_library", - "go_test", ) go_library( name = "go_default_library", - srcs = ["rand.go"], - tags = ["automanaged"], -) - -go_test( - name = "go_default_test", - srcs = ["rand_test.go"], - library = ":go_default_library", + srcs = ["doc.go"], tags = ["automanaged"], ) diff --git a/pkg/util/rand/doc.go b/pkg/util/rand/doc.go new file mode 100644 index 00000000000..7ba225434da --- /dev/null +++ b/pkg/util/rand/doc.go @@ -0,0 +1,21 @@ +/* +Copyright 2017 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +// Package rand needed for godep. +// TODO genericapiserver remove this empty package. Godep fails without this because heapster relies +// on this package. This will allow us to start splitting packages, but will force +// heapster to update on their next kube rebase. +package rand diff --git a/pkg/util/slice/BUILD b/pkg/util/slice/BUILD index 1963daaee3e..d947e1d71ea 100644 --- a/pkg/util/slice/BUILD +++ b/pkg/util/slice/BUILD @@ -12,7 +12,7 @@ go_library( name = "go_default_library", srcs = ["slice.go"], tags = ["automanaged"], - deps = ["//pkg/util/rand:go_default_library"], + deps = ["//vendor:k8s.io/apimachinery/pkg/util/rand"], ) go_test( diff --git a/pkg/util/slice/slice.go b/pkg/util/slice/slice.go index 2e1d7ccb53c..9520bc32aed 100644 --- a/pkg/util/slice/slice.go +++ b/pkg/util/slice/slice.go @@ -20,7 +20,7 @@ package slice import ( "sort" - utilrand "k8s.io/kubernetes/pkg/util/rand" + utilrand "k8s.io/apimachinery/pkg/util/rand" ) // CopyStrings copies the contents of the specified string slice diff --git a/pkg/volume/flocker/BUILD b/pkg/volume/flocker/BUILD index 9c8a6ef5294..f3cfe1c68f6 100644 --- a/pkg/volume/flocker/BUILD +++ b/pkg/volume/flocker/BUILD @@ -22,13 +22,13 @@ go_library( "//pkg/api/v1:go_default_library", "//pkg/util/env:go_default_library", "//pkg/util/mount:go_default_library", - "//pkg/util/rand:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", "//vendor:github.com/clusterhq/flocker-go", "//vendor:github.com/golang/glog", "//vendor:k8s.io/apimachinery/pkg/types", + "//vendor:k8s.io/apimachinery/pkg/util/rand", ], ) diff --git a/pkg/volume/flocker/flocker_util.go b/pkg/volume/flocker/flocker_util.go index 15cd986affe..ae68af9e98e 100644 --- a/pkg/volume/flocker/flocker_util.go +++ b/pkg/volume/flocker/flocker_util.go @@ -20,8 +20,8 @@ import ( "fmt" "time" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/kubernetes/pkg/api/v1" - "k8s.io/kubernetes/pkg/util/rand" "k8s.io/kubernetes/pkg/volume" flockerapi "github.com/clusterhq/flocker-go" diff --git a/plugin/pkg/admission/serviceaccount/BUILD b/plugin/pkg/admission/serviceaccount/BUILD index 62e762285da..ab9b8156b2d 100644 --- a/plugin/pkg/admission/serviceaccount/BUILD +++ b/plugin/pkg/admission/serviceaccount/BUILD @@ -31,6 +31,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/runtime/schema", "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/apimachinery/pkg/watch", + "//vendor:k8s.io/apiserver/pkg/storage/names", ], ) diff --git a/plugin/pkg/admission/serviceaccount/admission.go b/plugin/pkg/admission/serviceaccount/admission.go index dae848b2507..760ed091a04 100644 --- a/plugin/pkg/admission/serviceaccount/admission.go +++ b/plugin/pkg/admission/serviceaccount/admission.go @@ -29,6 +29,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/watch" + "k8s.io/apiserver/pkg/storage/names" "k8s.io/kubernetes/pkg/admission" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/v1" @@ -428,7 +429,7 @@ func (s *serviceAccount) mountServiceAccountToken(serviceAccount *api.ServiceAcc // Try naming the volume the same as the serviceAccountToken, and uniquify if needed tokenVolumeName = serviceAccountToken if allVolumeNames.Has(tokenVolumeName) { - tokenVolumeName = api.SimpleNameGenerator.GenerateName(fmt.Sprintf("%s-", serviceAccountToken)) + tokenVolumeName = names.SimpleNameGenerator.GenerateName(fmt.Sprintf("%s-", serviceAccountToken)) } } diff --git a/pkg/util/rand/rand.go b/staging/src/k8s.io/apimachinery/pkg/util/rand/rand.go similarity index 100% rename from pkg/util/rand/rand.go rename to staging/src/k8s.io/apimachinery/pkg/util/rand/rand.go diff --git a/pkg/util/rand/rand_test.go b/staging/src/k8s.io/apimachinery/pkg/util/rand/rand_test.go similarity index 100% rename from pkg/util/rand/rand_test.go rename to staging/src/k8s.io/apimachinery/pkg/util/rand/rand_test.go diff --git a/pkg/api/generate.go b/staging/src/k8s.io/apiserver/pkg/storage/names/generate.go similarity index 78% rename from pkg/api/generate.go rename to staging/src/k8s.io/apiserver/pkg/storage/names/generate.go index 19379d301e2..aad9a07f9ad 100644 --- a/pkg/api/generate.go +++ b/staging/src/k8s.io/apiserver/pkg/storage/names/generate.go @@ -14,12 +14,12 @@ See the License for the specific language governing permissions and limitations under the License. */ -package api +package names import ( "fmt" - utilrand "k8s.io/kubernetes/pkg/util/rand" + utilrand "k8s.io/apimachinery/pkg/util/rand" ) // NameGenerator generates names for objects. Some backends may have more information @@ -31,16 +31,6 @@ type NameGenerator interface { GenerateName(base string) string } -// GenerateName will resolve the object name of the provided ObjectMeta to a generated version if -// necessary. It expects that validation for ObjectMeta has already completed (that Base is a -// valid name) and that the NameGenerator generates a name that is also valid. -func GenerateName(u NameGenerator, meta *ObjectMeta) { - if len(meta.GenerateName) == 0 || len(meta.Name) != 0 { - return - } - meta.Name = u.GenerateName(meta.GenerateName) -} - // simpleNameGenerator generates random names. type simpleNameGenerator struct{} diff --git a/pkg/api/generate_test.go b/staging/src/k8s.io/apiserver/pkg/storage/names/generate_test.go similarity index 99% rename from pkg/api/generate_test.go rename to staging/src/k8s.io/apiserver/pkg/storage/names/generate_test.go index c34e6dad0ee..d0ca08854eb 100644 --- a/pkg/api/generate_test.go +++ b/staging/src/k8s.io/apiserver/pkg/storage/names/generate_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package api +package names import ( "strings" diff --git a/test/e2e/framework/BUILD b/test/e2e/framework/BUILD index 2455847005e..1affc515a86 100644 --- a/test/e2e/framework/BUILD +++ b/test/e2e/framework/BUILD @@ -75,7 +75,6 @@ go_library( "//pkg/util/exec:go_default_library", "//pkg/util/intstr:go_default_library", "//pkg/util/labels:go_default_library", - "//pkg/util/rand:go_default_library", "//pkg/util/system:go_default_library", "//pkg/util/uuid:go_default_library", "//pkg/util/version:go_default_library", @@ -106,6 +105,7 @@ go_library( "//vendor:k8s.io/apimachinery/pkg/types", "//vendor:k8s.io/apimachinery/pkg/util/errors", "//vendor:k8s.io/apimachinery/pkg/util/net", + "//vendor:k8s.io/apimachinery/pkg/util/rand", "//vendor:k8s.io/apimachinery/pkg/util/runtime", "//vendor:k8s.io/apimachinery/pkg/util/sets", "//vendor:k8s.io/apimachinery/pkg/util/validation", diff --git a/test/e2e/framework/networking_utils.go b/test/e2e/framework/networking_utils.go index 891ed04b2bb..997de0153aa 100644 --- a/test/e2e/framework/networking_utils.go +++ b/test/e2e/framework/networking_utils.go @@ -32,13 +32,13 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" utilnet "k8s.io/apimachinery/pkg/util/net" + "k8s.io/apimachinery/pkg/util/rand" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" "k8s.io/kubernetes/pkg/api" "k8s.io/kubernetes/pkg/api/v1" coreclientset "k8s.io/kubernetes/pkg/client/clientset_generated/clientset/typed/core/v1" "k8s.io/kubernetes/pkg/util/intstr" - "k8s.io/kubernetes/pkg/util/rand" "k8s.io/kubernetes/pkg/util/uuid" ) diff --git a/test/images/logs-generator/BUILD b/test/images/logs-generator/BUILD index ff86c7d704a..b4ef7feae38 100644 --- a/test/images/logs-generator/BUILD +++ b/test/images/logs-generator/BUILD @@ -19,8 +19,8 @@ go_library( srcs = ["logs_generator.go"], tags = ["automanaged"], deps = [ - "//pkg/util/rand:go_default_library", "//vendor:github.com/golang/glog", + "//vendor:k8s.io/apimachinery/pkg/util/rand", ], ) diff --git a/test/images/logs-generator/logs_generator.go b/test/images/logs-generator/logs_generator.go index 4da580e0c58..87189172f16 100644 --- a/test/images/logs-generator/logs_generator.go +++ b/test/images/logs-generator/logs_generator.go @@ -22,7 +22,7 @@ import ( "time" "github.com/golang/glog" - "k8s.io/kubernetes/pkg/util/rand" + "k8s.io/apimachinery/pkg/util/rand" ) var ( diff --git a/vendor/BUILD b/vendor/BUILD index 3d433867336..6e23388b186 100644 --- a/vendor/BUILD +++ b/vendor/BUILD @@ -13341,3 +13341,30 @@ go_library( "//vendor:github.com/go-openapi/spec", ], ) + +go_test( + name = "k8s.io/apimachinery/pkg/util/rand_test", + srcs = ["k8s.io/apimachinery/pkg/util/rand/rand_test.go"], + library = ":k8s.io/apimachinery/pkg/util/rand", + tags = ["automanaged"], +) + +go_library( + name = "k8s.io/apimachinery/pkg/util/rand", + srcs = ["k8s.io/apimachinery/pkg/util/rand/rand.go"], + tags = ["automanaged"], +) + +go_test( + name = "k8s.io/apiserver/pkg/storage/names_test", + srcs = ["k8s.io/apiserver/pkg/storage/names/generate_test.go"], + library = ":k8s.io/apiserver/pkg/storage/names", + tags = ["automanaged"], +) + +go_library( + name = "k8s.io/apiserver/pkg/storage/names", + srcs = ["k8s.io/apiserver/pkg/storage/names/generate.go"], + tags = ["automanaged"], + deps = ["//vendor:k8s.io/apimachinery/pkg/util/rand"], +)