Merge pull request #108717 from lavalamp/remove-clustername

Remove ClusterName
This commit is contained in:
Kubernetes Prow Robot 2022-03-23 22:31:33 -07:00 committed by GitHub
commit bb67b5e9e8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
179 changed files with 335 additions and 1306 deletions

View File

@ -30,6 +30,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Duration,Du
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Object
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,MicroTime,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,ObjectMeta,ZZZ_DeprecatedClusterName
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding

View File

@ -30,6 +30,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Duration,Du
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Object
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,MicroTime,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,ObjectMeta,ZZZ_DeprecatedClusterName
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding

View File

@ -30,6 +30,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Duration,Du
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Object
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,MicroTime,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,ObjectMeta,ZZZ_DeprecatedClusterName
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding

View File

@ -31,6 +31,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Duration,Du
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Object
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,MicroTime,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,ObjectMeta,ZZZ_DeprecatedClusterName
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding

View File

@ -433,6 +433,7 @@ API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Duration,Du
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Object
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,InternalEvent,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,MicroTime,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,ObjectMeta,ZZZ_DeprecatedClusterName
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,StatusCause,Type
API rule violation: names_match,k8s.io/apimachinery/pkg/apis/meta/v1,Time,Time
API rule violation: names_match,k8s.io/apimachinery/pkg/runtime,Unknown,ContentEncoding

View File

@ -16629,7 +16629,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -7142,7 +7142,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -901,7 +901,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1185,7 +1185,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -4599,7 +4599,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -275,7 +275,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -555,7 +555,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -647,7 +647,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1182,7 +1182,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1096,7 +1096,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1173,7 +1173,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -3825,7 +3825,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -3632,7 +3632,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -686,7 +686,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -583,7 +583,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -734,7 +734,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -724,7 +724,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -685,7 +685,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -685,7 +685,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1071,7 +1071,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1071,7 +1071,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -660,7 +660,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1186,7 +1186,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -639,7 +639,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -639,7 +639,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -733,7 +733,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -1183,7 +1183,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -958,7 +958,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -566,7 +566,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -2175,7 +2175,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -626,7 +626,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -626,7 +626,7 @@
"type": "object"
},
"clusterName": {
"description": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"description": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"type": "string"
},
"creationTimestamp": {

View File

@ -180,6 +180,7 @@ func fuzzObject(t *testing.T, gvk schema.GroupVersionKind) runtime.Object {
c.FuzzNoCustom(s)
s.ManagedFields = nil
s.SelfLink = ""
s.ZZZ_DeprecatedClusterName = ""
},
).Fuzz(internalObj)

View File

@ -287,9 +287,6 @@ var ValidateServiceAccountName = apimachineryvalidation.ValidateServiceAccountNa
// trailing dashes are allowed.
var ValidateEndpointsName = apimachineryvalidation.NameIsDNSSubdomain
// ValidateClusterName can be used to check whether the given cluster name is valid.
var ValidateClusterName = apimachineryvalidation.ValidateClusterName
// ValidateClassName can be used to check whether the given class name is valid.
// It is defined here to avoid import cycle between pkg/apis/storage/validation
// (where it should be) and this file.

View File

@ -1360,7 +1360,7 @@ func testValidatePVC(t *testing.T, ephemeral bool) {
isExpectedFailure: ephemeral,
claim: func() *core.PersistentVolumeClaim {
claim := testVolumeClaim(goodName, goodNS, goodClaimSpec)
claim.ClusterName = "foo"
claim.ZZZ_DeprecatedClusterName = "foo"
return claim
}(),
},

View File

@ -99,8 +99,8 @@ func TestValidateRuntimeUpdate(t *testing.T) {
old: old,
new: node.RuntimeClass{
ObjectMeta: metav1.ObjectMeta{
Name: "empty",
ClusterName: "somethingelse", // immutable
Name: "empty",
Namespace: "somethingelse", // immutable
},
Handler: "bar",
},

View File

@ -44966,7 +44966,7 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
},
"clusterName": {
SchemaProps: spec.SchemaProps{
Description: "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
Description: "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
Type: []string{"string"},
Format: "",
},

View File

@ -1460,11 +1460,11 @@ func TestDropNonEphemeralContainerUpdates(t *testing.T) {
},
newPod: &api.Pod{
ObjectMeta: metav1.ObjectMeta{
Name: "test-pod",
Namespace: "test-ns",
ResourceVersion: "1",
Annotations: map[string]string{"foo": "bar", "whiz": "pop"},
ClusterName: "milo",
Name: "test-pod",
Namespace: "test-ns",
ResourceVersion: "1",
Annotations: map[string]string{"foo": "bar", "whiz": "pop"},
ZZZ_DeprecatedClusterName: "milo",
},
Spec: api.PodSpec{
Containers: []api.Container{

View File

@ -190,7 +190,7 @@ func TestNewMetadataFields(t *testing.T) {
objMeta.Annotations = nil
objMeta.OwnerReferences = nil
objMeta.Finalizers = nil
objMeta.ClusterName = ""
objMeta.ZZZ_DeprecatedClusterName = ""
objMeta.ManagedFields = nil
if !reflect.DeepEqual(metav1.ObjectMeta{}, objMeta) {

View File

@ -374,7 +374,7 @@ func TestPriorityQueue_Update(t *testing.T) {
t.Error("Expected unschedulableQ to be 1.")
}
updatedPod := medPriorityPodInfo.Pod.DeepCopy()
updatedPod.ClusterName = "test"
updatedPod.Annotations["foo"] = "test"
q.Update(medPriorityPodInfo.Pod, updatedPod)
rawPodInfo, err = q.podBackoffQ.Pop()
podGotFromBackoffQ = rawPodInfo.(*framework.QueuedPodInfo).Pod
@ -389,7 +389,7 @@ func TestPriorityQueue_Update(t *testing.T) {
t.Error("Expected unschedulableQ to be 1.")
}
updatedPod = medPriorityPodInfo.Pod.DeepCopy()
updatedPod.ClusterName = "test1"
updatedPod.Annotations["foo"] = "test1"
// Move clock by podInitialBackoffDuration, so that pods in the unschedulableQ would pass the backing off,
// and the pods will be moved into activeQ.
c.Step(q.podInitialBackoffDuration)

View File

@ -2397,7 +2397,7 @@ func schema_pkg_apis_meta_v1_ObjectMeta(ref common.ReferenceCallback) common.Ope
},
"clusterName": {
SchemaProps: spec.SchemaProps{
Description: "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
Description: "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
Type: []string{"string"},
Format: "",
},

View File

@ -130,7 +130,7 @@ func AsPartialObjectMetadata(m metav1.Object) *metav1.PartialObjectMetadata {
Annotations: m.GetAnnotations(),
OwnerReferences: m.GetOwnerReferences(),
Finalizers: m.GetFinalizers(),
ClusterName: m.GetClusterName(),
ZZZ_DeprecatedClusterName: m.GetZZZ_DeprecatedClusterName(),
ManagedFields: m.GetManagedFields(),
},
}

View File

@ -40,8 +40,8 @@ var BannedOwners = map[schema.GroupVersionKind]struct{}{
{Group: "", Version: "v1", Kind: "Event"}: {},
}
// ValidateClusterName can be used to check whether the given cluster name is valid.
var ValidateClusterName = NameIsDNS1035Label
// ValidateZZZ_DeprecatedClusterName can be used to check whether the given cluster name is valid.
var ValidateZZZ_DeprecatedClusterName = NameIsDNS1035Label
// ValidateAnnotations validates that a set of annotations are correctly defined.
func ValidateAnnotations(annotations map[string]string, fldPath *field.Path) field.ErrorList {
@ -184,9 +184,9 @@ func ValidateObjectMetaAccessor(meta metav1.Object, requiresNamespace bool, name
allErrs = append(allErrs, field.Forbidden(fldPath.Child("namespace"), "not allowed on this type"))
}
}
if len(meta.GetClusterName()) != 0 {
for _, msg := range ValidateClusterName(meta.GetClusterName(), false) {
allErrs = append(allErrs, field.Invalid(fldPath.Child("clusterName"), meta.GetClusterName(), msg))
if len(meta.GetZZZ_DeprecatedClusterName()) != 0 {
for _, msg := range ValidateZZZ_DeprecatedClusterName(meta.GetZZZ_DeprecatedClusterName(), false) {
allErrs = append(allErrs, field.Invalid(fldPath.Child("clusterName"), meta.GetZZZ_DeprecatedClusterName(), msg))
}
}
@ -261,7 +261,7 @@ func ValidateObjectMetaAccessorUpdate(newMeta, oldMeta metav1.Object, fldPath *f
allErrs = append(allErrs, ValidateImmutableField(newMeta.GetCreationTimestamp(), oldMeta.GetCreationTimestamp(), fldPath.Child("creationTimestamp"))...)
allErrs = append(allErrs, ValidateImmutableField(newMeta.GetDeletionTimestamp(), oldMeta.GetDeletionTimestamp(), fldPath.Child("deletionTimestamp"))...)
allErrs = append(allErrs, ValidateImmutableField(newMeta.GetDeletionGracePeriodSeconds(), oldMeta.GetDeletionGracePeriodSeconds(), fldPath.Child("deletionGracePeriodSeconds"))...)
allErrs = append(allErrs, ValidateImmutableField(newMeta.GetClusterName(), oldMeta.GetClusterName(), fldPath.Child("clusterName"))...)
allErrs = append(allErrs, ValidateImmutableField(newMeta.GetZZZ_DeprecatedClusterName(), oldMeta.GetZZZ_DeprecatedClusterName(), fldPath.Child("clusterName"))...)
allErrs = append(allErrs, v1validation.ValidateLabels(newMeta.GetLabels(), fldPath.Child("labels"))...)
allErrs = append(allErrs, ValidateAnnotations(newMeta.GetAnnotations(), fldPath.Child("annotations"))...)

View File

@ -1326,186 +1326,187 @@ func init() {
}
var fileDescriptor_cf52fa777ced5367 = []byte{
// 2862 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x3a, 0xcb, 0x6f, 0x24, 0x47,
0xf9, 0xee, 0x19, 0x8f, 0x3d, 0xf3, 0x8d, 0xc7, 0x8f, 0x5a, 0xef, 0xef, 0x37, 0x6b, 0x84, 0xc7,
0xe9, 0x44, 0xd1, 0x06, 0x92, 0x71, 0x76, 0x09, 0xd1, 0x66, 0x43, 0x02, 0x1e, 0xcf, 0x7a, 0xe3,
0x64, 0x1d, 0x5b, 0xe5, 0xdd, 0x05, 0x42, 0x84, 0xd2, 0xee, 0x2e, 0x8f, 0x1b, 0xf7, 0x74, 0x4f,
0xaa, 0x7a, 0xbc, 0x19, 0x38, 0x90, 0x03, 0x08, 0x90, 0x50, 0x14, 0x6e, 0x9c, 0x50, 0x22, 0xf8,
0x03, 0x10, 0x17, 0xf8, 0x03, 0x90, 0xc8, 0x31, 0x88, 0x4b, 0x24, 0xd0, 0x28, 0x31, 0x07, 0x8e,
0x88, 0xab, 0x2f, 0xa0, 0x7a, 0x74, 0x77, 0xf5, 0x3c, 0xd6, 0x3d, 0xbb, 0x4b, 0xc4, 0x6d, 0xfa,
0x7b, 0x57, 0xd5, 0x57, 0xdf, 0xab, 0x06, 0x76, 0x8e, 0xaf, 0xb1, 0xba, 0x1b, 0xac, 0x1f, 0x77,
0x0f, 0x08, 0xf5, 0x49, 0x48, 0xd8, 0xfa, 0x09, 0xf1, 0x9d, 0x80, 0xae, 0x2b, 0x84, 0xd5, 0x71,
0xdb, 0x96, 0x7d, 0xe4, 0xfa, 0x84, 0xf6, 0xd6, 0x3b, 0xc7, 0x2d, 0x0e, 0x60, 0xeb, 0x6d, 0x12,
0x5a, 0xeb, 0x27, 0x57, 0xd6, 0x5b, 0xc4, 0x27, 0xd4, 0x0a, 0x89, 0x53, 0xef, 0xd0, 0x20, 0x0c,
0xd0, 0x13, 0x92, 0xab, 0xae, 0x73, 0xd5, 0x3b, 0xc7, 0x2d, 0x0e, 0x60, 0x75, 0xce, 0x55, 0x3f,
0xb9, 0xb2, 0xf2, 0x4c, 0xcb, 0x0d, 0x8f, 0xba, 0x07, 0x75, 0x3b, 0x68, 0xaf, 0xb7, 0x82, 0x56,
0xb0, 0x2e, 0x98, 0x0f, 0xba, 0x87, 0xe2, 0x4b, 0x7c, 0x88, 0x5f, 0x52, 0xe8, 0xca, 0x58, 0x53,
0x68, 0xd7, 0x0f, 0xdd, 0x36, 0x19, 0xb4, 0x62, 0xe5, 0xf9, 0xf3, 0x18, 0x98, 0x7d, 0x44, 0xda,
0xd6, 0x20, 0x9f, 0xf9, 0xa7, 0x3c, 0x14, 0x37, 0xf6, 0xb6, 0x6f, 0xd2, 0xa0, 0xdb, 0x41, 0x6b,
0x30, 0xed, 0x5b, 0x6d, 0x52, 0x35, 0xd6, 0x8c, 0xcb, 0xa5, 0xc6, 0xdc, 0x47, 0xfd, 0xda, 0xd4,
0x69, 0xbf, 0x36, 0xfd, 0xba, 0xd5, 0x26, 0x58, 0x60, 0x90, 0x07, 0xc5, 0x13, 0x42, 0x99, 0x1b,
0xf8, 0xac, 0x9a, 0x5b, 0xcb, 0x5f, 0x2e, 0x5f, 0x7d, 0xb9, 0x9e, 0x65, 0xfd, 0x75, 0xa1, 0xe0,
0xae, 0x64, 0xdd, 0x0a, 0x68, 0xd3, 0x65, 0x76, 0x70, 0x42, 0x68, 0xaf, 0xb1, 0xa8, 0xb4, 0x14,
0x15, 0x92, 0xe1, 0x58, 0x03, 0xfa, 0x91, 0x01, 0x8b, 0x1d, 0x4a, 0x0e, 0x09, 0xa5, 0xc4, 0x51,
0xf8, 0x6a, 0x7e, 0xcd, 0x78, 0x04, 0x6a, 0xab, 0x4a, 0xed, 0xe2, 0xde, 0x80, 0x7c, 0x3c, 0xa4,
0x11, 0xfd, 0xda, 0x80, 0x15, 0x46, 0xe8, 0x09, 0xa1, 0x1b, 0x8e, 0x43, 0x09, 0x63, 0x8d, 0xde,
0xa6, 0xe7, 0x12, 0x3f, 0xdc, 0xdc, 0x6e, 0x62, 0x56, 0x9d, 0x16, 0xfb, 0xf0, 0xf5, 0x6c, 0x06,
0xed, 0x8f, 0x93, 0xd3, 0x30, 0x95, 0x45, 0x2b, 0x63, 0x49, 0x18, 0xbe, 0x8f, 0x19, 0xe6, 0x21,
0xcc, 0x45, 0x07, 0x79, 0xcb, 0x65, 0x21, 0xba, 0x0b, 0x33, 0x2d, 0xfe, 0xc1, 0xaa, 0x86, 0x30,
0xb0, 0x9e, 0xcd, 0xc0, 0x48, 0x46, 0x63, 0x5e, 0xd9, 0x33, 0x23, 0x3e, 0x19, 0x56, 0xd2, 0xcc,
0x9f, 0x4d, 0x43, 0x79, 0x63, 0x6f, 0x1b, 0x13, 0x16, 0x74, 0xa9, 0x4d, 0x32, 0x38, 0xcd, 0x35,
0x98, 0x63, 0xae, 0xdf, 0xea, 0x7a, 0x16, 0xe5, 0xd0, 0xea, 0x8c, 0xa0, 0x5c, 0x56, 0x94, 0x73,
0xfb, 0x1a, 0x0e, 0xa7, 0x28, 0xd1, 0x55, 0x00, 0x2e, 0x81, 0x75, 0x2c, 0x9b, 0x38, 0xd5, 0xdc,
0x9a, 0x71, 0xb9, 0xd8, 0x40, 0x8a, 0x0f, 0x5e, 0x8f, 0x31, 0x58, 0xa3, 0x42, 0x8f, 0x43, 0x41,
0x58, 0x5a, 0x2d, 0x0a, 0x35, 0x15, 0x45, 0x5e, 0x10, 0xcb, 0xc0, 0x12, 0x87, 0x9e, 0x82, 0x59,
0xe5, 0x65, 0xd5, 0x92, 0x20, 0x5b, 0x50, 0x64, 0xb3, 0x91, 0x1b, 0x44, 0x78, 0xbe, 0xbe, 0x63,
0xd7, 0x77, 0x84, 0xdf, 0x69, 0xeb, 0x7b, 0xcd, 0xf5, 0x1d, 0x2c, 0x30, 0xe8, 0x16, 0x14, 0x4e,
0x08, 0x3d, 0xe0, 0x9e, 0xc0, 0x5d, 0xf3, 0xcb, 0xd9, 0x36, 0xfa, 0x2e, 0x67, 0x69, 0x94, 0xb8,
0x69, 0xe2, 0x27, 0x96, 0x42, 0x50, 0x1d, 0x80, 0x1d, 0x05, 0x34, 0x14, 0xcb, 0xab, 0x16, 0xd6,
0xf2, 0x97, 0x4b, 0x8d, 0x79, 0xbe, 0xde, 0xfd, 0x18, 0x8a, 0x35, 0x0a, 0x4e, 0x6f, 0x5b, 0x21,
0x69, 0x05, 0xd4, 0x25, 0xac, 0x3a, 0x9b, 0xd0, 0x6f, 0xc6, 0x50, 0xac, 0x51, 0xa0, 0x57, 0x01,
0xb1, 0x30, 0xa0, 0x56, 0x8b, 0xa8, 0xa5, 0xbe, 0x62, 0xb1, 0xa3, 0x2a, 0x88, 0xd5, 0xad, 0xa8,
0xd5, 0xa1, 0xfd, 0x21, 0x0a, 0x3c, 0x82, 0xcb, 0xfc, 0x9d, 0x01, 0x0b, 0x9a, 0x2f, 0x08, 0xbf,
0xbb, 0x06, 0x73, 0x2d, 0xed, 0xd6, 0x29, 0xbf, 0x88, 0x4f, 0x5b, 0xbf, 0x91, 0x38, 0x45, 0x89,
0x08, 0x94, 0xa8, 0x92, 0x14, 0x45, 0x97, 0x2b, 0x99, 0x9d, 0x36, 0xb2, 0x21, 0xd1, 0xa4, 0x01,
0x19, 0x4e, 0x24, 0x9b, 0xff, 0x30, 0x84, 0x03, 0x47, 0xf1, 0x06, 0x5d, 0xd6, 0x62, 0x9a, 0x21,
0xb6, 0x6f, 0x6e, 0x4c, 0x3c, 0x3a, 0x27, 0x10, 0xe4, 0xfe, 0x27, 0x02, 0xc1, 0xf5, 0xe2, 0x2f,
0x3f, 0xa8, 0x4d, 0xbd, 0xfb, 0xb7, 0xb5, 0x29, 0xf3, 0x17, 0x06, 0xcc, 0x6d, 0x74, 0x3a, 0x5e,
0x6f, 0xb7, 0x13, 0x8a, 0x05, 0x98, 0x30, 0xe3, 0xd0, 0x1e, 0xee, 0xfa, 0x6a, 0xa1, 0xc0, 0xef,
0x77, 0x53, 0x40, 0xb0, 0xc2, 0xf0, 0xfb, 0x73, 0x18, 0x50, 0x9b, 0xa8, 0xeb, 0x16, 0xdf, 0x9f,
0x2d, 0x0e, 0xc4, 0x12, 0xc7, 0x0f, 0xf9, 0xd0, 0x25, 0x9e, 0xb3, 0x63, 0xf9, 0x56, 0x8b, 0x50,
0x75, 0x39, 0xe2, 0xad, 0xdf, 0xd2, 0x70, 0x38, 0x45, 0x69, 0xfe, 0x3b, 0x07, 0xa5, 0xcd, 0xc0,
0x77, 0xdc, 0x50, 0x5d, 0xae, 0xb0, 0xd7, 0x19, 0x0a, 0x1e, 0xb7, 0x7b, 0x1d, 0x82, 0x05, 0x06,
0xbd, 0x00, 0x33, 0x2c, 0xb4, 0xc2, 0x2e, 0x13, 0xf6, 0x94, 0x1a, 0x8f, 0x45, 0x61, 0x69, 0x5f,
0x40, 0xcf, 0xfa, 0xb5, 0x85, 0x58, 0x9c, 0x04, 0x61, 0xc5, 0xc0, 0x3d, 0x3d, 0x38, 0x10, 0x1b,
0xe5, 0xdc, 0x94, 0x69, 0x2f, 0xca, 0x1f, 0xf9, 0xc4, 0xd3, 0x77, 0x87, 0x28, 0xf0, 0x08, 0x2e,
0x74, 0x02, 0xc8, 0xb3, 0x58, 0x78, 0x9b, 0x5a, 0x3e, 0x13, 0xba, 0x6e, 0xbb, 0x6d, 0xa2, 0x2e,
0xfc, 0x97, 0xb2, 0x9d, 0x38, 0xe7, 0x48, 0xf4, 0xde, 0x1a, 0x92, 0x86, 0x47, 0x68, 0x40, 0x4f,
0xc2, 0x0c, 0x25, 0x16, 0x0b, 0xfc, 0x6a, 0x41, 0x2c, 0x3f, 0x8e, 0xca, 0x58, 0x40, 0xb1, 0xc2,
0xf2, 0x80, 0xd6, 0x26, 0x8c, 0x59, 0xad, 0x28, 0xbc, 0xc6, 0x01, 0x6d, 0x47, 0x82, 0x71, 0x84,
0x37, 0x7f, 0x6b, 0x40, 0x65, 0x93, 0x12, 0x2b, 0x24, 0x93, 0xb8, 0xc5, 0x03, 0x9f, 0x38, 0xda,
0x80, 0x05, 0xf1, 0x7d, 0xd7, 0xf2, 0x5c, 0x47, 0x9e, 0xc1, 0xb4, 0x60, 0xfe, 0x7f, 0xc5, 0xbc,
0xb0, 0x95, 0x46, 0xe3, 0x41, 0x7a, 0xf3, 0x27, 0x79, 0xa8, 0x34, 0x89, 0x47, 0x12, 0x93, 0xb7,
0x00, 0xb5, 0xa8, 0x65, 0x93, 0x3d, 0x42, 0xdd, 0xc0, 0xd9, 0x27, 0x76, 0xe0, 0x3b, 0x4c, 0xb8,
0x51, 0xbe, 0xf1, 0x7f, 0x7c, 0x7f, 0x6f, 0x0e, 0x61, 0xf1, 0x08, 0x0e, 0xe4, 0x41, 0xa5, 0x43,
0xc5, 0x6f, 0xb1, 0xe7, 0xd2, 0xcb, 0xca, 0x57, 0xbf, 0x92, 0xed, 0x48, 0xf7, 0x74, 0xd6, 0xc6,
0xd2, 0x69, 0xbf, 0x56, 0x49, 0x81, 0x70, 0x5a, 0x38, 0xfa, 0x06, 0x2c, 0x06, 0xb4, 0x73, 0x64,
0xf9, 0x4d, 0xd2, 0x21, 0xbe, 0x43, 0xfc, 0x90, 0x89, 0x8d, 0x2c, 0x36, 0x96, 0x79, 0x2d, 0xb2,
0x3b, 0x80, 0xc3, 0x43, 0xd4, 0xe8, 0x0d, 0x58, 0xea, 0xd0, 0xa0, 0x63, 0xb5, 0xc4, 0xc6, 0xec,
0x05, 0x9e, 0x6b, 0xf7, 0xd4, 0x76, 0x3e, 0x7d, 0xda, 0xaf, 0x2d, 0xed, 0x0d, 0x22, 0xcf, 0xfa,
0xb5, 0x0b, 0x62, 0xeb, 0x38, 0x24, 0x41, 0xe2, 0x61, 0x31, 0x9a, 0x1b, 0x14, 0xc6, 0xb9, 0x81,
0xb9, 0x0d, 0xc5, 0x66, 0x57, 0xdd, 0x89, 0x97, 0xa0, 0xe8, 0xa8, 0xdf, 0x6a, 0xe7, 0xa3, 0xcb,
0x19, 0xd3, 0x9c, 0xf5, 0x6b, 0x15, 0x5e, 0x7e, 0xd6, 0x23, 0x00, 0x8e, 0x59, 0xcc, 0x27, 0xa1,
0x28, 0x0e, 0x9e, 0xdd, 0xbd, 0x82, 0x16, 0x21, 0x8f, 0xad, 0x7b, 0x42, 0xca, 0x1c, 0xe6, 0x3f,
0xb5, 0x28, 0xb6, 0x0b, 0x70, 0x93, 0x84, 0xd1, 0xc1, 0x6f, 0xc0, 0x42, 0x14, 0xca, 0xd3, 0x19,
0x26, 0xf6, 0x26, 0x9c, 0x46, 0xe3, 0x41, 0x7a, 0xf3, 0x4d, 0x28, 0x89, 0x2c, 0xc4, 0x53, 0x78,
0x52, 0x2e, 0x18, 0xf7, 0x29, 0x17, 0xa2, 0x1a, 0x20, 0x37, 0xae, 0x06, 0xd0, 0xcc, 0xf5, 0xa0,
0x22, 0x79, 0xa3, 0x02, 0x29, 0x93, 0x86, 0xa7, 0xa1, 0x18, 0x99, 0xa9, 0xb4, 0xc4, 0x85, 0x71,
0x24, 0x08, 0xc7, 0x14, 0x9a, 0xb6, 0x23, 0x48, 0x65, 0xd4, 0x6c, 0xca, 0xb4, 0xea, 0x27, 0x77,
0xff, 0xea, 0x47, 0xd3, 0xf4, 0x43, 0xa8, 0x8e, 0xab, 0xa6, 0x1f, 0x22, 0xe7, 0x67, 0x37, 0xc5,
0x7c, 0xcf, 0x80, 0x45, 0x5d, 0x52, 0xf6, 0xe3, 0xcb, 0xae, 0xe4, 0xfc, 0x6a, 0x4f, 0xdb, 0x91,
0x5f, 0x19, 0xb0, 0x9c, 0x5a, 0xda, 0x44, 0x27, 0x3e, 0x81, 0x51, 0xba, 0x73, 0xe4, 0x27, 0x70,
0x8e, 0xbf, 0xe4, 0xa0, 0x72, 0xcb, 0x3a, 0x20, 0xde, 0x3e, 0xf1, 0x88, 0x1d, 0x06, 0x14, 0xfd,
0x00, 0xca, 0x6d, 0x2b, 0xb4, 0x8f, 0x04, 0x34, 0xea, 0x0c, 0x9a, 0xd9, 0x82, 0x5d, 0x4a, 0x52,
0x7d, 0x27, 0x11, 0x73, 0xc3, 0x0f, 0x69, 0xaf, 0x71, 0x41, 0x99, 0x54, 0xd6, 0x30, 0x58, 0xd7,
0x26, 0xda, 0x39, 0xf1, 0x7d, 0xe3, 0x9d, 0x0e, 0x2f, 0x5b, 0x26, 0xef, 0x22, 0x53, 0x26, 0x60,
0xf2, 0x76, 0xd7, 0xa5, 0xa4, 0x4d, 0xfc, 0x30, 0x69, 0xe7, 0x76, 0x06, 0xe4, 0xe3, 0x21, 0x8d,
0x2b, 0x2f, 0xc3, 0xe2, 0xa0, 0xf1, 0x3c, 0xfe, 0x1c, 0x93, 0x9e, 0x3c, 0x2f, 0xcc, 0x7f, 0xa2,
0x65, 0x28, 0x9c, 0x58, 0x5e, 0x57, 0xdd, 0x46, 0x2c, 0x3f, 0xae, 0xe7, 0xae, 0x19, 0xe6, 0x6f,
0x0c, 0xa8, 0x8e, 0x33, 0x04, 0x7d, 0x51, 0x13, 0xd4, 0x28, 0x2b, 0xab, 0xf2, 0xaf, 0x91, 0x9e,
0x94, 0x7a, 0x03, 0x8a, 0x41, 0x87, 0xd7, 0x14, 0x01, 0x55, 0xa7, 0xfe, 0x54, 0x74, 0x92, 0xbb,
0x0a, 0x7e, 0xd6, 0xaf, 0x5d, 0x4c, 0x89, 0x8f, 0x10, 0x38, 0x66, 0xe5, 0x91, 0x5a, 0xd8, 0xc3,
0xb3, 0x47, 0x1c, 0xa9, 0xef, 0x0a, 0x08, 0x56, 0x18, 0xf3, 0x0f, 0x06, 0x4c, 0x8b, 0x82, 0xfc,
0x4d, 0x28, 0xf2, 0xfd, 0x73, 0xac, 0xd0, 0x12, 0x76, 0x65, 0x6e, 0x05, 0x39, 0xf7, 0x0e, 0x09,
0xad, 0xc4, 0xdb, 0x22, 0x08, 0x8e, 0x25, 0x22, 0x0c, 0x05, 0x37, 0x24, 0xed, 0xe8, 0x20, 0x9f,
0x19, 0x2b, 0x5a, 0x0d, 0x22, 0xea, 0xd8, 0xba, 0x77, 0xe3, 0x9d, 0x90, 0xf8, 0xfc, 0x30, 0x92,
0xab, 0xb1, 0xcd, 0x65, 0x60, 0x29, 0xca, 0xfc, 0x97, 0x01, 0xb1, 0x2a, 0xee, 0xfc, 0x8c, 0x78,
0x87, 0xb7, 0x5c, 0xff, 0x58, 0x6d, 0x6b, 0x6c, 0xce, 0xbe, 0x82, 0xe3, 0x98, 0x62, 0x54, 0x7a,
0xc8, 0x4d, 0x96, 0x1e, 0xb8, 0x42, 0x3b, 0xf0, 0x43, 0xd7, 0xef, 0x0e, 0xdd, 0xb6, 0x4d, 0x05,
0xc7, 0x31, 0x05, 0x2f, 0x44, 0x28, 0x69, 0x5b, 0xae, 0xef, 0xfa, 0x2d, 0xbe, 0x88, 0xcd, 0xa0,
0xeb, 0x87, 0x22, 0x23, 0xab, 0x42, 0x04, 0x0f, 0x61, 0xf1, 0x08, 0x0e, 0xf3, 0xf7, 0xd3, 0x50,
0xe6, 0x6b, 0x8e, 0xf2, 0xdc, 0x8b, 0x50, 0xf1, 0x74, 0x2f, 0x50, 0x6b, 0xbf, 0xa8, 0x4c, 0x49,
0xdf, 0x6b, 0x9c, 0xa6, 0xe5, 0xcc, 0xa2, 0x84, 0x8a, 0x99, 0x73, 0x69, 0xe6, 0x2d, 0x1d, 0x89,
0xd3, 0xb4, 0x3c, 0x7a, 0xdd, 0xe3, 0xf7, 0x43, 0x55, 0x26, 0xf1, 0x11, 0x7d, 0x93, 0x03, 0xb1,
0xc4, 0xa1, 0x1d, 0xb8, 0x60, 0x79, 0x5e, 0x70, 0x4f, 0x00, 0x1b, 0x41, 0x70, 0xdc, 0xb6, 0xe8,
0x31, 0x13, 0xcd, 0x74, 0xb1, 0xf1, 0x05, 0xc5, 0x72, 0x61, 0x63, 0x98, 0x04, 0x8f, 0xe2, 0x1b,
0x75, 0x6c, 0xd3, 0x13, 0x1e, 0xdb, 0x11, 0x2c, 0x0f, 0x80, 0xc4, 0x2d, 0x57, 0x9d, 0xed, 0x73,
0x4a, 0xce, 0x32, 0x1e, 0x41, 0x73, 0x36, 0x06, 0x8e, 0x47, 0x4a, 0x44, 0xd7, 0x61, 0x9e, 0x7b,
0x72, 0xd0, 0x0d, 0xa3, 0xba, 0xb3, 0x20, 0x8e, 0x1b, 0x9d, 0xf6, 0x6b, 0xf3, 0xb7, 0x53, 0x18,
0x3c, 0x40, 0xc9, 0x37, 0xd7, 0x73, 0xdb, 0x6e, 0x58, 0x9d, 0x15, 0x2c, 0xf1, 0xe6, 0xde, 0xe2,
0x40, 0x2c, 0x71, 0x29, 0x0f, 0x2c, 0x9e, 0xe7, 0x81, 0xe6, 0x9f, 0xf3, 0x80, 0x64, 0xad, 0xed,
0xc8, 0x7a, 0x4a, 0x86, 0x34, 0xde, 0x11, 0xa8, 0x5a, 0xdd, 0x18, 0xe8, 0x08, 0x54, 0x99, 0x1e,
0xe1, 0xd1, 0x0e, 0x94, 0x64, 0x68, 0x49, 0xae, 0xcb, 0xba, 0x22, 0x2e, 0xed, 0x46, 0x88, 0xb3,
0x7e, 0x6d, 0x25, 0xa5, 0x26, 0xc6, 0x88, 0x6e, 0x2d, 0x91, 0x80, 0xae, 0x02, 0x58, 0x1d, 0x57,
0x9f, 0xd7, 0x95, 0x92, 0xa9, 0x4d, 0xd2, 0x79, 0x63, 0x8d, 0x0a, 0xbd, 0x02, 0xd3, 0xe1, 0x83,
0x75, 0x54, 0x45, 0xd1, 0x30, 0xf2, 0xfe, 0x49, 0x48, 0xe0, 0xda, 0x85, 0x3f, 0x33, 0x6e, 0x96,
0x6a, 0x86, 0x62, 0xed, 0x5b, 0x31, 0x06, 0x6b, 0x54, 0xe8, 0x5b, 0x50, 0x3c, 0x54, 0xa5, 0xa8,
0x38, 0x98, 0xcc, 0x21, 0x32, 0x2a, 0x60, 0xe5, 0xc8, 0x20, 0xfa, 0xc2, 0xb1, 0x34, 0xf4, 0x55,
0x28, 0xb3, 0xee, 0x41, 0x9c, 0xbd, 0xe5, 0x69, 0xc6, 0xa9, 0x72, 0x3f, 0x41, 0x61, 0x9d, 0xce,
0x7c, 0x1b, 0x4a, 0x3b, 0xae, 0x4d, 0x03, 0xd1, 0x03, 0x3e, 0x05, 0xb3, 0x2c, 0xd5, 0xe0, 0xc4,
0x27, 0x19, 0x79, 0x59, 0x84, 0xe7, 0xee, 0xe5, 0x5b, 0x7e, 0x20, 0xdb, 0x98, 0x42, 0xe2, 0x5e,
0xaf, 0x73, 0x20, 0x96, 0xb8, 0xeb, 0xcb, 0xbc, 0x40, 0xf8, 0xe9, 0x87, 0xb5, 0xa9, 0xf7, 0x3f,
0xac, 0x4d, 0x7d, 0xf0, 0xa1, 0x2a, 0x16, 0xce, 0x00, 0x60, 0xf7, 0xe0, 0x7b, 0xc4, 0x96, 0x61,
0x37, 0xd3, 0x58, 0x2f, 0x9a, 0x26, 0x8b, 0xb1, 0x5e, 0x6e, 0xa0, 0xe8, 0xd3, 0x70, 0x38, 0x45,
0x89, 0xd6, 0xa1, 0x14, 0x0f, 0xec, 0x94, 0x7f, 0x2c, 0x45, 0xfe, 0x16, 0x4f, 0xf5, 0x70, 0x42,
0x93, 0xca, 0x01, 0xd3, 0xe7, 0xe6, 0x80, 0x06, 0xe4, 0xbb, 0xae, 0xa3, 0x1a, 0xe6, 0x67, 0xa3,
0x1c, 0x7c, 0x67, 0xbb, 0x79, 0xd6, 0xaf, 0x3d, 0x36, 0x6e, 0x4e, 0x1e, 0xf6, 0x3a, 0x84, 0xd5,
0xef, 0x6c, 0x37, 0x31, 0x67, 0x1e, 0x15, 0x90, 0x66, 0x26, 0x0c, 0x48, 0x57, 0x01, 0x5a, 0xc9,
0xd8, 0x41, 0xde, 0xf7, 0xd8, 0x11, 0xb5, 0x71, 0x83, 0x46, 0x85, 0x18, 0x2c, 0xd9, 0xbc, 0x35,
0x57, 0xed, 0x3f, 0x0b, 0xad, 0xb6, 0x1c, 0x64, 0x4e, 0x76, 0x27, 0x2e, 0x29, 0x35, 0x4b, 0x9b,
0x83, 0xc2, 0xf0, 0xb0, 0x7c, 0x14, 0xc0, 0x92, 0xa3, 0x3a, 0xc4, 0x44, 0x69, 0x69, 0x62, 0xa5,
0x17, 0xb9, 0xc2, 0xe6, 0xa0, 0x20, 0x3c, 0x2c, 0x1b, 0x7d, 0x17, 0x56, 0x22, 0xe0, 0x70, 0x9b,
0x2e, 0x02, 0x76, 0xbe, 0xb1, 0x7a, 0xda, 0xaf, 0xad, 0x34, 0xc7, 0x52, 0xe1, 0xfb, 0x48, 0x40,
0x0e, 0xcc, 0x78, 0xb2, 0xc0, 0x2d, 0x8b, 0xa2, 0xe4, 0x6b, 0xd9, 0x56, 0x91, 0x78, 0x7f, 0x5d,
0x2f, 0x6c, 0xe3, 0x91, 0x8b, 0xaa, 0x69, 0x95, 0x6c, 0xf4, 0x0e, 0x94, 0x2d, 0xdf, 0x0f, 0x42,
0x4b, 0x0e, 0x0e, 0xe6, 0x84, 0xaa, 0x8d, 0x89, 0x55, 0x6d, 0x24, 0x32, 0x06, 0x0a, 0x69, 0x0d,
0x83, 0x75, 0x55, 0xe8, 0x1e, 0x2c, 0x04, 0xf7, 0x7c, 0x42, 0x31, 0x39, 0x24, 0x94, 0xf8, 0x36,
0x61, 0xd5, 0x8a, 0xd0, 0xfe, 0x5c, 0x46, 0xed, 0x29, 0xe6, 0xc4, 0xa5, 0xd3, 0x70, 0x86, 0x07,
0xb5, 0xa0, 0x3a, 0x8f, 0xad, 0xbe, 0xe5, 0xb9, 0xdf, 0x27, 0x94, 0x55, 0xe7, 0x93, 0x59, 0xf3,
0x56, 0x0c, 0xc5, 0x1a, 0x05, 0x8f, 0x7e, 0xb6, 0xd7, 0x65, 0x21, 0x91, 0x83, 0xff, 0x85, 0x74,
0xf4, 0xdb, 0x4c, 0x50, 0x58, 0xa7, 0x43, 0x5d, 0xa8, 0xb4, 0xf5, 0x4c, 0x53, 0x5d, 0x12, 0xab,
0xbb, 0x96, 0x6d, 0x75, 0xc3, 0xb9, 0x30, 0x29, 0x7c, 0x52, 0x38, 0x9c, 0xd6, 0xb2, 0xf2, 0x02,
0x94, 0x1f, 0xb0, 0x27, 0xe0, 0x3d, 0xc5, 0xe0, 0x39, 0x4e, 0xd4, 0x53, 0xfc, 0x31, 0x07, 0xf3,
0xe9, 0xdd, 0x1f, 0xc8, 0xa2, 0x85, 0x4c, 0x59, 0x34, 0xea, 0x5e, 0x8d, 0xb1, 0x6f, 0x15, 0x51,
0x58, 0xcf, 0x8f, 0x0d, 0xeb, 0x2a, 0x7a, 0x4e, 0x3f, 0x4c, 0xf4, 0xac, 0x03, 0xf0, 0xf2, 0x84,
0x06, 0x9e, 0x47, 0xa8, 0x08, 0x9c, 0x45, 0xf5, 0x26, 0x11, 0x43, 0xb1, 0x46, 0xc1, 0x8b, 0xe8,
0x03, 0x2f, 0xb0, 0x8f, 0xc5, 0x16, 0x44, 0x97, 0x5e, 0x84, 0xcc, 0xa2, 0x2c, 0xa2, 0x1b, 0x43,
0x58, 0x3c, 0x82, 0xc3, 0xec, 0xc1, 0xc5, 0x3d, 0x8b, 0x86, 0xae, 0xe5, 0x25, 0x17, 0x4c, 0x74,
0x29, 0x6f, 0x0d, 0xf5, 0x40, 0xcf, 0x4e, 0x7a, 0x51, 0x93, 0xcd, 0x4f, 0x60, 0x49, 0x1f, 0x64,
0xfe, 0xd5, 0x80, 0x4b, 0x23, 0x75, 0x7f, 0x0e, 0x3d, 0xd8, 0x5b, 0xe9, 0x1e, 0xec, 0xc5, 0x8c,
0xc3, 0xcb, 0x51, 0xd6, 0x8e, 0xe9, 0xc8, 0x66, 0xa1, 0xb0, 0xc7, 0x6b, 0x5f, 0xf3, 0x63, 0x03,
0xe6, 0xc4, 0xaf, 0x49, 0x66, 0xc7, 0xb5, 0xf4, 0x93, 0x42, 0xe9, 0xd1, 0x3d, 0x27, 0x3c, 0x8a,
0xe1, 0xf2, 0x7b, 0x06, 0xa4, 0xa7, 0xb6, 0xe8, 0x65, 0x79, 0x05, 0x8c, 0x78, 0xac, 0x3a, 0xa1,
0xfb, 0xbf, 0x34, 0xae, 0x09, 0xbd, 0x90, 0x69, 0x3e, 0xf9, 0x34, 0x94, 0x70, 0x10, 0x84, 0x7b,
0x56, 0x78, 0xc4, 0xf8, 0xde, 0x75, 0xf8, 0x0f, 0xb5, 0xbd, 0x62, 0xef, 0x04, 0x06, 0x4b, 0xb8,
0xf9, 0x73, 0x03, 0x2e, 0x8d, 0x7d, 0x29, 0xe2, 0x51, 0xc4, 0x8e, 0xbf, 0xd4, 0x8a, 0x62, 0x47,
0x4e, 0xe8, 0xb0, 0x46, 0xc5, 0xbb, 0xc7, 0xd4, 0xf3, 0xd2, 0x60, 0xf7, 0x98, 0xd2, 0x86, 0xd3,
0xb4, 0xe6, 0x3f, 0x73, 0xa0, 0x9e, 0x66, 0xfe, 0xcb, 0x4e, 0xff, 0xe4, 0xc0, 0xc3, 0xd0, 0x7c,
0xfa, 0x61, 0x28, 0x7e, 0x05, 0xd2, 0x5e, 0x46, 0xf2, 0xf7, 0x7f, 0x19, 0x41, 0xcf, 0xc7, 0x8f,
0x2d, 0xd2, 0x87, 0x56, 0xd3, 0x8f, 0x2d, 0x67, 0xfd, 0xda, 0x9c, 0x12, 0x9e, 0x7e, 0x7c, 0x79,
0x03, 0x66, 0x1d, 0x12, 0x5a, 0xae, 0x27, 0x3b, 0xc1, 0xcc, 0xcf, 0x07, 0x52, 0x58, 0x53, 0xb2,
0x36, 0xca, 0xdc, 0x26, 0xf5, 0x81, 0x23, 0x81, 0x3c, 0x60, 0xdb, 0x81, 0x23, 0x1b, 0x99, 0x42,
0x12, 0xb0, 0x37, 0x03, 0x87, 0x60, 0x81, 0x31, 0xdf, 0x37, 0xa0, 0x2c, 0x25, 0x6d, 0x5a, 0x5d,
0x46, 0xd0, 0x95, 0x78, 0x15, 0xf2, 0xb8, 0x2f, 0xe9, 0xaf, 0x6a, 0x67, 0xfd, 0x5a, 0x49, 0x90,
0x89, 0x1e, 0x68, 0xc4, 0xeb, 0x51, 0xee, 0x9c, 0x3d, 0x7a, 0x1c, 0x0a, 0xe2, 0x02, 0xa9, 0xcd,
0x4c, 0x9e, 0x07, 0x39, 0x10, 0x4b, 0x9c, 0xf9, 0x69, 0x0e, 0x2a, 0xa9, 0xc5, 0x65, 0x68, 0x27,
0xe2, 0xa1, 0x69, 0x2e, 0xc3, 0x20, 0x7e, 0xfc, 0x63, 0xbc, 0x4a, 0x5f, 0x33, 0x0f, 0x93, 0xbe,
0xbe, 0x0d, 0x33, 0x36, 0xdf, 0xa3, 0xe8, 0xbf, 0x1d, 0x57, 0x26, 0x39, 0x4e, 0xb1, 0xbb, 0x89,
0x37, 0x8a, 0x4f, 0x86, 0x95, 0x40, 0x74, 0x13, 0x96, 0x28, 0x09, 0x69, 0x6f, 0xe3, 0x30, 0x24,
0x54, 0x1f, 0x1f, 0x14, 0x92, 0xa2, 0x1d, 0x0f, 0x12, 0xe0, 0x61, 0x1e, 0xf3, 0x00, 0xe6, 0x6e,
0x5b, 0x07, 0x5e, 0xfc, 0x20, 0x86, 0xa1, 0xe2, 0xfa, 0xb6, 0xd7, 0x75, 0x88, 0x0c, 0xe8, 0x51,
0xf4, 0x8a, 0x2e, 0xed, 0xb6, 0x8e, 0x3c, 0xeb, 0xd7, 0x2e, 0xa4, 0x00, 0xf2, 0x05, 0x08, 0xa7,
0x45, 0x98, 0x1e, 0x4c, 0x7f, 0x8e, 0x0d, 0xe8, 0x77, 0xa0, 0x94, 0xb4, 0x08, 0x8f, 0x58, 0xa5,
0xf9, 0x16, 0x14, 0xb9, 0xc7, 0x47, 0xad, 0xed, 0x39, 0x55, 0x52, 0xba, 0xf6, 0xca, 0x65, 0xa9,
0xbd, 0xc4, 0xb3, 0xea, 0x9d, 0x8e, 0xf3, 0x90, 0xcf, 0xaa, 0xb9, 0x87, 0xc9, 0x7c, 0xf9, 0x09,
0x33, 0xdf, 0x55, 0x90, 0x7f, 0x3d, 0xe1, 0x49, 0x46, 0x16, 0x10, 0x5a, 0x92, 0xd1, 0xf3, 0xbf,
0xf6, 0xa6, 0xf0, 0x63, 0x03, 0x40, 0x0c, 0xef, 0x6e, 0x9c, 0x10, 0x3f, 0xcc, 0xf0, 0x80, 0x7f,
0x07, 0x66, 0x02, 0xe9, 0x91, 0xf2, 0x69, 0x75, 0xc2, 0x09, 0x71, 0x7c, 0x91, 0xa4, 0x4f, 0x62,
0x25, 0xac, 0xf1, 0xea, 0x47, 0x9f, 0xad, 0x4e, 0x7d, 0xfc, 0xd9, 0xea, 0xd4, 0x27, 0x9f, 0xad,
0x4e, 0xbd, 0x7b, 0xba, 0x6a, 0x7c, 0x74, 0xba, 0x6a, 0x7c, 0x7c, 0xba, 0x6a, 0x7c, 0x72, 0xba,
0x6a, 0x7c, 0x7a, 0xba, 0x6a, 0xbc, 0xff, 0xf7, 0xd5, 0xa9, 0x37, 0x9e, 0xc8, 0xf2, 0x97, 0xbe,
0xff, 0x04, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x16, 0x4f, 0xb5, 0x12, 0x28, 0x00, 0x00,
// 2879 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x3a, 0xcd, 0x6f, 0x24, 0x47,
0xbd, 0xee, 0x19, 0x8f, 0x3d, 0xf3, 0x1b, 0x8f, 0x3f, 0x6a, 0xbd, 0xef, 0xcd, 0xfa, 0xe9, 0x79,
0x9c, 0x4e, 0x14, 0x6d, 0xde, 0x4b, 0xc6, 0xd9, 0x25, 0x44, 0x9b, 0x0d, 0x09, 0x78, 0x3c, 0xeb,
0x8d, 0x93, 0x75, 0x6c, 0x95, 0x77, 0x17, 0x58, 0x22, 0x48, 0xbb, 0xbb, 0x3c, 0x6e, 0xdc, 0xd3,
0x3d, 0xa9, 0xea, 0xf1, 0x66, 0xe0, 0x40, 0x0e, 0x20, 0x82, 0x84, 0xa2, 0x70, 0xe3, 0x84, 0x12,
0xc1, 0x1f, 0x80, 0xb8, 0xc0, 0x1f, 0x80, 0x44, 0x8e, 0x41, 0x5c, 0x22, 0x81, 0x46, 0x89, 0x39,
0x70, 0x44, 0x5c, 0x7d, 0x01, 0xd5, 0x47, 0x77, 0x57, 0xcf, 0xc7, 0xba, 0x27, 0xbb, 0x44, 0xdc,
0xa6, 0x7f, 0xdf, 0x55, 0xf5, 0xab, 0xdf, 0x57, 0x0d, 0xec, 0x1c, 0x5f, 0x63, 0x75, 0x37, 0x58,
0x3f, 0xee, 0x1e, 0x10, 0xea, 0x93, 0x90, 0xb0, 0xf5, 0x13, 0xe2, 0x3b, 0x01, 0x5d, 0x57, 0x08,
0xab, 0xe3, 0xb6, 0x2d, 0xfb, 0xc8, 0xf5, 0x09, 0xed, 0xad, 0x77, 0x8e, 0x5b, 0x1c, 0xc0, 0xd6,
0xdb, 0x24, 0xb4, 0xd6, 0x4f, 0xae, 0xac, 0xb7, 0x88, 0x4f, 0xa8, 0x15, 0x12, 0xa7, 0xde, 0xa1,
0x41, 0x18, 0xa0, 0x27, 0x24, 0x57, 0x5d, 0xe7, 0xaa, 0x77, 0x8e, 0x5b, 0x1c, 0xc0, 0xea, 0x9c,
0xab, 0x7e, 0x72, 0x65, 0xe5, 0x99, 0x96, 0x1b, 0x1e, 0x75, 0x0f, 0xea, 0x76, 0xd0, 0x5e, 0x6f,
0x05, 0xad, 0x60, 0x5d, 0x30, 0x1f, 0x74, 0x0f, 0xc5, 0x97, 0xf8, 0x10, 0xbf, 0xa4, 0xd0, 0x95,
0xb1, 0xa6, 0xd0, 0xae, 0x1f, 0xba, 0x6d, 0x32, 0x68, 0xc5, 0xca, 0xf3, 0xe7, 0x31, 0x30, 0xfb,
0x88, 0xb4, 0xad, 0x41, 0x3e, 0xf3, 0x0f, 0x79, 0x28, 0x6e, 0xec, 0x6d, 0xdf, 0xa4, 0x41, 0xb7,
0x83, 0xd6, 0x60, 0xda, 0xb7, 0xda, 0xa4, 0x6a, 0xac, 0x19, 0x97, 0x4b, 0x8d, 0xb9, 0x8f, 0xfa,
0xb5, 0xa9, 0xd3, 0x7e, 0x6d, 0xfa, 0x75, 0xab, 0x4d, 0xb0, 0xc0, 0x20, 0x0f, 0x8a, 0x27, 0x84,
0x32, 0x37, 0xf0, 0x59, 0x35, 0xb7, 0x96, 0xbf, 0x5c, 0xbe, 0xfa, 0x72, 0x3d, 0xcb, 0xfa, 0xeb,
0x42, 0xc1, 0x5d, 0xc9, 0xba, 0x15, 0xd0, 0xa6, 0xcb, 0xec, 0xe0, 0x84, 0xd0, 0x5e, 0x63, 0x51,
0x69, 0x29, 0x2a, 0x24, 0xc3, 0xb1, 0x06, 0xf4, 0x43, 0x03, 0x16, 0x3b, 0x94, 0x1c, 0x12, 0x4a,
0x89, 0xa3, 0xf0, 0xd5, 0xfc, 0x9a, 0xf1, 0x08, 0xd4, 0x56, 0x95, 0xda, 0xc5, 0xbd, 0x01, 0xf9,
0x78, 0x48, 0x23, 0xfa, 0xa5, 0x01, 0x2b, 0x8c, 0xd0, 0x13, 0x42, 0x37, 0x1c, 0x87, 0x12, 0xc6,
0x1a, 0xbd, 0x4d, 0xcf, 0x25, 0x7e, 0xb8, 0xb9, 0xdd, 0xc4, 0xac, 0x3a, 0x2d, 0xf6, 0xe1, 0xab,
0xd9, 0x0c, 0xda, 0x1f, 0x27, 0xa7, 0x61, 0x2a, 0x8b, 0x56, 0xc6, 0x92, 0x30, 0xfc, 0x00, 0x33,
0xcc, 0x43, 0x98, 0x8b, 0x0e, 0xf2, 0x96, 0xcb, 0x42, 0x74, 0x17, 0x66, 0x5a, 0xfc, 0x83, 0x55,
0x0d, 0x61, 0x60, 0x3d, 0x9b, 0x81, 0x91, 0x8c, 0xc6, 0xbc, 0xb2, 0x67, 0x46, 0x7c, 0x32, 0xac,
0xa4, 0x99, 0x3f, 0x99, 0x86, 0xf2, 0xc6, 0xde, 0x36, 0x26, 0x2c, 0xe8, 0x52, 0x9b, 0x64, 0x70,
0x9a, 0x6b, 0x30, 0xc7, 0x5c, 0xbf, 0xd5, 0xf5, 0x2c, 0xca, 0xa1, 0xd5, 0x19, 0x41, 0xb9, 0xac,
0x28, 0xe7, 0xf6, 0x35, 0x1c, 0x4e, 0x51, 0xa2, 0xab, 0x00, 0x5c, 0x02, 0xeb, 0x58, 0x36, 0x71,
0xaa, 0xb9, 0x35, 0xe3, 0x72, 0xb1, 0x81, 0x14, 0x1f, 0xbc, 0x1e, 0x63, 0xb0, 0x46, 0x85, 0x1e,
0x87, 0x82, 0xb0, 0xb4, 0x5a, 0x14, 0x6a, 0x2a, 0x8a, 0xbc, 0x20, 0x96, 0x81, 0x25, 0x0e, 0x3d,
0x05, 0xb3, 0xca, 0xcb, 0xaa, 0x25, 0x41, 0xb6, 0xa0, 0xc8, 0x66, 0x23, 0x37, 0x88, 0xf0, 0x7c,
0x7d, 0xc7, 0xae, 0xef, 0x08, 0xbf, 0xd3, 0xd6, 0xf7, 0x9a, 0xeb, 0x3b, 0x58, 0x60, 0xd0, 0x2d,
0x28, 0x9c, 0x10, 0x7a, 0xc0, 0x3d, 0x81, 0xbb, 0xe6, 0xff, 0x67, 0xdb, 0xe8, 0xbb, 0x9c, 0xa5,
0x51, 0xe2, 0xa6, 0x89, 0x9f, 0x58, 0x0a, 0x41, 0x75, 0x00, 0x76, 0x14, 0xd0, 0x50, 0x2c, 0xaf,
0x5a, 0x58, 0xcb, 0x5f, 0x2e, 0x35, 0xe6, 0xf9, 0x7a, 0xf7, 0x63, 0x28, 0xd6, 0x28, 0x38, 0xbd,
0x6d, 0x85, 0xa4, 0x15, 0x50, 0x97, 0xb0, 0xea, 0x6c, 0x42, 0xbf, 0x19, 0x43, 0xb1, 0x46, 0x81,
0x5e, 0x05, 0xc4, 0xc2, 0x80, 0x5a, 0x2d, 0xa2, 0x96, 0xfa, 0x8a, 0xc5, 0x8e, 0xaa, 0x20, 0x56,
0xb7, 0xa2, 0x56, 0x87, 0xf6, 0x87, 0x28, 0xf0, 0x08, 0x2e, 0xf3, 0x37, 0x06, 0x2c, 0x68, 0xbe,
0x20, 0xfc, 0xee, 0x1a, 0xcc, 0xb5, 0xb4, 0x5b, 0xa7, 0xfc, 0x22, 0x3e, 0x6d, 0xfd, 0x46, 0xe2,
0x14, 0x25, 0x22, 0x50, 0xa2, 0x4a, 0x52, 0x14, 0x5d, 0xae, 0x64, 0x76, 0xda, 0xc8, 0x86, 0x44,
0x93, 0x06, 0x64, 0x38, 0x91, 0x6c, 0xfe, 0xcd, 0x10, 0x0e, 0x1c, 0xc5, 0x1b, 0x74, 0x59, 0x8b,
0x69, 0x86, 0xd8, 0xbe, 0xb9, 0x31, 0xf1, 0xe8, 0x9c, 0x40, 0x90, 0xfb, 0x8f, 0x08, 0x04, 0xd7,
0x8b, 0x3f, 0xff, 0xa0, 0x36, 0xf5, 0xce, 0x5f, 0xd6, 0xa6, 0xcc, 0x9f, 0x19, 0x30, 0xb7, 0xd1,
0xe9, 0x78, 0xbd, 0xdd, 0x4e, 0x28, 0x16, 0x60, 0xc2, 0x8c, 0x43, 0x7b, 0xb8, 0xeb, 0xab, 0x85,
0x02, 0xbf, 0xdf, 0x4d, 0x01, 0xc1, 0x0a, 0xc3, 0xef, 0xcf, 0x61, 0x40, 0x6d, 0xa2, 0xae, 0x5b,
0x7c, 0x7f, 0xb6, 0x38, 0x10, 0x4b, 0x1c, 0x3f, 0xe4, 0x43, 0x97, 0x78, 0xce, 0x8e, 0xe5, 0x5b,
0x2d, 0x42, 0xd5, 0xe5, 0x88, 0xb7, 0x7e, 0x4b, 0xc3, 0xe1, 0x14, 0xa5, 0xf9, 0xcf, 0x1c, 0x94,
0x36, 0x03, 0xdf, 0x71, 0x43, 0x75, 0xb9, 0xc2, 0x5e, 0x67, 0x28, 0x78, 0xdc, 0xee, 0x75, 0x08,
0x16, 0x18, 0xf4, 0x02, 0xcc, 0xb0, 0xd0, 0x0a, 0xbb, 0x4c, 0xd8, 0x53, 0x6a, 0x3c, 0x16, 0x85,
0xa5, 0x7d, 0x01, 0x3d, 0xeb, 0xd7, 0x16, 0x62, 0x71, 0x12, 0x84, 0x15, 0x03, 0xf7, 0xf4, 0xe0,
0x40, 0x6c, 0x94, 0x73, 0x53, 0xa6, 0xbd, 0x28, 0x7f, 0xe4, 0x13, 0x4f, 0xdf, 0x1d, 0xa2, 0xc0,
0x23, 0xb8, 0xd0, 0x09, 0x20, 0xcf, 0x62, 0xe1, 0x6d, 0x6a, 0xf9, 0x4c, 0xe8, 0xba, 0xed, 0xb6,
0x89, 0xba, 0xf0, 0xff, 0x97, 0xed, 0xc4, 0x39, 0x47, 0xa2, 0xf7, 0xd6, 0x90, 0x34, 0x3c, 0x42,
0x03, 0x7a, 0x12, 0x66, 0x28, 0xb1, 0x58, 0xe0, 0x57, 0x0b, 0x62, 0xf9, 0x71, 0x54, 0xc6, 0x02,
0x8a, 0x15, 0x96, 0x07, 0xb4, 0x36, 0x61, 0xcc, 0x6a, 0x45, 0xe1, 0x35, 0x0e, 0x68, 0x3b, 0x12,
0x8c, 0x23, 0xbc, 0xf9, 0x6b, 0x03, 0x2a, 0x9b, 0x94, 0x58, 0x21, 0x99, 0xc4, 0x2d, 0x3e, 0xf7,
0x89, 0xa3, 0x0d, 0x58, 0x10, 0xdf, 0x77, 0x2d, 0xcf, 0x75, 0xe4, 0x19, 0x4c, 0x0b, 0xe6, 0xff,
0x56, 0xcc, 0x0b, 0x5b, 0x69, 0x34, 0x1e, 0xa4, 0x37, 0x7f, 0x9c, 0x87, 0x4a, 0x93, 0x78, 0x24,
0x31, 0x79, 0x0b, 0x50, 0x8b, 0x5a, 0x36, 0xd9, 0x23, 0xd4, 0x0d, 0x9c, 0x7d, 0x62, 0x07, 0xbe,
0xc3, 0x84, 0x1b, 0xe5, 0x1b, 0xff, 0xc5, 0xf7, 0xf7, 0xe6, 0x10, 0x16, 0x8f, 0xe0, 0x40, 0x1e,
0x54, 0x3a, 0x54, 0xfc, 0x16, 0x7b, 0x2e, 0xbd, 0xac, 0x7c, 0xf5, 0x4b, 0xd9, 0x8e, 0x74, 0x4f,
0x67, 0x6d, 0x2c, 0x9d, 0xf6, 0x6b, 0x95, 0x14, 0x08, 0xa7, 0x85, 0xa3, 0xaf, 0xc1, 0x62, 0x40,
0x3b, 0x47, 0x96, 0xdf, 0x24, 0x1d, 0xe2, 0x3b, 0xc4, 0x0f, 0x99, 0xd8, 0xc8, 0x62, 0x63, 0x99,
0xd7, 0x22, 0xbb, 0x03, 0x38, 0x3c, 0x44, 0x8d, 0xee, 0xc1, 0x52, 0x87, 0x06, 0x1d, 0xab, 0x25,
0x36, 0x66, 0x2f, 0xf0, 0x5c, 0xbb, 0xa7, 0xb6, 0xf3, 0xe9, 0xd3, 0x7e, 0x6d, 0x69, 0x6f, 0x10,
0x79, 0xd6, 0xaf, 0x5d, 0x10, 0x5b, 0xc7, 0x21, 0x09, 0x12, 0x0f, 0x8b, 0xd1, 0xdc, 0xa0, 0x30,
0xce, 0x0d, 0xcc, 0x6d, 0x28, 0x36, 0xbb, 0xea, 0x4e, 0xbc, 0x04, 0x45, 0x47, 0xfd, 0x56, 0x3b,
0x1f, 0x5d, 0xce, 0x98, 0xe6, 0xac, 0x5f, 0xab, 0xf0, 0xf2, 0xb3, 0x1e, 0x01, 0x70, 0xcc, 0x62,
0x3e, 0x09, 0x45, 0x71, 0xf0, 0xec, 0xee, 0x15, 0xb4, 0x08, 0x79, 0x6c, 0xdd, 0x17, 0x52, 0xe6,
0x30, 0xff, 0xa9, 0x45, 0xb1, 0x5d, 0x80, 0x9b, 0x24, 0x8c, 0x0e, 0x7e, 0x03, 0x16, 0xa2, 0x50,
0x9e, 0xce, 0x30, 0xb1, 0x37, 0xe1, 0x34, 0x1a, 0x0f, 0xd2, 0x9b, 0x6f, 0x40, 0x49, 0x64, 0x21,
0x9e, 0xc2, 0x93, 0x72, 0xc1, 0x78, 0x40, 0xb9, 0x10, 0xd5, 0x00, 0xb9, 0x71, 0x35, 0x80, 0x66,
0xae, 0x07, 0x15, 0xc9, 0x1b, 0x15, 0x48, 0x99, 0x34, 0x3c, 0x0d, 0xc5, 0xc8, 0x4c, 0xa5, 0x25,
0x2e, 0x8c, 0x23, 0x41, 0x38, 0xa6, 0xd0, 0xb4, 0x1d, 0x41, 0x2a, 0xa3, 0x66, 0x53, 0xa6, 0x55,
0x3f, 0xb9, 0x07, 0x57, 0x3f, 0x9a, 0xa6, 0x1f, 0x40, 0x75, 0x5c, 0x35, 0xfd, 0x10, 0x39, 0x3f,
0xbb, 0x29, 0xe6, 0x7b, 0x06, 0x2c, 0xea, 0x92, 0xb2, 0x1f, 0x5f, 0x76, 0x25, 0xe7, 0x57, 0x7b,
0xda, 0x8e, 0xfc, 0xc2, 0x80, 0xe5, 0xd4, 0xd2, 0x26, 0x3a, 0xf1, 0x09, 0x8c, 0xd2, 0x9d, 0x23,
0x3f, 0x81, 0x73, 0xfc, 0x29, 0x07, 0x95, 0x5b, 0xd6, 0x01, 0xf1, 0xf6, 0x89, 0x47, 0xec, 0x30,
0xa0, 0xe8, 0xfb, 0x50, 0x6e, 0x5b, 0xa1, 0x7d, 0x24, 0xa0, 0x51, 0x67, 0xd0, 0xcc, 0x16, 0xec,
0x52, 0x92, 0xea, 0x3b, 0x89, 0x98, 0x1b, 0x7e, 0x48, 0x7b, 0x8d, 0x0b, 0xca, 0xa4, 0xb2, 0x86,
0xc1, 0xba, 0x36, 0xd1, 0xce, 0x89, 0xef, 0x1b, 0x6f, 0x77, 0x78, 0xd9, 0x32, 0x79, 0x17, 0x99,
0x32, 0x01, 0x93, 0xb7, 0xba, 0x2e, 0x25, 0x6d, 0xe2, 0x87, 0x49, 0x3b, 0xb7, 0x33, 0x20, 0x1f,
0x0f, 0x69, 0x5c, 0x79, 0x19, 0x16, 0x07, 0x8d, 0xe7, 0xf1, 0xe7, 0x98, 0xf4, 0xe4, 0x79, 0x61,
0xfe, 0x13, 0x2d, 0x43, 0xe1, 0xc4, 0xf2, 0xba, 0xea, 0x36, 0x62, 0xf9, 0x71, 0x3d, 0x77, 0xcd,
0x30, 0x7f, 0x65, 0x40, 0x75, 0x9c, 0x21, 0xe8, 0x7f, 0x35, 0x41, 0x8d, 0xb2, 0xb2, 0x2a, 0xff,
0x1a, 0xe9, 0x49, 0xa9, 0x37, 0xa0, 0x18, 0x74, 0x78, 0x4d, 0x11, 0x50, 0x75, 0xea, 0x4f, 0x45,
0x27, 0xb9, 0xab, 0xe0, 0x67, 0xfd, 0xda, 0xc5, 0x94, 0xf8, 0x08, 0x81, 0x63, 0x56, 0x1e, 0xa9,
0x85, 0x3d, 0x3c, 0x7b, 0xc4, 0x91, 0xfa, 0xae, 0x80, 0x60, 0x85, 0x31, 0x7f, 0x67, 0xc0, 0xb4,
0x28, 0xc8, 0xdf, 0x80, 0x22, 0xdf, 0x3f, 0xc7, 0x0a, 0x2d, 0x61, 0x57, 0xe6, 0x56, 0x90, 0x73,
0xef, 0x90, 0xd0, 0x4a, 0xbc, 0x2d, 0x82, 0xe0, 0x58, 0x22, 0xc2, 0x50, 0x70, 0x43, 0xd2, 0x8e,
0x0e, 0xf2, 0x99, 0xb1, 0xa2, 0xd5, 0x20, 0xa2, 0x8e, 0xad, 0xfb, 0x37, 0xde, 0x0e, 0x89, 0xcf,
0x0f, 0x23, 0xb9, 0x1a, 0xdb, 0x5c, 0x06, 0x96, 0xa2, 0xcc, 0x7f, 0x18, 0x10, 0xab, 0xe2, 0xce,
0xcf, 0x88, 0x77, 0x78, 0xcb, 0xf5, 0x8f, 0xd5, 0xb6, 0xc6, 0xe6, 0xec, 0x2b, 0x38, 0x8e, 0x29,
0x46, 0xa5, 0x87, 0xdc, 0x64, 0xe9, 0x81, 0x2b, 0xb4, 0x03, 0x3f, 0x74, 0xfd, 0xee, 0xd0, 0x6d,
0xdb, 0x54, 0x70, 0x1c, 0x53, 0xf0, 0x42, 0x84, 0x92, 0xb6, 0xe5, 0xfa, 0xae, 0xdf, 0xe2, 0x8b,
0xd8, 0x0c, 0xba, 0x7e, 0x28, 0x32, 0xb2, 0x2a, 0x44, 0xf0, 0x10, 0x16, 0x8f, 0xe0, 0x30, 0x7f,
0x3b, 0x0d, 0x65, 0xbe, 0xe6, 0x28, 0xcf, 0xbd, 0x08, 0x15, 0x4f, 0xf7, 0x02, 0xb5, 0xf6, 0x8b,
0xca, 0x94, 0xf4, 0xbd, 0xc6, 0x69, 0x5a, 0xce, 0x2c, 0x4a, 0xa8, 0x98, 0x39, 0x97, 0x66, 0xde,
0xd2, 0x91, 0x38, 0x4d, 0xcb, 0xa3, 0xd7, 0x7d, 0x7e, 0x3f, 0x54, 0x65, 0x12, 0x1f, 0xd1, 0xd7,
0x39, 0x10, 0x4b, 0x1c, 0xda, 0x81, 0x0b, 0x96, 0xe7, 0x05, 0xf7, 0x05, 0xb0, 0x11, 0x04, 0xc7,
0x6d, 0x8b, 0x1e, 0x33, 0xd1, 0x4c, 0x17, 0x1b, 0xff, 0xa3, 0x58, 0x2e, 0x6c, 0x0c, 0x93, 0xe0,
0x51, 0x7c, 0xa3, 0x8e, 0x6d, 0x7a, 0xc2, 0x63, 0x3b, 0x82, 0xe5, 0x01, 0x90, 0xb8, 0xe5, 0xaa,
0xb3, 0x7d, 0x4e, 0xc9, 0x59, 0xc6, 0x23, 0x68, 0xce, 0xc6, 0xc0, 0xf1, 0x48, 0x89, 0xe8, 0x3a,
0xcc, 0x73, 0x4f, 0x0e, 0xba, 0x61, 0x54, 0x77, 0x16, 0xc4, 0x71, 0xa3, 0xd3, 0x7e, 0x6d, 0xfe,
0x76, 0x0a, 0x83, 0x07, 0x28, 0xf9, 0xe6, 0x7a, 0x6e, 0xdb, 0x0d, 0xab, 0xb3, 0x82, 0x25, 0xde,
0xdc, 0x5b, 0x1c, 0x88, 0x25, 0x2e, 0xe5, 0x81, 0xc5, 0xf3, 0x3c, 0xd0, 0xfc, 0x63, 0x1e, 0x90,
0xac, 0xb5, 0x1d, 0x59, 0x4f, 0xc9, 0x90, 0xc6, 0x3b, 0x02, 0x55, 0xab, 0x1b, 0x03, 0x1d, 0x81,
0x2a, 0xd3, 0x23, 0x3c, 0xda, 0x81, 0x92, 0x0c, 0x2d, 0xc9, 0x75, 0x59, 0x57, 0xc4, 0xa5, 0xdd,
0x08, 0x71, 0xd6, 0xaf, 0xad, 0xa4, 0xd4, 0xc4, 0x18, 0xd1, 0xad, 0x25, 0x12, 0xd0, 0x55, 0x00,
0xab, 0xe3, 0xea, 0xf3, 0xba, 0x52, 0x32, 0xb5, 0x49, 0x3a, 0x6f, 0xac, 0x51, 0xa1, 0x57, 0x60,
0x3a, 0xfc, 0x7c, 0x1d, 0x55, 0x51, 0x34, 0x8c, 0xbc, 0x7f, 0x12, 0x12, 0xb8, 0x76, 0xe1, 0xcf,
0x8c, 0x9b, 0xa5, 0x9a, 0xa1, 0x58, 0xfb, 0x56, 0x8c, 0xc1, 0x1a, 0x15, 0xfa, 0x06, 0x14, 0x0f,
0x55, 0x29, 0x2a, 0x0e, 0x26, 0x73, 0x88, 0x8c, 0x0a, 0x58, 0x39, 0x32, 0x88, 0xbe, 0x70, 0x2c,
0x0d, 0x7d, 0x19, 0xca, 0xac, 0x7b, 0x10, 0x67, 0x6f, 0x79, 0x9a, 0x71, 0xaa, 0xdc, 0x4f, 0x50,
0x58, 0xa7, 0x33, 0xdf, 0x82, 0xd2, 0x8e, 0x6b, 0xd3, 0x40, 0xf4, 0x80, 0x4f, 0xc1, 0x2c, 0x4b,
0x35, 0x38, 0xf1, 0x49, 0x46, 0x5e, 0x16, 0xe1, 0xb9, 0x7b, 0xf9, 0x96, 0x1f, 0xc8, 0x36, 0xa6,
0x90, 0xb8, 0xd7, 0xeb, 0x1c, 0x88, 0x25, 0xee, 0xfa, 0x32, 0x2f, 0x10, 0xde, 0xfd, 0xb0, 0x36,
0xf5, 0xfe, 0x87, 0xb5, 0xa9, 0x0f, 0x3e, 0x54, 0xc5, 0xc2, 0xbb, 0x65, 0x80, 0xdd, 0x83, 0xef,
0x12, 0x5b, 0x86, 0xdd, 0x4c, 0x63, 0xbd, 0x68, 0x9a, 0x2c, 0xc6, 0x7a, 0xb9, 0x81, 0xa2, 0x4f,
0xc3, 0xe1, 0x14, 0x25, 0x5a, 0x87, 0x52, 0x3c, 0xb0, 0x53, 0xfe, 0xb1, 0x14, 0xf9, 0x5b, 0x3c,
0xd5, 0xc3, 0x09, 0x4d, 0x2a, 0x07, 0x4c, 0x9f, 0x9b, 0x03, 0x1a, 0x90, 0xef, 0xba, 0x8e, 0x6a,
0x98, 0x9f, 0x8d, 0x72, 0xf0, 0x9d, 0xed, 0xe6, 0x59, 0xbf, 0xf6, 0xd8, 0xb8, 0x39, 0x79, 0xd8,
0xeb, 0x10, 0x56, 0xbf, 0xb3, 0xdd, 0xc4, 0x9c, 0x79, 0x54, 0x40, 0x9a, 0x99, 0x30, 0x20, 0x5d,
0x05, 0x68, 0x25, 0x63, 0x07, 0x79, 0xdf, 0x63, 0x47, 0xd4, 0xc6, 0x0d, 0x1a, 0x15, 0x62, 0xb0,
0x64, 0xf3, 0xd6, 0x5c, 0xb5, 0xff, 0x2c, 0xb4, 0xda, 0x72, 0x90, 0x39, 0xd9, 0x9d, 0xb8, 0xa4,
0xd4, 0x2c, 0x6d, 0x0e, 0x0a, 0xc3, 0xc3, 0xf2, 0x51, 0x00, 0x4b, 0x8e, 0xea, 0x10, 0x13, 0xa5,
0xa5, 0x89, 0x95, 0x5e, 0xe4, 0x0a, 0x9b, 0x83, 0x82, 0xf0, 0xb0, 0x6c, 0xf4, 0x6d, 0x58, 0x89,
0x80, 0xc3, 0x6d, 0xba, 0x08, 0xd8, 0xf9, 0xc6, 0xea, 0x69, 0xbf, 0xb6, 0xd2, 0x1c, 0x4b, 0x85,
0x1f, 0x20, 0x01, 0x39, 0x30, 0xe3, 0xc9, 0x02, 0xb7, 0x2c, 0x8a, 0x92, 0xaf, 0x64, 0x5b, 0x45,
0xe2, 0xfd, 0x75, 0xbd, 0xb0, 0x8d, 0x47, 0x2e, 0xaa, 0xa6, 0x55, 0xb2, 0xd1, 0xdb, 0x50, 0xb6,
0x7c, 0x3f, 0x08, 0x2d, 0x39, 0x38, 0x98, 0x13, 0xaa, 0x36, 0x26, 0x56, 0xb5, 0x91, 0xc8, 0x18,
0x28, 0xa4, 0x35, 0x0c, 0xd6, 0x55, 0xa1, 0xfb, 0xb0, 0x10, 0xdc, 0xf7, 0x09, 0xc5, 0xe4, 0x90,
0x50, 0xe2, 0xdb, 0x84, 0x55, 0x2b, 0x42, 0xfb, 0x73, 0x19, 0xb5, 0xa7, 0x98, 0x13, 0x97, 0x4e,
0xc3, 0x19, 0x1e, 0xd4, 0x82, 0xea, 0x3c, 0xb6, 0xfa, 0x96, 0xe7, 0x7e, 0x8f, 0x50, 0x56, 0x9d,
0x4f, 0x66, 0xcd, 0x5b, 0x31, 0x14, 0x6b, 0x14, 0x68, 0x13, 0xca, 0xb6, 0xd7, 0x65, 0x21, 0x91,
0x83, 0xff, 0x85, 0xd4, 0x04, 0xef, 0xd2, 0xbd, 0x7b, 0xf7, 0xbe, 0xd3, 0x24, 0x1d, 0x4a, 0x6c,
0x2b, 0x24, 0xce, 0x66, 0x42, 0x88, 0x75, 0x2e, 0xd4, 0x85, 0x4a, 0x5b, 0xcf, 0x3b, 0xd5, 0x25,
0xb1, 0xd6, 0x6b, 0xd9, 0xd6, 0x3a, 0x9c, 0x19, 0x93, 0x32, 0x28, 0x85, 0xc3, 0x69, 0x2d, 0x2b,
0x2f, 0x40, 0xf9, 0x73, 0x76, 0x08, 0xbc, 0xc3, 0x18, 0x3c, 0xd5, 0x89, 0x3a, 0x8c, 0xdf, 0xe7,
0x60, 0x3e, 0x7d, 0x16, 0x03, 0x39, 0xb5, 0x90, 0x29, 0xa7, 0x46, 0xbd, 0xac, 0x31, 0xf6, 0xe5,
0x22, 0x0a, 0xf2, 0xf9, 0xb1, 0x41, 0x5e, 0xc5, 0xd2, 0xe9, 0x87, 0x89, 0xa5, 0x75, 0x00, 0x5e,
0xac, 0xd0, 0xc0, 0xf3, 0x08, 0x15, 0x61, 0xb4, 0xa8, 0x5e, 0x28, 0x62, 0x28, 0xd6, 0x28, 0x78,
0x49, 0x7d, 0xe0, 0x05, 0xf6, 0xb1, 0xd8, 0x82, 0x28, 0x04, 0x88, 0x00, 0x5a, 0x94, 0x25, 0x75,
0x63, 0x08, 0x8b, 0x47, 0x70, 0x98, 0x3d, 0xb8, 0xb8, 0x67, 0xd1, 0xd0, 0xb5, 0xbc, 0xe4, 0xba,
0x89, 0x9e, 0xe5, 0xcd, 0xa1, 0x8e, 0xe8, 0xd9, 0x49, 0xaf, 0x6d, 0xb2, 0xf9, 0x09, 0x2c, 0xe9,
0x8a, 0xcc, 0x3f, 0x1b, 0x70, 0x69, 0xa4, 0xee, 0x2f, 0xa0, 0x23, 0x7b, 0x33, 0xdd, 0x91, 0xbd,
0x98, 0x71, 0x94, 0x39, 0xca, 0xda, 0x31, 0xfd, 0xd9, 0x2c, 0x14, 0xf6, 0x78, 0x25, 0x6c, 0x7e,
0x6c, 0xc0, 0x9c, 0xf8, 0x35, 0xc9, 0x24, 0xb9, 0x96, 0x7e, 0x60, 0x28, 0x3d, 0xba, 0xc7, 0x85,
0x47, 0x31, 0x6a, 0x7e, 0xcf, 0x80, 0xf4, 0x0c, 0x17, 0xbd, 0x2c, 0xaf, 0x80, 0x11, 0x0f, 0x59,
0x27, 0x74, 0xff, 0x97, 0xc6, 0xb5, 0xa4, 0x17, 0x32, 0x4d, 0x2b, 0x9f, 0x86, 0x12, 0x0e, 0x82,
0x70, 0xcf, 0x0a, 0x8f, 0x18, 0xdf, 0xbb, 0x0e, 0xff, 0xa1, 0xb6, 0x57, 0xec, 0x9d, 0xc0, 0x60,
0x09, 0x37, 0x7f, 0x6a, 0xc0, 0xa5, 0xb1, 0xef, 0x46, 0x3c, 0x8a, 0xd8, 0xf1, 0x97, 0x5a, 0x51,
0xec, 0xc8, 0x09, 0x1d, 0xd6, 0xa8, 0x78, 0x2f, 0x99, 0x7a, 0x6c, 0x1a, 0xec, 0x25, 0x53, 0xda,
0x70, 0x9a, 0xd6, 0xfc, 0x7b, 0x0e, 0xd4, 0x43, 0xcd, 0xbf, 0xd9, 0xe9, 0x9f, 0x1c, 0x78, 0x26,
0x9a, 0x4f, 0x3f, 0x13, 0xc5, 0x6f, 0x42, 0xda, 0x3b, 0x49, 0xfe, 0xc1, 0xef, 0x24, 0xe8, 0xf9,
0xf8, 0xe9, 0x45, 0xfa, 0xd0, 0x6a, 0xfa, 0xe9, 0xe5, 0xac, 0x5f, 0x9b, 0x53, 0xc2, 0xd3, 0x4f,
0x31, 0xf7, 0x60, 0xd6, 0x21, 0xa1, 0xe5, 0x7a, 0xb2, 0x2f, 0xcc, 0xfc, 0x98, 0x20, 0x85, 0x35,
0x25, 0x6b, 0xa3, 0xcc, 0x6d, 0x52, 0x1f, 0x38, 0x12, 0xc8, 0x03, 0xb6, 0x1d, 0x38, 0xb2, 0xad,
0x29, 0x24, 0x01, 0x7b, 0x33, 0x70, 0x08, 0x16, 0x18, 0xf3, 0x7d, 0x03, 0xca, 0x52, 0xd2, 0xa6,
0xd5, 0x65, 0x04, 0x5d, 0x89, 0x57, 0x21, 0x8f, 0xfb, 0x92, 0xfe, 0xc6, 0x76, 0xd6, 0xaf, 0x95,
0x04, 0x99, 0xe8, 0x88, 0x46, 0xbc, 0x25, 0xe5, 0xce, 0xd9, 0xa3, 0xc7, 0xa1, 0x20, 0x2e, 0x90,
0xda, 0xcc, 0xe4, 0xb1, 0x90, 0x03, 0xb1, 0xc4, 0x99, 0x9f, 0xe6, 0xa0, 0x92, 0x5a, 0x5c, 0x86,
0xe6, 0x22, 0x1e, 0xa1, 0xe6, 0x32, 0x8c, 0xe5, 0xc7, 0x3f, 0xcd, 0xab, 0xf4, 0x35, 0xf3, 0x30,
0xe9, 0xeb, 0x9b, 0x30, 0x63, 0xf3, 0x3d, 0x8a, 0xfe, 0xe9, 0x71, 0x65, 0x92, 0xe3, 0x14, 0xbb,
0x9b, 0x78, 0xa3, 0xf8, 0x64, 0x58, 0x09, 0x44, 0x37, 0x61, 0x89, 0x92, 0x90, 0xf6, 0x36, 0x0e,
0x43, 0x42, 0xf5, 0x61, 0x42, 0x21, 0x29, 0xe1, 0xf1, 0x20, 0x01, 0x1e, 0xe6, 0x31, 0x0f, 0x60,
0xee, 0xb6, 0x75, 0xe0, 0xc5, 0xcf, 0x63, 0x18, 0x2a, 0xae, 0x6f, 0x7b, 0x5d, 0x87, 0xc8, 0x80,
0x1e, 0x45, 0xaf, 0xe8, 0xd2, 0x6e, 0xeb, 0xc8, 0xb3, 0x7e, 0xed, 0x42, 0x0a, 0x20, 0xdf, 0x83,
0x70, 0x5a, 0x84, 0xe9, 0xc1, 0xf4, 0x17, 0xd8, 0x8e, 0x7e, 0x0b, 0x4a, 0x49, 0xc3, 0xf0, 0x88,
0x55, 0x9a, 0x6f, 0x42, 0x91, 0x7b, 0x7c, 0xd4, 0xe8, 0x9e, 0x53, 0x25, 0xa5, 0x6b, 0xaf, 0x5c,
0x96, 0xda, 0x4b, 0x3c, 0xb2, 0xde, 0xe9, 0x38, 0x0f, 0xf9, 0xc8, 0x9a, 0x7b, 0x98, 0xcc, 0x97,
0x9f, 0x30, 0xf3, 0x5d, 0x05, 0xf9, 0x47, 0x14, 0x9e, 0x64, 0x64, 0x01, 0xa1, 0x25, 0x19, 0x3d,
0xff, 0x6b, 0x2f, 0x0c, 0x3f, 0x32, 0x00, 0xc4, 0x28, 0xef, 0xc6, 0x09, 0xf1, 0xc3, 0x0c, 0xcf,
0xf9, 0x77, 0x60, 0x26, 0x90, 0x1e, 0x29, 0x1f, 0x5a, 0x27, 0x9c, 0x17, 0xc7, 0x17, 0x49, 0xfa,
0x24, 0x56, 0xc2, 0x1a, 0xaf, 0x7e, 0xf4, 0xd9, 0xea, 0xd4, 0xc7, 0x9f, 0xad, 0x4e, 0x7d, 0xf2,
0xd9, 0xea, 0xd4, 0x3b, 0xa7, 0xab, 0xc6, 0x47, 0xa7, 0xab, 0xc6, 0xc7, 0xa7, 0xab, 0xc6, 0x27,
0xa7, 0xab, 0xc6, 0xa7, 0xa7, 0xab, 0xc6, 0xfb, 0x7f, 0x5d, 0x9d, 0xba, 0xf7, 0x44, 0x96, 0x3f,
0xf8, 0xfd, 0x2b, 0x00, 0x00, 0xff, 0xff, 0x2d, 0x24, 0x60, 0xec, 0x20, 0x28, 0x00, 0x00,
}
func (m *APIGroup) Marshal() (dAtA []byte, err error) {
@ -2664,9 +2665,9 @@ func (m *ObjectMeta) MarshalToSizedBuffer(dAtA []byte) (int, error) {
dAtA[i] = 0x8a
}
}
i -= len(m.ClusterName)
copy(dAtA[i:], m.ClusterName)
i = encodeVarintGenerated(dAtA, i, uint64(len(m.ClusterName)))
i -= len(m.ZZZ_DeprecatedClusterName)
copy(dAtA[i:], m.ZZZ_DeprecatedClusterName)
i = encodeVarintGenerated(dAtA, i, uint64(len(m.ZZZ_DeprecatedClusterName)))
i--
dAtA[i] = 0x7a
if len(m.Finalizers) > 0 {
@ -4000,7 +4001,7 @@ func (m *ObjectMeta) Size() (n int) {
n += 1 + l + sovGenerated(uint64(l))
}
}
l = len(m.ClusterName)
l = len(m.ZZZ_DeprecatedClusterName)
n += 1 + l + sovGenerated(uint64(l))
if len(m.ManagedFields) > 0 {
for _, e := range m.ManagedFields {
@ -4594,7 +4595,7 @@ func (this *ObjectMeta) String() string {
`Annotations:` + mapStringForAnnotations + `,`,
`OwnerReferences:` + repeatedStringForOwnerReferences + `,`,
`Finalizers:` + fmt.Sprintf("%v", this.Finalizers) + `,`,
`ClusterName:` + fmt.Sprintf("%v", this.ClusterName) + `,`,
`ZZZ_DeprecatedClusterName:` + fmt.Sprintf("%v", this.ZZZ_DeprecatedClusterName) + `,`,
`ManagedFields:` + repeatedStringForManagedFields + `,`,
`}`,
}, "")
@ -9213,7 +9214,7 @@ func (m *ObjectMeta) Unmarshal(dAtA []byte) error {
iNdEx = postIndex
case 15:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field ClusterName", wireType)
return fmt.Errorf("proto: wrong wireType = %d for field ZZZ_DeprecatedClusterName", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
@ -9241,7 +9242,7 @@ func (m *ObjectMeta) Unmarshal(dAtA []byte) error {
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.ClusterName = string(dAtA[iNdEx:postIndex])
m.ZZZ_DeprecatedClusterName = string(dAtA[iNdEx:postIndex])
iNdEx = postIndex
case 17:
if wireType != 2 {

View File

@ -788,9 +788,12 @@ message ObjectMeta {
// +patchStrategy=merge
repeated string finalizers = 14;
// The name of the cluster which the object belongs to.
// This is used to distinguish resources with same name and namespace in different clusters.
// This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.
// Deprecated: ClusterName is a legacy field that was always cleared by
// the system and never used; it will be removed completely in 1.25.
//
// The name in the go struct is changed to help clients detect
// accidental use.
//
// +optional
optional string clusterName = 15;

View File

@ -205,7 +205,7 @@ func TestResetObjectMetaForStatus(t *testing.T) {
existingMeta.SetUID(types.UID(""))
existingMeta.SetName("")
existingMeta.SetNamespace("")
existingMeta.SetClusterName("")
existingMeta.SetZZZ_DeprecatedClusterName("")
existingMeta.SetCreationTimestamp(Time{})
existingMeta.SetDeletionTimestamp(nil)
existingMeta.SetDeletionGracePeriodSeconds(nil)

View File

@ -59,8 +59,8 @@ type Object interface {
SetFinalizers(finalizers []string)
GetOwnerReferences() []OwnerReference
SetOwnerReferences([]OwnerReference)
GetClusterName() string
SetClusterName(clusterName string)
GetZZZ_DeprecatedClusterName() string
SetZZZ_DeprecatedClusterName(clusterName string)
GetManagedFields() []ManagedFieldsEntry
SetManagedFields(managedFields []ManagedFieldsEntry)
}
@ -172,8 +172,10 @@ func (meta *ObjectMeta) GetOwnerReferences() []OwnerReference { return m
func (meta *ObjectMeta) SetOwnerReferences(references []OwnerReference) {
meta.OwnerReferences = references
}
func (meta *ObjectMeta) GetClusterName() string { return meta.ClusterName }
func (meta *ObjectMeta) SetClusterName(clusterName string) { meta.ClusterName = clusterName }
func (meta *ObjectMeta) GetZZZ_DeprecatedClusterName() string { return meta.ZZZ_DeprecatedClusterName }
func (meta *ObjectMeta) SetZZZ_DeprecatedClusterName(clusterName string) {
meta.ZZZ_DeprecatedClusterName = clusterName
}
func (meta *ObjectMeta) GetManagedFields() []ManagedFieldsEntry { return meta.ManagedFields }
func (meta *ObjectMeta) SetManagedFields(managedFields []ManagedFieldsEntry) {
meta.ManagedFields = managedFields

View File

@ -257,11 +257,14 @@ type ObjectMeta struct {
// +patchStrategy=merge
Finalizers []string `json:"finalizers,omitempty" patchStrategy:"merge" protobuf:"bytes,14,rep,name=finalizers"`
// The name of the cluster which the object belongs to.
// This is used to distinguish resources with same name and namespace in different clusters.
// This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.
// Deprecated: ClusterName is a legacy field that was always cleared by
// the system and never used; it will be removed completely in 1.25.
//
// The name in the go struct is changed to help clients detect
// accidental use.
//
// +optional
ClusterName string `json:"clusterName,omitempty" protobuf:"bytes,15,opt,name=clusterName"`
ZZZ_DeprecatedClusterName string `json:"clusterName,omitempty" protobuf:"bytes,15,opt,name=clusterName"`
// ManagedFields maps workflow-id and version to the set of fields
// that are managed by that workflow. This is mostly for internal

View File

@ -253,7 +253,7 @@ var map_ObjectMeta = map[string]string{
"annotations": "Annotations is an unstructured key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: http://kubernetes.io/docs/user-guide/annotations",
"ownerReferences": "List of objects depended by this object. If ALL objects in the list have been deleted, this object will be garbage collected. If this object is managed by a controller, then an entry in this list will point to this controller, with the controller field set to true. There cannot be more than one managing controller.",
"finalizers": "Must be empty before the object is deleted from the registry. Each entry is an identifier for the responsible component that will remove the entry from the list. If the deletionTimestamp of the object is non-nil, entries in this list can only be removed. Finalizers may be processed and removed in any order. Order is NOT enforced because it introduces significant risk of stuck finalizers. finalizers is a shared field, any actor with permission can reorder it. If the finalizer list is processed in order, then this can lead to a situation in which the component responsible for the first finalizer in the list is waiting for a signal (field value, external system, or other) produced by a component responsible for a finalizer later in the list, resulting in a deadlock. Without enforced ordering finalizers are free to order amongst themselves and are not vulnerable to ordering changes in the list.",
"clusterName": "The name of the cluster which the object belongs to. This is used to distinguish resources with same name and namespace in different clusters. This field is not set anywhere right now and apiserver is going to ignore it if set in create or update request.",
"clusterName": "Deprecated: ClusterName is a legacy field that was always cleared by the system and never used; it will be removed completely in 1.25.\n\nThe name in the go struct is changed to help clients detect accidental use.",
"managedFields": "ManagedFields maps workflow-id and version to the set of fields that are managed by that workflow. This is mostly for internal housekeeping, and users typically shouldn't need to set or understand this field. A workflow can be the user's name, a controller's name, or the name of a specific apply path like \"ci-cd\". The set of fields is always in the version that the workflow used when modifying the object.",
}

View File

@ -444,11 +444,11 @@ func (u *Unstructured) SetFinalizers(finalizers []string) {
u.setNestedStringSlice(finalizers, "metadata", "finalizers")
}
func (u *Unstructured) GetClusterName() string {
func (u *Unstructured) GetZZZ_DeprecatedClusterName() string {
return getNestedString(u.Object, "metadata", "clusterName")
}
func (u *Unstructured) SetClusterName(clusterName string) {
func (u *Unstructured) SetZZZ_DeprecatedClusterName(clusterName string) {
if len(clusterName) == 0 {
RemoveNestedField(u.Object, "metadata", "clusterName")
return

View File

@ -105,7 +105,7 @@ func TestUnstructuredMetadataOmitempty(t *testing.T) {
u.SetAnnotations(nil)
u.SetOwnerReferences(nil)
u.SetFinalizers(nil)
u.SetClusterName("")
u.SetZZZ_DeprecatedClusterName("")
u.SetManagedFields(nil)
gotMetadata, _, err := unstructured.NestedFieldNoCopy(u.UnstructuredContent(), "metadata")
@ -147,6 +147,6 @@ func setObjectMetaUsingAccessors(u, uCopy *unstructured.Unstructured) {
uCopy.SetAnnotations(u.GetAnnotations())
uCopy.SetOwnerReferences(u.GetOwnerReferences())
uCopy.SetFinalizers(u.GetFinalizers())
uCopy.SetClusterName(u.GetClusterName())
uCopy.SetZZZ_DeprecatedClusterName(u.GetZZZ_DeprecatedClusterName())
uCopy.SetManagedFields(u.GetManagedFields())
}

View File

@ -245,8 +245,8 @@ func TestUnstructuredGetters(t *testing.T) {
if got, want := unstruct.GetFinalizers(), []string{"finalizer.1", "finalizer.2"}; !reflect.DeepEqual(got, want) {
t.Errorf("GetFinalizers()=%v, want %v", got, want)
}
if got, want := unstruct.GetClusterName(), "cluster123"; got != want {
t.Errorf("GetClusterName()=%v, want %v", got, want)
if got, want := unstruct.GetZZZ_DeprecatedClusterName(), "cluster123"; got != want {
t.Errorf("GetZZZ_DeprecatedClusterName()=%v, want %v", got, want)
}
if got, want := unstruct.GetDeletionGracePeriodSeconds(), &ten; !reflect.DeepEqual(got, want) {
t.Errorf("GetDeletionGracePeriodSeconds()=%v, want %v", got, want)
@ -338,7 +338,7 @@ func TestUnstructuredSetters(t *testing.T) {
}
unstruct.SetOwnerReferences(newOwnerReferences)
unstruct.SetFinalizers([]string{"finalizer.1", "finalizer.2"})
unstruct.SetClusterName("cluster123")
unstruct.SetZZZ_DeprecatedClusterName("cluster123")
unstruct.SetDeletionGracePeriodSeconds(&ten)
unstruct.SetGeneration(ten)
@ -534,7 +534,7 @@ func TestAccessorMethods(t *testing.T) {
{accessor: "Annotations", val: map[string]string{"foo": "bar"}},
{accessor: "Finalizers", val: []string{"foo"}},
{accessor: "OwnerReferences", val: []metav1.OwnerReference{{Name: "foo"}}},
{accessor: "ClusterName", val: "foo"},
{accessor: "ZZZ_DeprecatedClusterName", val: "foo"},
}
for i, test := range tests {
t.Logf("evaluating test %d (%s)", i, test.accessor)

View File

@ -267,7 +267,7 @@ func TestApplyStripsFields(t *testing.T) {
newObj.SetName("b")
newObj.SetNamespace("b")
newObj.SetUID("b")
newObj.SetClusterName("b")
newObj.SetZZZ_DeprecatedClusterName("b")
newObj.SetGeneration(0)
newObj.SetResourceVersion("b")
newObj.SetCreationTimestamp(metav1.NewTime(time.Now()))

View File

@ -123,9 +123,10 @@ func BeforeCreate(strategy RESTCreateStrategy, ctx context.Context, obj runtime.
objectMeta.SetManagedFields(nil)
}
// ClusterName is ignored and should not be saved
if len(objectMeta.GetClusterName()) > 0 {
objectMeta.SetClusterName("")
// ZZZ_DeprecatedClusterName is ignored and should not be saved
if len(objectMeta.GetZZZ_DeprecatedClusterName()) > 0 {
objectMeta.SetZZZ_DeprecatedClusterName("")
warning.AddWarning(ctx, "", "metadata.clusterName was specified. This field is not preserved and will be removed from the schema in 1.25")
}
if errs := strategy.Validate(ctx, obj); len(errs) > 0 {

View File

@ -168,8 +168,8 @@ func (t *Tester) TestCreate(valid runtime.Object, createFn CreateFunc, getFn Get
t.testCreateInvokesValidation(opts, invalid...)
t.testCreateValidatesNames(valid.DeepCopyObject(), dryRunOpts)
t.testCreateValidatesNames(valid.DeepCopyObject(), opts)
t.testCreateIgnoreClusterName(valid.DeepCopyObject(), dryRunOpts)
t.testCreateIgnoreClusterName(valid.DeepCopyObject(), opts)
t.testCreateIgnoreZZZ_DeprecatedClusterName(valid.DeepCopyObject(), dryRunOpts)
t.testCreateIgnoreZZZ_DeprecatedClusterName(valid.DeepCopyObject(), opts)
}
// Test updating an object.
@ -190,7 +190,7 @@ func (t *Tester) TestUpdate(valid runtime.Object, createFn CreateFunc, getFn Get
t.testUpdatePropagatesUpdatedObjectError(valid.DeepCopyObject(), createFn, getFn, dryRunOpts)
t.testUpdatePropagatesUpdatedObjectError(valid.DeepCopyObject(), createFn, getFn, opts)
t.testUpdateIgnoreGenerationUpdates(valid.DeepCopyObject(), createFn, getFn)
t.testUpdateIgnoreClusterName(valid.DeepCopyObject(), createFn, getFn)
t.testUpdateIgnoreZZZ_DeprecatedClusterName(valid.DeepCopyObject(), createFn, getFn)
}
// Test deleting an object.
@ -506,10 +506,10 @@ func (t *Tester) testCreateResetsUserData(valid runtime.Object, opts metav1.Crea
}
}
func (t *Tester) testCreateIgnoreClusterName(valid runtime.Object, opts metav1.CreateOptions) {
func (t *Tester) testCreateIgnoreZZZ_DeprecatedClusterName(valid runtime.Object, opts metav1.CreateOptions) {
objectMeta := t.getObjectMetaOrFail(valid)
objectMeta.SetName(t.namer(3))
objectMeta.SetClusterName("clustername-to-ignore")
objectMeta.SetZZZ_DeprecatedClusterName("clustername-to-ignore")
obj, err := t.storage.(rest.Creater).Create(t.TestContext(), valid.DeepCopyObject(), rest.ValidateAllObjectFunc, &opts)
if err != nil {
@ -517,8 +517,8 @@ func (t *Tester) testCreateIgnoreClusterName(valid runtime.Object, opts metav1.C
}
defer t.delete(t.TestContext(), obj)
createdObjectMeta := t.getObjectMetaOrFail(obj)
if len(createdObjectMeta.GetClusterName()) != 0 {
t.Errorf("Expected empty clusterName on created object, got '%v'", createdObjectMeta.GetClusterName())
if len(createdObjectMeta.GetZZZ_DeprecatedClusterName()) != 0 {
t.Errorf("Expected empty clusterName on created object, got '%v'", createdObjectMeta.GetZZZ_DeprecatedClusterName())
}
}
@ -790,7 +790,7 @@ func (t *Tester) testUpdateRejectsMismatchedNamespace(obj runtime.Object, create
}
}
func (t *Tester) testUpdateIgnoreClusterName(obj runtime.Object, createFn CreateFunc, getFn GetFunc) {
func (t *Tester) testUpdateIgnoreZZZ_DeprecatedClusterName(obj runtime.Object, createFn CreateFunc, getFn GetFunc) {
ctx := t.TestContext()
foo := obj.DeepCopyObject()
@ -808,7 +808,7 @@ func (t *Tester) testUpdateIgnoreClusterName(obj runtime.Object, createFn Create
older := storedFoo.DeepCopyObject()
olderMeta := t.getObjectMetaOrFail(older)
olderMeta.SetClusterName("clustername-to-ignore")
olderMeta.SetZZZ_DeprecatedClusterName("clustername-to-ignore")
_, _, err = t.storage.(rest.Updater).Update(t.TestContext(), olderMeta.GetName(), rest.DefaultUpdatedObjectInfo(older), rest.ValidateAllObjectFunc, rest.ValidateAllObjectUpdateFunc, false, &metav1.UpdateOptions{})
if err != nil {
@ -819,7 +819,7 @@ func (t *Tester) testUpdateIgnoreClusterName(obj runtime.Object, createFn Create
if err != nil {
t.Errorf("unexpected error: %v", err)
}
if clusterName := t.getObjectMetaOrFail(updatedFoo).GetClusterName(); len(clusterName) != 0 {
if clusterName := t.getObjectMetaOrFail(updatedFoo).GetZZZ_DeprecatedClusterName(); len(clusterName) != 0 {
t.Errorf("Unexpected clusterName update: expected empty, got %v", clusterName)
}

View File

@ -136,9 +136,10 @@ func BeforeUpdate(strategy RESTUpdateStrategy, ctx context.Context, obj, old run
strategy.PrepareForUpdate(ctx, obj, old)
// ClusterName is ignored and should not be saved
if len(objectMeta.GetClusterName()) > 0 {
objectMeta.SetClusterName("")
// ZZZ_DeprecatedClusterName is ignored and should not be saved
if len(objectMeta.GetZZZ_DeprecatedClusterName()) > 0 {
objectMeta.SetZZZ_DeprecatedClusterName("")
warning.AddWarning(ctx, "", "metadata.clusterName was specified. This field is not preserved and will be removed from the schema in 1.25")
}
// Use the existing UID if none is provided
if len(objectMeta.GetUID()) == 0 {

View File

@ -395,15 +395,15 @@ func (o *cachingObject) SetOwnerReferences(references []metav1.OwnerReference) {
func() { o.object.SetOwnerReferences(references) },
)
}
func (o *cachingObject) GetClusterName() string {
func (o *cachingObject) GetZZZ_DeprecatedClusterName() string {
o.lock.RLock()
defer o.lock.RUnlock()
return o.object.GetClusterName()
return o.object.GetZZZ_DeprecatedClusterName()
}
func (o *cachingObject) SetClusterName(clusterName string) {
func (o *cachingObject) SetZZZ_DeprecatedClusterName(clusterName string) {
o.conditionalSet(
func() bool { return o.object.GetClusterName() == clusterName },
func() { o.object.SetClusterName(clusterName) },
func() bool { return o.object.GetZZZ_DeprecatedClusterName() == clusterName },
func() { o.object.SetZZZ_DeprecatedClusterName(clusterName) },
)
}
func (o *cachingObject) GetManagedFields() []metav1.ManagedFieldsEntry {

View File

@ -92,31 +92,31 @@ func TestCachingObjectFieldAccessors(t *testing.T) {
// Given accessors for all fields implement the same logic,
// we are choosing an arbitrary one to test.
clusterName := "clusterName"
object.SetClusterName(clusterName)
namespace := "namespace"
object.SetNamespace(namespace)
encodeClusterName := func(obj runtime.Object, w io.Writer) error {
encodeNamespace := func(obj runtime.Object, w io.Writer) error {
accessor, err := meta.Accessor(obj)
if err != nil {
t.Fatalf("failed to get accessor for %#v: %v", obj, err)
}
_, err = w.Write([]byte(accessor.GetClusterName()))
_, err = w.Write([]byte(accessor.GetNamespace()))
return err
}
buffer := bytes.NewBuffer(nil)
if err := object.CacheEncode("", encodeClusterName, buffer); err != nil {
if err := object.CacheEncode("", encodeNamespace, buffer); err != nil {
t.Errorf("unexpected error: %v", err)
}
if a, e := buffer.String(), clusterName; a != e {
if a, e := buffer.String(), namespace; a != e {
t.Errorf("unexpected serialization: %s, expected: %s", a, e)
}
// GetObject should also set clusterName.
// GetObject should also set namespace.
buffer.Reset()
if err := encodeClusterName(object.GetObject(), buffer); err != nil {
if err := encodeNamespace(object.GetObject(), buffer); err != nil {
t.Errorf("unexpected error: %v", err)
}
if a, e := buffer.String(), clusterName; a != e {
if a, e := buffer.String(), namespace; a != e {
t.Errorf("unexpected serialization: %s, expected: %s", a, e)
}
}
@ -140,7 +140,7 @@ func TestCachingObjectRaces(t *testing.T) {
for i := 0; i < numWorkers; i++ {
go func() {
defer wg.Done()
object.SetClusterName("clusterName")
object.SetNamespace("namespace")
buffer := bytes.NewBuffer(nil)
for _, encoder := range encoders {
buffer.Reset()
@ -156,8 +156,8 @@ func TestCachingObjectRaces(t *testing.T) {
t.Errorf("failed to get accessor: %v", err)
return
}
if clusterName := accessor.GetClusterName(); clusterName != "clusterName" {
t.Errorf("unexpected clusterName: %s", clusterName)
if namespace := accessor.GetNamespace(); namespace != "namespace" {
t.Errorf("unexpected namespace: %s", namespace)
}
}()
}

View File

@ -232,15 +232,6 @@ func (b *MutatingWebhookConfigurationApplyConfiguration) WithFinalizers(values .
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *MutatingWebhookConfigurationApplyConfiguration) WithClusterName(value string) *MutatingWebhookConfigurationApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *MutatingWebhookConfigurationApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -232,15 +232,6 @@ func (b *ValidatingWebhookConfigurationApplyConfiguration) WithFinalizers(values
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ValidatingWebhookConfigurationApplyConfiguration) WithClusterName(value string) *ValidatingWebhookConfigurationApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ValidatingWebhookConfigurationApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -232,15 +232,6 @@ func (b *MutatingWebhookConfigurationApplyConfiguration) WithFinalizers(values .
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *MutatingWebhookConfigurationApplyConfiguration) WithClusterName(value string) *MutatingWebhookConfigurationApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *MutatingWebhookConfigurationApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -232,15 +232,6 @@ func (b *ValidatingWebhookConfigurationApplyConfiguration) WithFinalizers(values
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ValidatingWebhookConfigurationApplyConfiguration) WithClusterName(value string) *ValidatingWebhookConfigurationApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ValidatingWebhookConfigurationApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -233,15 +233,6 @@ func (b *StorageVersionApplyConfiguration) WithFinalizers(values ...string) *Sto
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *StorageVersionApplyConfiguration) WithClusterName(value string) *StorageVersionApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *StorageVersionApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -236,15 +236,6 @@ func (b *ControllerRevisionApplyConfiguration) WithFinalizers(values ...string)
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ControllerRevisionApplyConfiguration) WithClusterName(value string) *ControllerRevisionApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ControllerRevisionApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *DaemonSetApplyConfiguration) WithFinalizers(values ...string) *DaemonSe
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *DaemonSetApplyConfiguration) WithClusterName(value string) *DaemonSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *DaemonSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *DeploymentApplyConfiguration) WithFinalizers(values ...string) *Deploym
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *DeploymentApplyConfiguration) WithClusterName(value string) *DeploymentApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *DeploymentApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *ReplicaSetApplyConfiguration) WithFinalizers(values ...string) *Replica
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ReplicaSetApplyConfiguration) WithClusterName(value string) *ReplicaSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ReplicaSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *StatefulSetApplyConfiguration) WithFinalizers(values ...string) *Statef
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *StatefulSetApplyConfiguration) WithClusterName(value string) *StatefulSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *StatefulSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -236,15 +236,6 @@ func (b *ControllerRevisionApplyConfiguration) WithFinalizers(values ...string)
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ControllerRevisionApplyConfiguration) WithClusterName(value string) *ControllerRevisionApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ControllerRevisionApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *DeploymentApplyConfiguration) WithFinalizers(values ...string) *Deploym
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *DeploymentApplyConfiguration) WithClusterName(value string) *DeploymentApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *DeploymentApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *StatefulSetApplyConfiguration) WithFinalizers(values ...string) *Statef
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *StatefulSetApplyConfiguration) WithClusterName(value string) *StatefulSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *StatefulSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -236,15 +236,6 @@ func (b *ControllerRevisionApplyConfiguration) WithFinalizers(values ...string)
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ControllerRevisionApplyConfiguration) WithClusterName(value string) *ControllerRevisionApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ControllerRevisionApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *DaemonSetApplyConfiguration) WithFinalizers(values ...string) *DaemonSe
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *DaemonSetApplyConfiguration) WithClusterName(value string) *DaemonSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *DaemonSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *DeploymentApplyConfiguration) WithFinalizers(values ...string) *Deploym
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *DeploymentApplyConfiguration) WithClusterName(value string) *DeploymentApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *DeploymentApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *ReplicaSetApplyConfiguration) WithFinalizers(values ...string) *Replica
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ReplicaSetApplyConfiguration) WithClusterName(value string) *ReplicaSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ReplicaSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -195,15 +195,6 @@ func (b *ScaleApplyConfiguration) WithFinalizers(values ...string) *ScaleApplyCo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ScaleApplyConfiguration) WithClusterName(value string) *ScaleApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ScaleApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *StatefulSetApplyConfiguration) WithFinalizers(values ...string) *Statef
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *StatefulSetApplyConfiguration) WithClusterName(value string) *StatefulSetApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *StatefulSetApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *HorizontalPodAutoscalerApplyConfiguration) WithFinalizers(values ...str
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *HorizontalPodAutoscalerApplyConfiguration) WithClusterName(value string) *HorizontalPodAutoscalerApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *HorizontalPodAutoscalerApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -194,15 +194,6 @@ func (b *ScaleApplyConfiguration) WithFinalizers(values ...string) *ScaleApplyCo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ScaleApplyConfiguration) WithClusterName(value string) *ScaleApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ScaleApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *HorizontalPodAutoscalerApplyConfiguration) WithFinalizers(values ...str
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *HorizontalPodAutoscalerApplyConfiguration) WithClusterName(value string) *HorizontalPodAutoscalerApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *HorizontalPodAutoscalerApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *HorizontalPodAutoscalerApplyConfiguration) WithFinalizers(values ...str
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *HorizontalPodAutoscalerApplyConfiguration) WithClusterName(value string) *HorizontalPodAutoscalerApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *HorizontalPodAutoscalerApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *HorizontalPodAutoscalerApplyConfiguration) WithFinalizers(values ...str
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *HorizontalPodAutoscalerApplyConfiguration) WithClusterName(value string) *HorizontalPodAutoscalerApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *HorizontalPodAutoscalerApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *CronJobApplyConfiguration) WithFinalizers(values ...string) *CronJobApp
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *CronJobApplyConfiguration) WithClusterName(value string) *CronJobApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *CronJobApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *JobApplyConfiguration) WithFinalizers(values ...string) *JobApplyConfig
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *JobApplyConfiguration) WithClusterName(value string) *JobApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *JobApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -173,15 +173,6 @@ func (b *JobTemplateSpecApplyConfiguration) WithFinalizers(values ...string) *Jo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *JobTemplateSpecApplyConfiguration) WithClusterName(value string) *JobTemplateSpecApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *JobTemplateSpecApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -235,15 +235,6 @@ func (b *CronJobApplyConfiguration) WithFinalizers(values ...string) *CronJobApp
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *CronJobApplyConfiguration) WithClusterName(value string) *CronJobApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *CronJobApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -174,15 +174,6 @@ func (b *JobTemplateSpecApplyConfiguration) WithFinalizers(values ...string) *Jo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *JobTemplateSpecApplyConfiguration) WithClusterName(value string) *JobTemplateSpecApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *JobTemplateSpecApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -233,15 +233,6 @@ func (b *CertificateSigningRequestApplyConfiguration) WithFinalizers(values ...s
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *CertificateSigningRequestApplyConfiguration) WithClusterName(value string) *CertificateSigningRequestApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *CertificateSigningRequestApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -233,15 +233,6 @@ func (b *CertificateSigningRequestApplyConfiguration) WithFinalizers(values ...s
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *CertificateSigningRequestApplyConfiguration) WithClusterName(value string) *CertificateSigningRequestApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *CertificateSigningRequestApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -234,15 +234,6 @@ func (b *LeaseApplyConfiguration) WithFinalizers(values ...string) *LeaseApplyCo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *LeaseApplyConfiguration) WithClusterName(value string) *LeaseApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *LeaseApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -234,15 +234,6 @@ func (b *LeaseApplyConfiguration) WithFinalizers(values ...string) *LeaseApplyCo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *LeaseApplyConfiguration) WithClusterName(value string) *LeaseApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *LeaseApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -232,15 +232,6 @@ func (b *ComponentStatusApplyConfiguration) WithFinalizers(values ...string) *Co
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ComponentStatusApplyConfiguration) WithClusterName(value string) *ComponentStatusApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ComponentStatusApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -236,15 +236,6 @@ func (b *ConfigMapApplyConfiguration) WithFinalizers(values ...string) *ConfigMa
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *ConfigMapApplyConfiguration) WithClusterName(value string) *ConfigMapApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *ConfigMapApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -234,15 +234,6 @@ func (b *EndpointsApplyConfiguration) WithFinalizers(values ...string) *Endpoint
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *EndpointsApplyConfiguration) WithClusterName(value string) *EndpointsApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *EndpointsApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

View File

@ -247,15 +247,6 @@ func (b *EventApplyConfiguration) WithFinalizers(values ...string) *EventApplyCo
return b
}
// WithClusterName sets the ClusterName field in the declarative configuration to the given value
// and returns the receiver, so that objects can be built by chaining "With" function invocations.
// If called multiple times, the ClusterName field is set to the value of the last call.
func (b *EventApplyConfiguration) WithClusterName(value string) *EventApplyConfiguration {
b.ensureObjectMetaApplyConfigurationExists()
b.ClusterName = &value
return b
}
func (b *EventApplyConfiguration) ensureObjectMetaApplyConfigurationExists() {
if b.ObjectMetaApplyConfiguration == nil {
b.ObjectMetaApplyConfiguration = &v1.ObjectMetaApplyConfiguration{}

Some files were not shown because too many files have changed in this diff Show More