Merge pull request #39890 from deads2k/generic-23-post-client-go-update
Automatic merge from submit-queue move name generation to generic api server storage helpers Move name generation to the genericapiserver since only the server needs to know about it. @kubernetes/sig-api-machinery-misc @sttts
This commit is contained in:
		| @@ -22,6 +22,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	kapi "k8s.io/kubernetes/pkg/api" | 	kapi "k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| 	"k8s.io/kubernetes/pkg/registry/generic" | 	"k8s.io/kubernetes/pkg/registry/generic" | ||||||
| @@ -34,10 +35,10 @@ import ( | |||||||
|  |  | ||||||
| type apiServerStrategy struct { | type apiServerStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	kapi.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| var Strategy = apiServerStrategy{kapi.Scheme, kapi.SimpleNameGenerator} | var Strategy = apiServerStrategy{kapi.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (apiServerStrategy) NamespaceScoped() bool { | func (apiServerStrategy) NamespaceScoped() bool { | ||||||
| 	return false | 	return false | ||||||
|   | |||||||
| @@ -22,6 +22,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	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/cmd/libs/go2idl/client-gen/test_apis/testgroup" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -61,7 +62,7 @@ func NewREST(optsGetter generic.RESTOptionsGetter) *REST { | |||||||
|  |  | ||||||
| type fakeStrategy struct { | type fakeStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| func (*fakeStrategy) NamespaceScoped() bool                                              { return false } | 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) {} | 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) { | func getAttrs(obj runtime.Object) (labels.Set, fields.Set, error) { | ||||||
| 	testType, ok := obj.(*testgroup.TestType) | 	testType, ok := obj.(*testgroup.TestType) | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/federation/apis/federation" | 	"k8s.io/kubernetes/federation/apis/federation" | ||||||
| 	"k8s.io/kubernetes/federation/apis/federation/validation" | 	"k8s.io/kubernetes/federation/apis/federation/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| @@ -33,10 +34,10 @@ import ( | |||||||
|  |  | ||||||
| type clusterStrategy struct { | type clusterStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| var Strategy = clusterStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = clusterStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (clusterStrategy) NamespaceScoped() bool { | func (clusterStrategy) NamespaceScoped() bool { | ||||||
| 	return false | 	return false | ||||||
|   | |||||||
| @@ -265,6 +265,7 @@ pkg/util/logs | |||||||
| pkg/util/maps | pkg/util/maps | ||||||
| pkg/util/metrics | pkg/util/metrics | ||||||
| pkg/util/netsh | pkg/util/netsh | ||||||
|  | pkg/util/rand | ||||||
| pkg/util/ratelimit | pkg/util/ratelimit | ||||||
| pkg/util/replicaset | pkg/util/replicaset | ||||||
| pkg/util/restoptions | pkg/util/restoptions | ||||||
|   | |||||||
| @@ -15,7 +15,6 @@ go_library( | |||||||
|         "defaults.go", |         "defaults.go", | ||||||
|         "doc.go", |         "doc.go", | ||||||
|         "field_constants.go", |         "field_constants.go", | ||||||
|         "generate.go", |  | ||||||
|         "helpers.go", |         "helpers.go", | ||||||
|         "mapper.go", |         "mapper.go", | ||||||
|         "meta.go", |         "meta.go", | ||||||
| @@ -31,7 +30,6 @@ go_library( | |||||||
|         "//pkg/fields:go_default_library", |         "//pkg/fields:go_default_library", | ||||||
|         "//pkg/util/intstr:go_default_library", |         "//pkg/util/intstr:go_default_library", | ||||||
|         "//pkg/util/labels:go_default_library", |         "//pkg/util/labels:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//vendor:github.com/davecgh/go-spew/spew", |         "//vendor:github.com/davecgh/go-spew/spew", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/api/meta", |         "//vendor:k8s.io/apimachinery/pkg/api/meta", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/apimachinery/registered", |         "//vendor:k8s.io/apimachinery/pkg/apimachinery/registered", | ||||||
| @@ -51,7 +49,6 @@ go_library( | |||||||
| go_test( | go_test( | ||||||
|     name = "go_default_test", |     name = "go_default_test", | ||||||
|     srcs = [ |     srcs = [ | ||||||
|         "generate_test.go", |  | ||||||
|         "helpers_test.go", |         "helpers_test.go", | ||||||
|         "ref_test.go", |         "ref_test.go", | ||||||
|         "resource_helpers_test.go", |         "resource_helpers_test.go", | ||||||
|   | |||||||
| @@ -34,6 +34,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -22,6 +22,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime/schema" | 	"k8s.io/apimachinery/pkg/runtime/schema" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation/genericvalidation" | 	"k8s.io/kubernetes/pkg/api/validation/genericvalidation" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation/path" | 	"k8s.io/kubernetes/pkg/api/validation/path" | ||||||
| @@ -34,7 +35,7 @@ type RESTCreateStrategy interface { | |||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	// The name generate is used when the standard GenerateName field is set. | 	// The name generate is used when the standard GenerateName field is set. | ||||||
| 	// The NameGenerator will be invoked prior to validation. | 	// The NameGenerator will be invoked prior to validation. | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
|  |  | ||||||
| 	// NamespaceScoped returns true if the object must be within a namespace. | 	// NamespaceScoped returns true if the object must be within a namespace. | ||||||
| 	NamespaceScoped() bool | 	NamespaceScoped() bool | ||||||
| @@ -71,7 +72,9 @@ func BeforeCreate(strategy RESTCreateStrategy, ctx genericapirequest.Context, ob | |||||||
| 	objectMeta.DeletionGracePeriodSeconds = nil | 	objectMeta.DeletionGracePeriodSeconds = nil | ||||||
| 	strategy.PrepareForCreate(ctx, obj) | 	strategy.PrepareForCreate(ctx, obj) | ||||||
| 	FillObjectMetaSystemFields(ctx, objectMeta) | 	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 | 	// ClusterName is ignored and should not be saved | ||||||
| 	objectMeta.ClusterName = "" | 	objectMeta.ClusterName = "" | ||||||
|   | |||||||
| @@ -37,7 +37,6 @@ go_library( | |||||||
|         "//pkg/util:go_default_library", |         "//pkg/util:go_default_library", | ||||||
|         "//pkg/util/intstr:go_default_library", |         "//pkg/util/intstr:go_default_library", | ||||||
|         "//pkg/util/parsers: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/proto", | ||||||
|         "//vendor:github.com/gogo/protobuf/sortkeys", |         "//vendor:github.com/gogo/protobuf/sortkeys", | ||||||
|         "//vendor:github.com/ugorji/go/codec", |         "//vendor:github.com/ugorji/go/codec", | ||||||
| @@ -49,6 +48,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", |         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/selection", |         "//vendor:k8s.io/apimachinery/pkg/selection", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//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/sets", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|     ], |     ], | ||||||
|   | |||||||
| @@ -19,7 +19,7 @@ package v1 | |||||||
| import ( | import ( | ||||||
| 	"fmt" | 	"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 | // NameGenerator generates names for objects. Some backends may have more information | ||||||
|   | |||||||
| @@ -69,10 +69,10 @@ go_test( | |||||||
|     deps = [ |     deps = [ | ||||||
|         "//pkg/api/v1:go_default_library", |         "//pkg/api/v1:go_default_library", | ||||||
|         "//pkg/cloudprovider:go_default_library", |         "//pkg/cloudprovider:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//vendor:github.com/rackspace/gophercloud", |         "//vendor:github.com/rackspace/gophercloud", | ||||||
|         "//vendor:github.com/rackspace/gophercloud/openstack/compute/v2/servers", |         "//vendor:github.com/rackspace/gophercloud/openstack/compute/v2/servers", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//vendor:k8s.io/apimachinery/pkg/types", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -27,8 +27,8 @@ import ( | |||||||
| 	"github.com/rackspace/gophercloud" | 	"github.com/rackspace/gophercloud" | ||||||
| 	"github.com/rackspace/gophercloud/openstack/compute/v2/servers" | 	"github.com/rackspace/gophercloud/openstack/compute/v2/servers" | ||||||
|  |  | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/kubernetes/pkg/api/v1" | 	"k8s.io/kubernetes/pkg/api/v1" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| const volumeAvailableStatus = "available" | const volumeAvailableStatus = "available" | ||||||
|   | |||||||
| @@ -29,8 +29,8 @@ go_test( | |||||||
|     tags = ["automanaged"], |     tags = ["automanaged"], | ||||||
|     deps = [ |     deps = [ | ||||||
|         "//pkg/cloudprovider:go_default_library", |         "//pkg/cloudprovider:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//vendor:k8s.io/apimachinery/pkg/types", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,8 +24,8 @@ import ( | |||||||
| 	"testing" | 	"testing" | ||||||
|  |  | ||||||
| 	"k8s.io/apimachinery/pkg/types" | 	"k8s.io/apimachinery/pkg/types" | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/kubernetes/pkg/cloudprovider" | 	"k8s.io/kubernetes/pkg/cloudprovider" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| func configFromEnv() (TestVM string, TestFlavor string, cfg PCConfig, ok bool) { | func configFromEnv() (TestVM string, TestFlavor string, cfg PCConfig, ok bool) { | ||||||
|   | |||||||
| @@ -39,9 +39,9 @@ go_test( | |||||||
|     tags = ["automanaged"], |     tags = ["automanaged"], | ||||||
|     deps = [ |     deps = [ | ||||||
|         "//pkg/cloudprovider:go_default_library", |         "//pkg/cloudprovider:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//vendor:golang.org/x/net/context", |         "//vendor:golang.org/x/net/context", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//vendor:k8s.io/apimachinery/pkg/types", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -25,8 +25,8 @@ import ( | |||||||
|  |  | ||||||
| 	"golang.org/x/net/context" | 	"golang.org/x/net/context" | ||||||
| 	"k8s.io/apimachinery/pkg/types" | 	"k8s.io/apimachinery/pkg/types" | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/kubernetes/pkg/cloudprovider" | 	"k8s.io/kubernetes/pkg/cloudprovider" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| func configFromEnv() (cfg VSphereConfig, ok bool) { | func configFromEnv() (cfg VSphereConfig, ok bool) { | ||||||
|   | |||||||
| @@ -55,8 +55,8 @@ go_test( | |||||||
|         "//pkg/client/testing/core:go_default_library", |         "//pkg/client/testing/core:go_default_library", | ||||||
|         "//pkg/controller:go_default_library", |         "//pkg/controller:go_default_library", | ||||||
|         "//pkg/controller/informers: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/apis/meta/v1", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/wait", |         "//vendor:k8s.io/apimachinery/pkg/util/wait", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|     ], |     ], | ||||||
|   | |||||||
| @@ -22,6 +22,7 @@ import ( | |||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
| 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/apimachinery/pkg/util/wait" | 	"k8s.io/apimachinery/pkg/util/wait" | ||||||
| 	"k8s.io/apimachinery/pkg/watch" | 	"k8s.io/apimachinery/pkg/watch" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| @@ -34,7 +35,6 @@ import ( | |||||||
| 	"k8s.io/kubernetes/pkg/client/testing/core" | 	"k8s.io/kubernetes/pkg/client/testing/core" | ||||||
| 	"k8s.io/kubernetes/pkg/controller" | 	"k8s.io/kubernetes/pkg/controller" | ||||||
| 	"k8s.io/kubernetes/pkg/controller/informers" | 	"k8s.io/kubernetes/pkg/controller/informers" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| var alwaysReady = func() bool { return true } | var alwaysReady = func() bool { return true } | ||||||
|   | |||||||
| @@ -65,12 +65,12 @@ go_test( | |||||||
|         "//pkg/client/testing/core:go_default_library", |         "//pkg/client/testing/core:go_default_library", | ||||||
|         "//pkg/controller:go_default_library", |         "//pkg/controller:go_default_library", | ||||||
|         "//pkg/controller/informers: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/davecgh/go-spew/spew", | ||||||
|         "//vendor:github.com/golang/glog", |         "//vendor:github.com/golang/glog", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/api/errors", |         "//vendor:k8s.io/apimachinery/pkg/api/errors", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", |         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/sets", |         "//vendor:k8s.io/apimachinery/pkg/util/sets", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|   | |||||||
| @@ -28,11 +28,11 @@ import ( | |||||||
| 	apierrors "k8s.io/apimachinery/pkg/api/errors" | 	apierrors "k8s.io/apimachinery/pkg/api/errors" | ||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/runtime/schema" | 	"k8s.io/apimachinery/pkg/runtime/schema" | ||||||
|  | 	utilrand "k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/v1" | 	"k8s.io/kubernetes/pkg/api/v1" | ||||||
| 	"k8s.io/kubernetes/pkg/client/clientset_generated/clientset/fake" | 	"k8s.io/kubernetes/pkg/client/clientset_generated/clientset/fake" | ||||||
| 	"k8s.io/kubernetes/pkg/client/testing/core" | 	"k8s.io/kubernetes/pkg/client/testing/core" | ||||||
| 	utilrand "k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| type testGenerator struct { | type testGenerator struct { | ||||||
|   | |||||||
| @@ -184,7 +184,6 @@ go_test( | |||||||
|         "//pkg/util/clock:go_default_library", |         "//pkg/util/clock:go_default_library", | ||||||
|         "//pkg/util/flowcontrol:go_default_library", |         "//pkg/util/flowcontrol:go_default_library", | ||||||
|         "//pkg/util/mount:go_default_library", |         "//pkg/util/mount:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//pkg/util/strategicpatch:go_default_library", |         "//pkg/util/strategicpatch:go_default_library", | ||||||
|         "//pkg/util/testing:go_default_library", |         "//pkg/util/testing:go_default_library", | ||||||
|         "//pkg/util/uuid: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/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//vendor:k8s.io/apimachinery/pkg/types", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/diff", |         "//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/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/sets", |         "//vendor:k8s.io/apimachinery/pkg/util/sets", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/wait", |         "//vendor:k8s.io/apimachinery/pkg/util/wait", | ||||||
|   | |||||||
| @@ -32,6 +32,7 @@ import ( | |||||||
| 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | ||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/diff" | 	"k8s.io/apimachinery/pkg/util/diff" | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/apimachinery/pkg/util/wait" | 	"k8s.io/apimachinery/pkg/util/wait" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/resource" | 	"k8s.io/kubernetes/pkg/api/resource" | ||||||
| @@ -40,7 +41,6 @@ import ( | |||||||
| 	"k8s.io/kubernetes/pkg/client/testing/core" | 	"k8s.io/kubernetes/pkg/client/testing/core" | ||||||
| 	kubecontainer "k8s.io/kubernetes/pkg/kubelet/container" | 	kubecontainer "k8s.io/kubernetes/pkg/kubelet/container" | ||||||
| 	"k8s.io/kubernetes/pkg/kubelet/util/sliceutils" | 	"k8s.io/kubernetes/pkg/kubelet/util/sliceutils" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| 	"k8s.io/kubernetes/pkg/util/strategicpatch" | 	"k8s.io/kubernetes/pkg/util/strategicpatch" | ||||||
| 	"k8s.io/kubernetes/pkg/util/uuid" | 	"k8s.io/kubernetes/pkg/util/uuid" | ||||||
| 	"k8s.io/kubernetes/pkg/version" | 	"k8s.io/kubernetes/pkg/version" | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/apps" | 	"k8s.io/kubernetes/pkg/apis/apps" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/apps/validation" | 	"k8s.io/kubernetes/pkg/apis/apps/validation" | ||||||
| @@ -35,11 +36,11 @@ import ( | |||||||
| // statefulSetStrategy implements verification logic for Replication StatefulSets. | // statefulSetStrategy implements verification logic for Replication StatefulSets. | ||||||
| type statefulSetStrategy struct { | type statefulSetStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Replication StatefulSet objects. | // 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. | // NamespaceScoped returns true because all StatefulSet' need to be within a namespace. | ||||||
| func (statefulSetStrategy) NamespaceScoped() bool { | func (statefulSetStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/autoscaling" | 	"k8s.io/kubernetes/pkg/apis/autoscaling" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/autoscaling/validation" | 	"k8s.io/kubernetes/pkg/apis/autoscaling/validation" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // autoscalerStrategy implements behavior for HorizontalPodAutoscalers | // autoscalerStrategy implements behavior for HorizontalPodAutoscalers | ||||||
| type autoscalerStrategy struct { | type autoscalerStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating HorizontalPodAutoscaler | // Strategy is the default logic that applies when creating and updating HorizontalPodAutoscaler | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = autoscalerStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = autoscalerStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for autoscaler. | // NamespaceScoped is true for autoscaler. | ||||||
| func (autoscalerStrategy) NamespaceScoped() bool { | func (autoscalerStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/batch" | 	"k8s.io/kubernetes/pkg/apis/batch" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/batch/validation" | 	"k8s.io/kubernetes/pkg/apis/batch/validation" | ||||||
| @@ -34,11 +35,11 @@ import ( | |||||||
| // scheduledJobStrategy implements verification logic for Replication Controllers. | // scheduledJobStrategy implements verification logic for Replication Controllers. | ||||||
| type scheduledJobStrategy struct { | type scheduledJobStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating CronJob objects. | // 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. | // NamespaceScoped returns true because all scheduled jobs need to be within a namespace. | ||||||
| func (scheduledJobStrategy) NamespaceScoped() bool { | func (scheduledJobStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -27,6 +27,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/batch" | 	"k8s.io/kubernetes/pkg/apis/batch" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/batch/validation" | 	"k8s.io/kubernetes/pkg/apis/batch/validation" | ||||||
| @@ -36,11 +37,11 @@ import ( | |||||||
| // jobStrategy implements verification logic for Replication Controllers. | // jobStrategy implements verification logic for Replication Controllers. | ||||||
| type jobStrategy struct { | type jobStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Replication Controller objects. | // 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. | // NamespaceScoped returns true because all jobs need to be within a namespace. | ||||||
| func (jobStrategy) NamespaceScoped() bool { | func (jobStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/certificates" | 	"k8s.io/kubernetes/pkg/apis/certificates" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/certificates/validation" | 	"k8s.io/kubernetes/pkg/apis/certificates/validation" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // csrStrategy implements behavior for CSRs | // csrStrategy implements behavior for CSRs | ||||||
| type csrStrategy struct { | type csrStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // csrStrategy is the default logic that applies when creating and updating | // csrStrategy is the default logic that applies when creating and updating | ||||||
| // CSR objects. | // CSR objects. | ||||||
| var Strategy = csrStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = csrStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for CSRs. | // NamespaceScoped is true for CSRs. | ||||||
| func (csrStrategy) NamespaceScoped() bool { | func (csrStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for ConfigMap objects | // strategy implements behavior for ConfigMap objects | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating ConfigMap | // Strategy is the default logic that applies when creating and updating ConfigMap | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // Strategy should implement rest.RESTCreateStrategy | // Strategy should implement rest.RESTCreateStrategy | ||||||
| var _ rest.RESTCreateStrategy = Strategy | var _ rest.RESTCreateStrategy = Strategy | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -27,6 +27,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| @@ -38,11 +39,11 @@ import ( | |||||||
| // rcStrategy implements verification logic for Replication Controllers. | // rcStrategy implements verification logic for Replication Controllers. | ||||||
| type rcStrategy struct { | type rcStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Replication Controller objects. | // 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 | // DefaultGarbageCollectionPolicy returns Orphan because that was the default | ||||||
| // behavior before the server-side garbage collection was implemented. | // behavior before the server-side garbage collection was implemented. | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	endptspkg "k8s.io/kubernetes/pkg/api/endpoints" | 	endptspkg "k8s.io/kubernetes/pkg/api/endpoints" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // endpointsStrategy implements behavior for Endpoints | // endpointsStrategy implements behavior for Endpoints | ||||||
| type endpointsStrategy struct { | type endpointsStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Endpoint | // Strategy is the default logic that applies when creating and updating Endpoint | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = endpointsStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = endpointsStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for endpoints. | // NamespaceScoped is true for endpoints. | ||||||
| func (endpointsStrategy) NamespaceScoped() bool { | func (endpointsStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -32,12 +33,12 @@ import ( | |||||||
|  |  | ||||||
| type eventStrategy struct { | type eventStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that pplies when creating and updating | // Strategy is the default logic that pplies when creating and updating | ||||||
| // Event objects via the REST API. | // Event objects via the REST API. | ||||||
| var Strategy = eventStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = eventStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (eventStrategy) NamespaceScoped() bool { | func (eventStrategy) NamespaceScoped() bool { | ||||||
| 	return true | 	return true | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -32,12 +33,12 @@ import ( | |||||||
|  |  | ||||||
| type limitrangeStrategy struct { | type limitrangeStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating | // Strategy is the default logic that applies when creating and updating | ||||||
| // LimitRange objects via the REST API. | // LimitRange objects via the REST API. | ||||||
| var Strategy = limitrangeStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = limitrangeStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (limitrangeStrategy) NamespaceScoped() bool { | func (limitrangeStrategy) NamespaceScoped() bool { | ||||||
| 	return true | 	return true | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // namespaceStrategy implements behavior for Namespaces | // namespaceStrategy implements behavior for Namespaces | ||||||
| type namespaceStrategy struct { | type namespaceStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Namespace | // Strategy is the default logic that applies when creating and updating Namespace | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = namespaceStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = namespaceStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is false for namespaces. | // NamespaceScoped is false for namespaces. | ||||||
| func (namespaceStrategy) NamespaceScoped() bool { | func (namespaceStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -33,6 +33,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ import ( | |||||||
| 	utilnet "k8s.io/apimachinery/pkg/util/net" | 	utilnet "k8s.io/apimachinery/pkg/util/net" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -41,12 +42,12 @@ import ( | |||||||
| // nodeStrategy implements behavior for nodes | // nodeStrategy implements behavior for nodes | ||||||
| type nodeStrategy struct { | type nodeStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Nodes is the default logic that applies when creating and updating Node | // Nodes is the default logic that applies when creating and updating Node | ||||||
| // objects. | // objects. | ||||||
| var Strategy = nodeStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = nodeStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is false for nodes. | // NamespaceScoped is false for nodes. | ||||||
| func (nodeStrategy) NamespaceScoped() bool { | func (nodeStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // persistentvolumeStrategy implements behavior for PersistentVolume objects | // persistentvolumeStrategy implements behavior for PersistentVolume objects | ||||||
| type persistentvolumeStrategy struct { | type persistentvolumeStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating PersistentVolume | // Strategy is the default logic that applies when creating and updating PersistentVolume | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = persistentvolumeStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = persistentvolumeStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (persistentvolumeStrategy) NamespaceScoped() bool { | func (persistentvolumeStrategy) NamespaceScoped() bool { | ||||||
| 	return false | 	return false | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // persistentvolumeclaimStrategy implements behavior for PersistentVolumeClaim objects | // persistentvolumeclaimStrategy implements behavior for PersistentVolumeClaim objects | ||||||
| type persistentvolumeclaimStrategy struct { | type persistentvolumeclaimStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating PersistentVolumeClaim | // Strategy is the default logic that applies when creating and updating PersistentVolumeClaim | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = persistentvolumeclaimStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = persistentvolumeclaimStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (persistentvolumeclaimStrategy) NamespaceScoped() bool { | func (persistentvolumeclaimStrategy) NamespaceScoped() bool { | ||||||
| 	return true | 	return true | ||||||
|   | |||||||
| @@ -31,6 +31,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/net", |         "//vendor:k8s.io/apimachinery/pkg/util/net", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -33,6 +33,7 @@ import ( | |||||||
| 	utilnet "k8s.io/apimachinery/pkg/util/net" | 	utilnet "k8s.io/apimachinery/pkg/util/net" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -45,12 +46,12 @@ import ( | |||||||
| // podStrategy implements behavior for Pods | // podStrategy implements behavior for Pods | ||||||
| type podStrategy struct { | type podStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Pod | // Strategy is the default logic that applies when creating and updating Pod | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = podStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = podStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for pods. | // NamespaceScoped is true for pods. | ||||||
| func (podStrategy) NamespaceScoped() bool { | func (podStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -32,12 +33,12 @@ import ( | |||||||
| // podTemplateStrategy implements behavior for PodTemplates | // podTemplateStrategy implements behavior for PodTemplates | ||||||
| type podTemplateStrategy struct { | type podTemplateStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating PodTemplate | // Strategy is the default logic that applies when creating and updating PodTemplate | ||||||
| // objects via the REST API. | // 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. | // NamespaceScoped is true for pod templates. | ||||||
| func (podTemplateStrategy) NamespaceScoped() bool { | func (podTemplateStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // resourcequotaStrategy implements behavior for ResourceQuota objects | // resourcequotaStrategy implements behavior for ResourceQuota objects | ||||||
| type resourcequotaStrategy struct { | type resourcequotaStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating ResourceQuota | // Strategy is the default logic that applies when creating and updating ResourceQuota | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = resourcequotaStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = resourcequotaStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for resourcequotas. | // NamespaceScoped is true for resourcequotas. | ||||||
| func (resourcequotaStrategy) NamespaceScoped() bool { | func (resourcequotaStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| @@ -35,12 +36,12 @@ import ( | |||||||
| // strategy implements behavior for Secret objects | // strategy implements behavior for Secret objects | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Secret | // Strategy is the default logic that applies when creating and updating Secret | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| var _ = rest.RESTCreateStrategy(Strategy) | var _ = rest.RESTCreateStrategy(Strategy) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -42,6 +42,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // svcStrategy implements behavior for Services | // svcStrategy implements behavior for Services | ||||||
| type svcStrategy struct { | type svcStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Services is the default logic that applies when creating and updating Service | // Services is the default logic that applies when creating and updating Service | ||||||
| // objects. | // objects. | ||||||
| var Strategy = svcStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = svcStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // NamespaceScoped is true for services. | // NamespaceScoped is true for services. | ||||||
| func (svcStrategy) NamespaceScoped() bool { | func (svcStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/validation" | 	"k8s.io/kubernetes/pkg/api/validation" | ||||||
| 	"k8s.io/kubernetes/pkg/fields" | 	"k8s.io/kubernetes/pkg/fields" | ||||||
| @@ -33,12 +34,12 @@ import ( | |||||||
| // strategy implements behavior for ServiceAccount objects | // strategy implements behavior for ServiceAccount objects | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating ServiceAccount | // Strategy is the default logic that applies when creating and updating ServiceAccount | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (strategy) NamespaceScoped() bool { | func (strategy) NamespaceScoped() bool { | ||||||
| 	return true | 	return true | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | ||||||
| @@ -35,11 +36,11 @@ import ( | |||||||
| // daemonSetStrategy implements verification logic for daemon sets. | // daemonSetStrategy implements verification logic for daemon sets. | ||||||
| type daemonSetStrategy struct { | type daemonSetStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating DaemonSet objects. | // 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. | // NamespaceScoped returns true because all DaemonSets need to be within a namespace. | ||||||
| func (daemonSetStrategy) NamespaceScoped() bool { | func (daemonSetStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| @@ -39,12 +40,12 @@ import ( | |||||||
| // deploymentStrategy implements behavior for Deployments. | // deploymentStrategy implements behavior for Deployments. | ||||||
| type deploymentStrategy struct { | type deploymentStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Deployment | // Strategy is the default logic that applies when creating and updating Deployment | ||||||
| // objects via the REST API. | // 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 | // DefaultGarbageCollectionPolicy returns Orphan because that's the default | ||||||
| // behavior before the server-side garbage collection is implemented. | // behavior before the server-side garbage collection is implemented. | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | ||||||
| @@ -35,11 +36,11 @@ import ( | |||||||
| // ingressStrategy implements verification logic for Replication Ingresss. | // ingressStrategy implements verification logic for Replication Ingresss. | ||||||
| type ingressStrategy struct { | type ingressStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating Replication Ingress objects. | // 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. | // NamespaceScoped returns true because all Ingress' need to be within a namespace. | ||||||
| func (ingressStrategy) NamespaceScoped() bool { | func (ingressStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | 	"k8s.io/kubernetes/pkg/apis/extensions/validation" | ||||||
| @@ -35,11 +36,11 @@ import ( | |||||||
| // networkPolicyStrategy implements verification logic for NetworkPolicys. | // networkPolicyStrategy implements verification logic for NetworkPolicys. | ||||||
| type networkPolicyStrategy struct { | type networkPolicyStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating NetworkPolicy objects. | // 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. | // NamespaceScoped returns true because all NetworkPolicys need to be within a namespace. | ||||||
| func (networkPolicyStrategy) NamespaceScoped() bool { | func (networkPolicyStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| @@ -35,12 +36,12 @@ import ( | |||||||
| // strategy implements behavior for PodSecurityPolicy objects | // strategy implements behavior for PodSecurityPolicy objects | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating PodSecurityPolicy | // Strategy is the default logic that applies when creating and updating PodSecurityPolicy | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| var _ = rest.RESTCreateStrategy(Strategy) | var _ = rest.RESTCreateStrategy(Strategy) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -30,6 +30,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -27,6 +27,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| @@ -39,11 +40,11 @@ import ( | |||||||
| // rsStrategy implements verification logic for ReplicaSets. | // rsStrategy implements verification logic for ReplicaSets. | ||||||
| type rsStrategy struct { | type rsStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating ReplicaSet objects. | // 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 | // DefaultGarbageCollectionPolicy returns Orphan because that's the default | ||||||
| // behavior before the server-side garbage collection is implemented. | // behavior before the server-side garbage collection is implemented. | ||||||
|   | |||||||
| @@ -37,6 +37,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/yaml", |         "//vendor:k8s.io/apimachinery/pkg/util/yaml", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/extensions" | 	"k8s.io/kubernetes/pkg/apis/extensions" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for ThirdPartyResource objects | // strategy implements behavior for ThirdPartyResource objects | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating ThirdPartyResource | // Strategy is the default logic that applies when creating and updating ThirdPartyResource | ||||||
| // objects via the REST API. | // objects via the REST API. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| var _ = rest.RESTCreateStrategy(Strategy) | var _ = rest.RESTCreateStrategy(Strategy) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -74,6 +74,7 @@ go_test( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/wait", |         "//vendor:k8s.io/apimachinery/pkg/util/wait", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -35,6 +35,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	"k8s.io/apimachinery/pkg/util/wait" | 	"k8s.io/apimachinery/pkg/util/wait" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/api/testapi" | 	"k8s.io/kubernetes/pkg/api/testapi" | ||||||
| @@ -68,7 +69,7 @@ func (t *testOrphanDeleteStrategy) DefaultGarbageCollectionPolicy() rest.Garbage | |||||||
|  |  | ||||||
| type testRESTStrategy struct { | type testRESTStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| 	namespaceScoped          bool | 	namespaceScoped          bool | ||||||
| 	allowCreateOnUpdate      bool | 	allowCreateOnUpdate      bool | ||||||
| 	allowUnconditionalUpdate bool | 	allowUnconditionalUpdate bool | ||||||
| @@ -640,7 +641,7 @@ func TestGracefulStoreCanDeleteIfExistingGracePeriodZero(t *testing.T) { | |||||||
| 	testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") | 	testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") | ||||||
| 	destroyFunc, registry := NewTestGenericStoreRegistry(t) | 	destroyFunc, registry := NewTestGenericStoreRegistry(t) | ||||||
| 	registry.EnableGarbageCollection = false | 	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} | 	registry.DeleteStrategy = testGracefulStrategy{defaultDeleteStrategy} | ||||||
| 	defer destroyFunc() | 	defer destroyFunc() | ||||||
|  |  | ||||||
| @@ -666,7 +667,7 @@ func TestGracefulStoreHandleFinalizers(t *testing.T) { | |||||||
| 	testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") | 	testContext := genericapirequest.WithNamespace(genericapirequest.NewContext(), "test") | ||||||
| 	destroyFunc, registry := NewTestGenericStoreRegistry(t) | 	destroyFunc, registry := NewTestGenericStoreRegistry(t) | ||||||
| 	registry.EnableGarbageCollection = true | 	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} | 	registry.DeleteStrategy = testGracefulStrategy{defaultDeleteStrategy} | ||||||
| 	defer destroyFunc() | 	defer destroyFunc() | ||||||
| 	// create pod | 	// create pod | ||||||
| @@ -823,7 +824,7 @@ func TestStoreDeleteWithOrphanDependents(t *testing.T) { | |||||||
| 	nilOrphanOptions := &api.DeleteOptions{} | 	nilOrphanOptions := &api.DeleteOptions{} | ||||||
|  |  | ||||||
| 	// defaultDeleteStrategy doesn't implement rest.GarbageCollectionDeleteStrategy. | 	// 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 | 	// orphanDeleteStrategy indicates the default garbage collection policy is | ||||||
| 	// to orphan dependentes. | 	// to orphan dependentes. | ||||||
| 	orphanDeleteStrategy := &testOrphanDeleteStrategy{defaultDeleteStrategy} | 	orphanDeleteStrategy := &testOrphanDeleteStrategy{defaultDeleteStrategy} | ||||||
| @@ -1233,7 +1234,7 @@ func TestStoreWatch(t *testing.T) { | |||||||
| func newTestGenericStoreRegistry(t *testing.T, hasCacheEnabled bool) (factory.DestroyFunc, *Store) { | func newTestGenericStoreRegistry(t *testing.T, hasCacheEnabled bool) (factory.DestroyFunc, *Store) { | ||||||
| 	podPrefix := "/pods" | 	podPrefix := "/pods" | ||||||
| 	server, sc := etcdtesting.NewUnsecuredEtcd3TestClientServer(t) | 	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() | 	sc.Codec = testapi.Default.StorageCodec() | ||||||
| 	s, dFunc, err := factory.Create(*sc) | 	s, dFunc, err := factory.Create(*sc) | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -24,6 +24,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/policy" | 	"k8s.io/kubernetes/pkg/apis/policy" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/policy/validation" | 	"k8s.io/kubernetes/pkg/apis/policy/validation" | ||||||
| @@ -35,11 +36,11 @@ import ( | |||||||
| // podDisruptionBudgetStrategy implements verification logic for PodDisruptionBudgets. | // podDisruptionBudgetStrategy implements verification logic for PodDisruptionBudgets. | ||||||
| type podDisruptionBudgetStrategy struct { | type podDisruptionBudgetStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating PodDisruptionBudget objects. | // 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. | // NamespaceScoped returns true because all PodDisruptionBudget' need to be within a namespace. | ||||||
| func (podDisruptionBudgetStrategy) NamespaceScoped() bool { | func (podDisruptionBudgetStrategy) NamespaceScoped() bool { | ||||||
|   | |||||||
| @@ -28,6 +28,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/rbac" | 	"k8s.io/kubernetes/pkg/apis/rbac" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for ClusterRoles | // strategy implements behavior for ClusterRoles | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // strategy is the default logic that applies when creating and updating | // strategy is the default logic that applies when creating and updating | ||||||
| // ClusterRole objects. | // ClusterRole objects. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // Strategy should implement rest.RESTCreateStrategy | // Strategy should implement rest.RESTCreateStrategy | ||||||
| var _ rest.RESTCreateStrategy = Strategy | var _ rest.RESTCreateStrategy = Strategy | ||||||
|   | |||||||
| @@ -28,6 +28,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/rbac" | 	"k8s.io/kubernetes/pkg/apis/rbac" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for ClusterRoleBindings | // strategy implements behavior for ClusterRoleBindings | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // strategy is the default logic that applies when creating and updating | // strategy is the default logic that applies when creating and updating | ||||||
| // ClusterRoleBinding objects. | // ClusterRoleBinding objects. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // Strategy should implement rest.RESTCreateStrategy | // Strategy should implement rest.RESTCreateStrategy | ||||||
| var _ rest.RESTCreateStrategy = Strategy | var _ rest.RESTCreateStrategy = Strategy | ||||||
|   | |||||||
| @@ -28,6 +28,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/rbac" | 	"k8s.io/kubernetes/pkg/apis/rbac" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for Roles | // strategy implements behavior for Roles | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // strategy is the default logic that applies when creating and updating | // strategy is the default logic that applies when creating and updating | ||||||
| // Role objects. | // Role objects. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // Strategy should implement rest.RESTCreateStrategy | // Strategy should implement rest.RESTCreateStrategy | ||||||
| var _ rest.RESTCreateStrategy = Strategy | var _ rest.RESTCreateStrategy = Strategy | ||||||
|   | |||||||
| @@ -28,6 +28,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/rest" | 	"k8s.io/kubernetes/pkg/api/rest" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/rbac" | 	"k8s.io/kubernetes/pkg/apis/rbac" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // strategy implements behavior for RoleBindings | // strategy implements behavior for RoleBindings | ||||||
| type strategy struct { | type strategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // strategy is the default logic that applies when creating and updating | // strategy is the default logic that applies when creating and updating | ||||||
| // RoleBinding objects. | // RoleBinding objects. | ||||||
| var Strategy = strategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = strategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| // Strategy should implement rest.RESTCreateStrategy | // Strategy should implement rest.RESTCreateStrategy | ||||||
| var _ rest.RESTCreateStrategy = Strategy | var _ rest.RESTCreateStrategy = Strategy | ||||||
|   | |||||||
| @@ -26,6 +26,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime", |         "//vendor:k8s.io/apimachinery/pkg/runtime", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", |         "//vendor:k8s.io/apimachinery/pkg/util/validation/field", | ||||||
|         "//vendor:k8s.io/apiserver/pkg/request", |         "//vendor:k8s.io/apiserver/pkg/request", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -23,6 +23,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime" | 	"k8s.io/apimachinery/pkg/runtime" | ||||||
| 	"k8s.io/apimachinery/pkg/util/validation/field" | 	"k8s.io/apimachinery/pkg/util/validation/field" | ||||||
| 	genericapirequest "k8s.io/apiserver/pkg/request" | 	genericapirequest "k8s.io/apiserver/pkg/request" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/storage" | 	"k8s.io/kubernetes/pkg/apis/storage" | ||||||
| 	"k8s.io/kubernetes/pkg/apis/storage/validation" | 	"k8s.io/kubernetes/pkg/apis/storage/validation" | ||||||
| @@ -34,12 +35,12 @@ import ( | |||||||
| // storageClassStrategy implements behavior for StorageClass objects | // storageClassStrategy implements behavior for StorageClass objects | ||||||
| type storageClassStrategy struct { | type storageClassStrategy struct { | ||||||
| 	runtime.ObjectTyper | 	runtime.ObjectTyper | ||||||
| 	api.NameGenerator | 	names.NameGenerator | ||||||
| } | } | ||||||
|  |  | ||||||
| // Strategy is the default logic that applies when creating and updating | // Strategy is the default logic that applies when creating and updating | ||||||
| // StorageClass objects via the REST API. | // StorageClass objects via the REST API. | ||||||
| var Strategy = storageClassStrategy{api.Scheme, api.SimpleNameGenerator} | var Strategy = storageClassStrategy{api.Scheme, names.SimpleNameGenerator} | ||||||
|  |  | ||||||
| func (storageClassStrategy) NamespaceScoped() bool { | func (storageClassStrategy) NamespaceScoped() bool { | ||||||
| 	return false | 	return false | ||||||
|   | |||||||
| @@ -5,19 +5,11 @@ licenses(["notice"]) | |||||||
| load( | load( | ||||||
|     "@io_bazel_rules_go//go:def.bzl", |     "@io_bazel_rules_go//go:def.bzl", | ||||||
|     "go_library", |     "go_library", | ||||||
|     "go_test", |  | ||||||
| ) | ) | ||||||
|  |  | ||||||
| go_library( | go_library( | ||||||
|     name = "go_default_library", |     name = "go_default_library", | ||||||
|     srcs = ["rand.go"], |     srcs = ["doc.go"], | ||||||
|     tags = ["automanaged"], |  | ||||||
| ) |  | ||||||
|  |  | ||||||
| go_test( |  | ||||||
|     name = "go_default_test", |  | ||||||
|     srcs = ["rand_test.go"], |  | ||||||
|     library = ":go_default_library", |  | ||||||
|     tags = ["automanaged"], |     tags = ["automanaged"], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										21
									
								
								pkg/util/rand/doc.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								pkg/util/rand/doc.go
									
									
									
									
									
										Normal file
									
								
							| @@ -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 | ||||||
| @@ -12,7 +12,7 @@ go_library( | |||||||
|     name = "go_default_library", |     name = "go_default_library", | ||||||
|     srcs = ["slice.go"], |     srcs = ["slice.go"], | ||||||
|     tags = ["automanaged"], |     tags = ["automanaged"], | ||||||
|     deps = ["//pkg/util/rand:go_default_library"], |     deps = ["//vendor:k8s.io/apimachinery/pkg/util/rand"], | ||||||
| ) | ) | ||||||
|  |  | ||||||
| go_test( | go_test( | ||||||
|   | |||||||
| @@ -20,7 +20,7 @@ package slice | |||||||
| import ( | import ( | ||||||
| 	"sort" | 	"sort" | ||||||
|  |  | ||||||
| 	utilrand "k8s.io/kubernetes/pkg/util/rand" | 	utilrand "k8s.io/apimachinery/pkg/util/rand" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| // CopyStrings copies the contents of the specified string slice | // CopyStrings copies the contents of the specified string slice | ||||||
|   | |||||||
| @@ -22,13 +22,13 @@ go_library( | |||||||
|         "//pkg/api/v1:go_default_library", |         "//pkg/api/v1:go_default_library", | ||||||
|         "//pkg/util/env:go_default_library", |         "//pkg/util/env:go_default_library", | ||||||
|         "//pkg/util/mount:go_default_library", |         "//pkg/util/mount:go_default_library", | ||||||
|         "//pkg/util/rand:go_default_library", |  | ||||||
|         "//pkg/util/strings:go_default_library", |         "//pkg/util/strings:go_default_library", | ||||||
|         "//pkg/volume:go_default_library", |         "//pkg/volume:go_default_library", | ||||||
|         "//pkg/volume/util:go_default_library", |         "//pkg/volume/util:go_default_library", | ||||||
|         "//vendor:github.com/clusterhq/flocker-go", |         "//vendor:github.com/clusterhq/flocker-go", | ||||||
|         "//vendor:github.com/golang/glog", |         "//vendor:github.com/golang/glog", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/types", |         "//vendor:k8s.io/apimachinery/pkg/types", | ||||||
|  |         "//vendor:k8s.io/apimachinery/pkg/util/rand", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -20,8 +20,8 @@ import ( | |||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"time" | 	"time" | ||||||
|  |  | ||||||
|  | 	"k8s.io/apimachinery/pkg/util/rand" | ||||||
| 	"k8s.io/kubernetes/pkg/api/v1" | 	"k8s.io/kubernetes/pkg/api/v1" | ||||||
| 	"k8s.io/kubernetes/pkg/util/rand" |  | ||||||
| 	"k8s.io/kubernetes/pkg/volume" | 	"k8s.io/kubernetes/pkg/volume" | ||||||
|  |  | ||||||
| 	flockerapi "github.com/clusterhq/flocker-go" | 	flockerapi "github.com/clusterhq/flocker-go" | ||||||
|   | |||||||
| @@ -31,6 +31,7 @@ go_library( | |||||||
|         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", |         "//vendor:k8s.io/apimachinery/pkg/runtime/schema", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/util/sets", |         "//vendor:k8s.io/apimachinery/pkg/util/sets", | ||||||
|         "//vendor:k8s.io/apimachinery/pkg/watch", |         "//vendor:k8s.io/apimachinery/pkg/watch", | ||||||
|  |         "//vendor:k8s.io/apiserver/pkg/storage/names", | ||||||
|     ], |     ], | ||||||
| ) | ) | ||||||
|  |  | ||||||
|   | |||||||
| @@ -29,6 +29,7 @@ import ( | |||||||
| 	"k8s.io/apimachinery/pkg/runtime/schema" | 	"k8s.io/apimachinery/pkg/runtime/schema" | ||||||
| 	"k8s.io/apimachinery/pkg/util/sets" | 	"k8s.io/apimachinery/pkg/util/sets" | ||||||
| 	"k8s.io/apimachinery/pkg/watch" | 	"k8s.io/apimachinery/pkg/watch" | ||||||
|  | 	"k8s.io/apiserver/pkg/storage/names" | ||||||
| 	"k8s.io/kubernetes/pkg/admission" | 	"k8s.io/kubernetes/pkg/admission" | ||||||
| 	"k8s.io/kubernetes/pkg/api" | 	"k8s.io/kubernetes/pkg/api" | ||||||
| 	"k8s.io/kubernetes/pkg/api/v1" | 	"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 | 		// Try naming the volume the same as the serviceAccountToken, and uniquify if needed | ||||||
| 		tokenVolumeName = serviceAccountToken | 		tokenVolumeName = serviceAccountToken | ||||||
| 		if allVolumeNames.Has(tokenVolumeName) { | 		if allVolumeNames.Has(tokenVolumeName) { | ||||||
| 			tokenVolumeName = api.SimpleNameGenerator.GenerateName(fmt.Sprintf("%s-", serviceAccountToken)) | 			tokenVolumeName = names.SimpleNameGenerator.GenerateName(fmt.Sprintf("%s-", serviceAccountToken)) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|   | |||||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user
	 Kubernetes Submit Queue
					Kubernetes Submit Queue