diff --git a/api/swagger-spec/v1beta1.json b/api/swagger-spec/v1beta1.json index d11efee40a4..c4e9902c129 100644 --- a/api/swagger-spec/v1beta1.json +++ b/api/swagger-spec/v1beta1.json @@ -2941,7 +2941,7 @@ "description": "Completions specifies the desired number of successfully finished pods the job should be run with. Defaults to 1. More info: http://releases.k8s.io/HEAD/docs/user-guide/jobs.md" }, "selector": { - "$ref": "v1beta1.PodSelector", + "$ref": "v1beta1.LabelSelector", "description": "Selector is a label query over pods that should match the pod count. More info: http://releases.k8s.io/HEAD/docs/user-guide/labels.md#label-selectors" }, "template": { @@ -2950,9 +2950,9 @@ } } }, - "v1beta1.PodSelector": { - "id": "v1beta1.PodSelector", - "description": "A pod selector is a label query over a set of pods. The result of matchLabels and matchExpressions are ANDed. An empty pod selector matches all objects. A null pod selector matches no objects.", + "v1beta1.LabelSelector": { + "id": "v1beta1.LabelSelector", + "description": "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.", "properties": { "matchLabels": { "type": "any", @@ -2961,15 +2961,15 @@ "matchExpressions": { "type": "array", "items": { - "$ref": "v1beta1.PodSelectorRequirement" + "$ref": "v1beta1.LabelSelectorRequirement" }, - "description": "matchExpressions is a list of pod selector requirements. The requirements are ANDed." + "description": "matchExpressions is a list of label selector requirements. The requirements are ANDed." } } }, - "v1beta1.PodSelectorRequirement": { - "id": "v1beta1.PodSelectorRequirement", - "description": "A pod selector requirement is a selector that contains values, a key, and an operator that relates the key and values.", + "v1beta1.LabelSelectorRequirement": { + "id": "v1beta1.LabelSelectorRequirement", + "description": "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.", "required": [ "key", "operator" diff --git a/docs/api-reference/extensions/v1beta1/definitions.html b/docs/api-reference/extensions/v1beta1/definitions.html index 0a41869c99d..5de61b22407 100755 --- a/docs/api-reference/extensions/v1beta1/definitions.html +++ b/docs/api-reference/extensions/v1beta1/definitions.html @@ -398,54 +398,6 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }

Definitions

-

v1beta1.PodSelectorRequirement

-
-

A pod selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

-
- ------- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescriptionRequiredSchemaDefault

key

key is the label key that the selector applies to.

true

string

operator

operator represents a key’s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.

true

string

values

values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.

false

string array

- -
-

v1beta1.Job

Job represents the configuration of a single job.

@@ -2090,6 +2042,47 @@ Populated by the system when a graceful deletion is requested. Read-only. More i +
+
+

v1beta1.LabelSelector

+
+

A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.

+
+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionRequiredSchemaDefault

matchLabels

matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.

false

any

matchExpressions

matchExpressions is a list of label selector requirements. The requirements are ANDed.

false

v1beta1.LabelSelectorRequirement array

+

v1.HostPathVolumeSource

@@ -2692,6 +2685,54 @@ Populated by the system when a graceful deletion is requested. Read-only. More i +
+
+

v1beta1.LabelSelectorRequirement

+
+

A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

+
+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDescriptionRequiredSchemaDefault

key

key is the label key that the selector applies to.

true

string

operator

operator represents a key’s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.

true

string

values

values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.

false

string array

+

v1beta1.HorizontalPodAutoscaler

@@ -3385,7 +3426,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i

selector

Selector is a label query over pods that should match the pod count. More info: http://releases.k8s.io/HEAD/docs/user-guide/labels.md#label-selectors

false

-

v1beta1.PodSelector

+

v1beta1.LabelSelector

@@ -3398,47 +3439,6 @@ Populated by the system when a graceful deletion is requested. Read-only. More i -
-
-

v1beta1.PodSelector

-
-

A pod selector is a label query over a set of pods. The result of matchLabels and matchExpressions are ANDed. An empty pod selector matches all objects. A null pod selector matches no objects.

-
- ------- - - - - - - - - - - - - - - - - - - - - - - - - - -
NameDescriptionRequiredSchemaDefault

matchLabels

matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is "key", the operator is "In", and the values array contains only "value". The requirements are ANDed.

false

any

matchExpressions

matchExpressions is a list of pod selector requirements. The requirements are ANDed.

false

v1beta1.PodSelectorRequirement array

-

v1.Capability

@@ -4268,7 +4268,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
diff --git a/pkg/apis/extensions/deep_copy_generated.go b/pkg/apis/extensions/deep_copy_generated.go index f254f18034f..33d36d7c8b7 100644 --- a/pkg/apis/extensions/deep_copy_generated.go +++ b/pkg/apis/extensions/deep_copy_generated.go @@ -982,8 +982,8 @@ func deepCopy_extensions_DaemonSetList(in DaemonSetList, out *DaemonSetList, c * func deepCopy_extensions_DaemonSetSpec(in DaemonSetSpec, out *DaemonSetSpec, c *conversion.Cloner) error { if in.Selector != nil { - out.Selector = new(PodSelector) - if err := deepCopy_extensions_PodSelector(*in.Selector, out.Selector, c); err != nil { + out.Selector = new(LabelSelector) + if err := deepCopy_extensions_LabelSelector(*in.Selector, out.Selector, c); err != nil { return err } } else { @@ -1345,8 +1345,8 @@ func deepCopy_extensions_JobSpec(in JobSpec, out *JobSpec, c *conversion.Cloner) out.Completions = nil } if in.Selector != nil { - out.Selector = new(PodSelector) - if err := deepCopy_extensions_PodSelector(*in.Selector, out.Selector, c); err != nil { + out.Selector = new(LabelSelector) + if err := deepCopy_extensions_LabelSelector(*in.Selector, out.Selector, c); err != nil { return err } } else { @@ -1391,13 +1391,7 @@ func deepCopy_extensions_JobStatus(in JobStatus, out *JobStatus, c *conversion.C return nil } -func deepCopy_extensions_NodeUtilization(in NodeUtilization, out *NodeUtilization, c *conversion.Cloner) error { - out.Resource = in.Resource - out.Value = in.Value - return nil -} - -func deepCopy_extensions_PodSelector(in PodSelector, out *PodSelector, c *conversion.Cloner) error { +func deepCopy_extensions_LabelSelector(in LabelSelector, out *LabelSelector, c *conversion.Cloner) error { if in.MatchLabels != nil { out.MatchLabels = make(map[string]string) for key, val := range in.MatchLabels { @@ -1407,9 +1401,9 @@ func deepCopy_extensions_PodSelector(in PodSelector, out *PodSelector, c *conver out.MatchLabels = nil } if in.MatchExpressions != nil { - out.MatchExpressions = make([]PodSelectorRequirement, len(in.MatchExpressions)) + out.MatchExpressions = make([]LabelSelectorRequirement, len(in.MatchExpressions)) for i := range in.MatchExpressions { - if err := deepCopy_extensions_PodSelectorRequirement(in.MatchExpressions[i], &out.MatchExpressions[i], c); err != nil { + if err := deepCopy_extensions_LabelSelectorRequirement(in.MatchExpressions[i], &out.MatchExpressions[i], c); err != nil { return err } } @@ -1419,7 +1413,7 @@ func deepCopy_extensions_PodSelector(in PodSelector, out *PodSelector, c *conver return nil } -func deepCopy_extensions_PodSelectorRequirement(in PodSelectorRequirement, out *PodSelectorRequirement, c *conversion.Cloner) error { +func deepCopy_extensions_LabelSelectorRequirement(in LabelSelectorRequirement, out *LabelSelectorRequirement, c *conversion.Cloner) error { out.Key = in.Key out.Operator = in.Operator if in.Values != nil { @@ -1433,6 +1427,12 @@ func deepCopy_extensions_PodSelectorRequirement(in PodSelectorRequirement, out * return nil } +func deepCopy_extensions_NodeUtilization(in NodeUtilization, out *NodeUtilization, c *conversion.Cloner) error { + out.Resource = in.Resource + out.Value = in.Value + return nil +} + func deepCopy_extensions_ReplicationControllerDummy(in ReplicationControllerDummy, out *ReplicationControllerDummy, c *conversion.Cloner) error { if err := deepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { return err @@ -1659,9 +1659,9 @@ func init() { deepCopy_extensions_JobList, deepCopy_extensions_JobSpec, deepCopy_extensions_JobStatus, + deepCopy_extensions_LabelSelector, + deepCopy_extensions_LabelSelectorRequirement, deepCopy_extensions_NodeUtilization, - deepCopy_extensions_PodSelector, - deepCopy_extensions_PodSelectorRequirement, deepCopy_extensions_ReplicationControllerDummy, deepCopy_extensions_RollingUpdateDeployment, deepCopy_extensions_Scale, diff --git a/pkg/apis/extensions/helpers.go b/pkg/apis/extensions/helpers.go index f7be1a7dc4b..74b00dc1d64 100644 --- a/pkg/apis/extensions/helpers.go +++ b/pkg/apis/extensions/helpers.go @@ -25,9 +25,9 @@ import ( "k8s.io/kubernetes/pkg/util/sets" ) -// PodSelectorAsSelector converts the PodSelector api type into a struct that implements +// LabelSelectorAsSelector converts the LabelSelector api type into a struct that implements // labels.Selector -func PodSelectorAsSelector(ps *PodSelector) (labels.Selector, error) { +func LabelSelectorAsSelector(ps *LabelSelector) (labels.Selector, error) { if ps == nil { return labels.Nothing(), nil } @@ -45,13 +45,13 @@ func PodSelectorAsSelector(ps *PodSelector) (labels.Selector, error) { for _, expr := range ps.MatchExpressions { var op labels.Operator switch expr.Operator { - case PodSelectorOpIn: + case LabelSelectorOpIn: op = labels.InOperator - case PodSelectorOpNotIn: + case LabelSelectorOpNotIn: op = labels.NotInOperator - case PodSelectorOpExists: + case LabelSelectorOpExists: op = labels.ExistsOperator - case PodSelectorOpDoesNotExist: + case LabelSelectorOpDoesNotExist: op = labels.DoesNotExistOperator default: return nil, fmt.Errorf("%q is not a valid pod selector operator", expr.Operator) diff --git a/pkg/apis/extensions/helpers_test.go b/pkg/apis/extensions/helpers_test.go index 866230bfcc7..2fbd6199433 100644 --- a/pkg/apis/extensions/helpers_test.go +++ b/pkg/apis/extensions/helpers_test.go @@ -23,11 +23,11 @@ import ( "k8s.io/kubernetes/pkg/labels" ) -func TestPodSelectorAsSelector(t *testing.T) { +func TestLabelSelectorAsSelector(t *testing.T) { matchLabels := map[string]string{"foo": "bar"} - matchExpressions := []PodSelectorRequirement{{ + matchExpressions := []LabelSelectorRequirement{{ Key: "baz", - Operator: PodSelectorOpIn, + Operator: LabelSelectorOpIn, Values: []string{"qux", "norf"}, }} mustParse := func(s string) labels.Selector { @@ -38,29 +38,29 @@ func TestPodSelectorAsSelector(t *testing.T) { return out } tc := []struct { - in *PodSelector + in *LabelSelector out labels.Selector expectErr bool }{ {in: nil, out: labels.Nothing()}, - {in: &PodSelector{}, out: labels.Everything()}, + {in: &LabelSelector{}, out: labels.Everything()}, { - in: &PodSelector{MatchLabels: matchLabels}, + in: &LabelSelector{MatchLabels: matchLabels}, out: mustParse("foo in (bar)"), }, { - in: &PodSelector{MatchExpressions: matchExpressions}, + in: &LabelSelector{MatchExpressions: matchExpressions}, out: mustParse("baz in (norf,qux)"), }, { - in: &PodSelector{MatchLabels: matchLabels, MatchExpressions: matchExpressions}, + in: &LabelSelector{MatchLabels: matchLabels, MatchExpressions: matchExpressions}, out: mustParse("foo in (bar),baz in (norf,qux)"), }, { - in: &PodSelector{ - MatchExpressions: []PodSelectorRequirement{{ + in: &LabelSelector{ + MatchExpressions: []LabelSelectorRequirement{{ Key: "baz", - Operator: PodSelectorOpExists, + Operator: LabelSelectorOpExists, Values: []string{"qux", "norf"}, }}, }, @@ -69,7 +69,7 @@ func TestPodSelectorAsSelector(t *testing.T) { } for i, tc := range tc { - out, err := PodSelectorAsSelector(tc.in) + out, err := LabelSelectorAsSelector(tc.in) if err == nil && tc.expectErr { t.Errorf("[%v]expected error but got none.", i) } diff --git a/pkg/apis/extensions/types.generated.go b/pkg/apis/extensions/types.generated.go index 665d6a38799..6817cf5cd00 100644 --- a/pkg/apis/extensions/types.generated.go +++ b/pkg/apis/extensions/types.generated.go @@ -6217,7 +6217,7 @@ func (x *DaemonSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -6263,7 +6263,7 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -8503,7 +8503,7 @@ func (x *JobSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -8597,7 +8597,7 @@ func (x *JobSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -12900,7 +12900,7 @@ func (x *ClusterAutoscalerList) codecDecodeSelfFromArray(l int, d *codec1978.Dec z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { +func (x *LabelSelector) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -12975,7 +12975,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym1084 if false { } else { - h.encSlicePodSelectorRequirement(([]PodSelectorRequirement)(x.MatchExpressions), e) + h.encSliceLabelSelectorRequirement(([]LabelSelectorRequirement)(x.MatchExpressions), e) } } } else { @@ -12993,7 +12993,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym1085 if false { } else { - h.encSlicePodSelectorRequirement(([]PodSelectorRequirement)(x.MatchExpressions), e) + h.encSliceLabelSelectorRequirement(([]LabelSelectorRequirement)(x.MatchExpressions), e) } } } @@ -13007,7 +13007,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelector) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelector) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13037,7 +13037,7 @@ func (x *PodSelector) CodecDecodeSelf(d *codec1978.Decoder) { } } -func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { +func (x *LabelSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13080,7 +13080,7 @@ func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { _ = yym1092 if false { } else { - h.decSlicePodSelectorRequirement((*[]PodSelectorRequirement)(yyv1091), d) + h.decSliceLabelSelectorRequirement((*[]LabelSelectorRequirement)(yyv1091), d) } } default: @@ -13090,7 +13090,7 @@ func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerMapEnd1234) } -func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { +func (x *LabelSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13138,7 +13138,7 @@ func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { _ = yym1097 if false { } else { - h.decSlicePodSelectorRequirement((*[]PodSelectorRequirement)(yyv1096), d) + h.decSliceLabelSelectorRequirement((*[]LabelSelectorRequirement)(yyv1096), d) } } for { @@ -13157,7 +13157,7 @@ func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *PodSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { +func (x *LabelSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -13258,7 +13258,7 @@ func (x *PodSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13288,7 +13288,7 @@ func (x *PodSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { } } -func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13320,7 +13320,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Operator = "" } else { - x.Operator = PodSelectorOperator(r.DecodeString()) + x.Operator = LabelSelectorOperator(r.DecodeString()) } case "values": if r.TryDecodeAsNil() { @@ -13341,7 +13341,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Deco z.DecSendContainerState(codecSelfer_containerMapEnd1234) } -func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13378,7 +13378,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.De if r.TryDecodeAsNil() { x.Operator = "" } else { - x.Operator = PodSelectorOperator(r.DecodeString()) + x.Operator = LabelSelectorOperator(r.DecodeString()) } yyj1114++ if yyhl1114 { @@ -13418,7 +13418,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.De z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x PodSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { +func (x LabelSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -13431,7 +13431,7 @@ func (x PodSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelectorOperator) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelectorOperator) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -14952,7 +14952,7 @@ func (x codecSelfer1234) decSliceClusterAutoscaler(v *[]ClusterAutoscaler, d *co } } -func (x codecSelfer1234) encSlicePodSelectorRequirement(v []PodSelectorRequirement, e *codec1978.Encoder) { +func (x codecSelfer1234) encSliceLabelSelectorRequirement(v []LabelSelectorRequirement, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -14965,7 +14965,7 @@ func (x codecSelfer1234) encSlicePodSelectorRequirement(v []PodSelectorRequireme z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirement, d *codec1978.Decoder) { +func (x codecSelfer1234) decSliceLabelSelectorRequirement(v *[]LabelSelectorRequirement, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -14975,7 +14975,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem var yyc1201 bool if yyl1201 == 0 { if yyv1201 == nil { - yyv1201 = []PodSelectorRequirement{} + yyv1201 = []LabelSelectorRequirement{} yyc1201 = true } else if len(yyv1201) != 0 { yyv1201 = yyv1201[:0] @@ -14993,10 +14993,10 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem if yyrl1201 <= cap(yyv1201) { yyv1201 = yyv1201[:yyrl1201] } else { - yyv1201 = make([]PodSelectorRequirement, yyrl1201) + yyv1201 = make([]LabelSelectorRequirement, yyrl1201) } } else { - yyv1201 = make([]PodSelectorRequirement, yyrl1201) + yyv1201 = make([]LabelSelectorRequirement, yyrl1201) } yyc1201 = true yyrr1201 = len(yyv1201) @@ -15011,7 +15011,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem for ; yyj1201 < yyrr1201; yyj1201++ { yyh1201.ElemContainerState(yyj1201) if r.TryDecodeAsNil() { - yyv1201[yyj1201] = PodSelectorRequirement{} + yyv1201[yyj1201] = LabelSelectorRequirement{} } else { yyv1202 := &yyv1201[yyj1201] yyv1202.CodecDecodeSelf(d) @@ -15020,10 +15020,10 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem } if yyrt1201 { for ; yyj1201 < yyl1201; yyj1201++ { - yyv1201 = append(yyv1201, PodSelectorRequirement{}) + yyv1201 = append(yyv1201, LabelSelectorRequirement{}) yyh1201.ElemContainerState(yyj1201) if r.TryDecodeAsNil() { - yyv1201[yyj1201] = PodSelectorRequirement{} + yyv1201[yyj1201] = LabelSelectorRequirement{} } else { yyv1203 := &yyv1201[yyj1201] yyv1203.CodecDecodeSelf(d) @@ -15037,13 +15037,13 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem for ; !r.CheckBreak(); yyj1201++ { if yyj1201 >= len(yyv1201) { - yyv1201 = append(yyv1201, PodSelectorRequirement{}) // var yyz1201 PodSelectorRequirement + yyv1201 = append(yyv1201, LabelSelectorRequirement{}) // var yyz1201 LabelSelectorRequirement yyc1201 = true } yyh1201.ElemContainerState(yyj1201) if yyj1201 < len(yyv1201) { if r.TryDecodeAsNil() { - yyv1201[yyj1201] = PodSelectorRequirement{} + yyv1201[yyj1201] = LabelSelectorRequirement{} } else { yyv1204 := &yyv1201[yyj1201] yyv1204.CodecDecodeSelf(d) @@ -15058,7 +15058,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem yyv1201 = yyv1201[:yyj1201] yyc1201 = true } else if yyj1201 == 0 && yyv1201 == nil { - yyv1201 = []PodSelectorRequirement{} + yyv1201 = []LabelSelectorRequirement{} yyc1201 = true } } diff --git a/pkg/apis/extensions/types.go b/pkg/apis/extensions/types.go index 1a216b011e8..e2fb806d0e0 100644 --- a/pkg/apis/extensions/types.go +++ b/pkg/apis/extensions/types.go @@ -298,7 +298,7 @@ type DaemonSetSpec struct { // Must match in order to be controlled. // If empty, defaulted to labels on Pod template. // More info: http://releases.k8s.io/HEAD/docs/user-guide/labels.md#label-selectors - Selector *PodSelector `json:"selector,omitempty"` + Selector *LabelSelector `json:"selector,omitempty"` // Template is the object that describes the pod that will be created. // The DaemonSet will create exactly one copy of this pod on every node @@ -403,7 +403,7 @@ type JobSpec struct { Completions *int `json:"completions,omitempty"` // Selector is a label query over pods that should match the pod count. - Selector *PodSelector `json:"selector,omitempty"` + Selector *LabelSelector `json:"selector,omitempty"` // Template is the object that describes the pod that will be created when // executing a job. @@ -647,26 +647,26 @@ type ClusterAutoscalerList struct { Items []ClusterAutoscaler `json:"items"` } -// A pod selector is a label query over a set of pods. The result of matchLabels and -// matchExpressions are ANDed. An empty pod selector matches all objects. A null -// pod selector matches no objects. -type PodSelector struct { +// A label selector is a label query over a set of resources. The result of matchLabels and +// matchExpressions are ANDed. An empty label selector matches all objects. A null +// label selector matches no objects. +type LabelSelector struct { // matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels // map is equivalent to an element of matchExpressions, whose key field is "key", the // operator is "In", and the values array contains only "value". The requirements are ANDed. MatchLabels map[string]string `json:"matchLabels,omitempty"` - // matchExpressions is a list of pod selector requirements. The requirements are ANDed. - MatchExpressions []PodSelectorRequirement `json:"matchExpressions,omitempty"` + // matchExpressions is a list of label selector requirements. The requirements are ANDed. + MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty"` } -// A pod selector requirement is a selector that contains values, a key, and an operator that +// A label selector requirement is a selector that contains values, a key, and an operator that // relates the key and values. -type PodSelectorRequirement struct { +type LabelSelectorRequirement struct { // key is the label key that the selector applies to. Key string `json:"key" patchStrategy:"merge" patchMergeKey:"key"` // operator represents a key's relationship to a set of values. // Valid operators ard In, NotIn, Exists and DoesNotExist. - Operator PodSelectorOperator `json:"operator"` + Operator LabelSelectorOperator `json:"operator"` // values is an array of string values. If the operator is In or NotIn, // the values array must be non-empty. If the operator is Exists or DoesNotExist, // the values array must be empty. This array is replaced during a strategic @@ -674,12 +674,12 @@ type PodSelectorRequirement struct { Values []string `json:"values,omitempty"` } -// A pod selector operator is the set of operators that can be used in a selector requirement. -type PodSelectorOperator string +// A label selector operator is the set of operators that can be used in a selector requirement. +type LabelSelectorOperator string const ( - PodSelectorOpIn PodSelectorOperator = "In" - PodSelectorOpNotIn PodSelectorOperator = "NotIn" - PodSelectorOpExists PodSelectorOperator = "Exists" - PodSelectorOpDoesNotExist PodSelectorOperator = "DoesNotExist" + LabelSelectorOpIn LabelSelectorOperator = "In" + LabelSelectorOpNotIn LabelSelectorOperator = "NotIn" + LabelSelectorOpExists LabelSelectorOperator = "Exists" + LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist" ) diff --git a/pkg/apis/extensions/v1beta1/conversion_generated.go b/pkg/apis/extensions/v1beta1/conversion_generated.go index c8773ae1149..f5f63770516 100644 --- a/pkg/apis/extensions/v1beta1/conversion_generated.go +++ b/pkg/apis/extensions/v1beta1/conversion_generated.go @@ -2302,8 +2302,8 @@ func autoconvert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extension defaulting.(func(*extensions.DaemonSetSpec))(in) } if in.Selector != nil { - out.Selector = new(PodSelector) - if err := convert_extensions_PodSelector_To_v1beta1_PodSelector(in.Selector, out.Selector, s); err != nil { + out.Selector = new(LabelSelector) + if err := convert_extensions_LabelSelector_To_v1beta1_LabelSelector(in.Selector, out.Selector, s); err != nil { return err } } else { @@ -2821,8 +2821,8 @@ func autoconvert_extensions_JobSpec_To_v1beta1_JobSpec(in *extensions.JobSpec, o out.Completions = nil } if in.Selector != nil { - out.Selector = new(PodSelector) - if err := convert_extensions_PodSelector_To_v1beta1_PodSelector(in.Selector, out.Selector, s); err != nil { + out.Selector = new(LabelSelector) + if err := convert_extensions_LabelSelector_To_v1beta1_LabelSelector(in.Selector, out.Selector, s); err != nil { return err } } else { @@ -2876,22 +2876,9 @@ func convert_extensions_JobStatus_To_v1beta1_JobStatus(in *extensions.JobStatus, return autoconvert_extensions_JobStatus_To_v1beta1_JobStatus(in, out, s) } -func autoconvert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in *extensions.NodeUtilization, out *NodeUtilization, s conversion.Scope) error { +func autoconvert_extensions_LabelSelector_To_v1beta1_LabelSelector(in *extensions.LabelSelector, out *LabelSelector, s conversion.Scope) error { if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*extensions.NodeUtilization))(in) - } - out.Resource = NodeResource(in.Resource) - out.Value = in.Value - return nil -} - -func convert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in *extensions.NodeUtilization, out *NodeUtilization, s conversion.Scope) error { - return autoconvert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in, out, s) -} - -func autoconvert_extensions_PodSelector_To_v1beta1_PodSelector(in *extensions.PodSelector, out *PodSelector, s conversion.Scope) error { - if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*extensions.PodSelector))(in) + defaulting.(func(*extensions.LabelSelector))(in) } if in.MatchLabels != nil { out.MatchLabels = make(map[string]string) @@ -2902,9 +2889,9 @@ func autoconvert_extensions_PodSelector_To_v1beta1_PodSelector(in *extensions.Po out.MatchLabels = nil } if in.MatchExpressions != nil { - out.MatchExpressions = make([]PodSelectorRequirement, len(in.MatchExpressions)) + out.MatchExpressions = make([]LabelSelectorRequirement, len(in.MatchExpressions)) for i := range in.MatchExpressions { - if err := convert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequirement(&in.MatchExpressions[i], &out.MatchExpressions[i], s); err != nil { + if err := convert_extensions_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(&in.MatchExpressions[i], &out.MatchExpressions[i], s); err != nil { return err } } @@ -2914,16 +2901,16 @@ func autoconvert_extensions_PodSelector_To_v1beta1_PodSelector(in *extensions.Po return nil } -func convert_extensions_PodSelector_To_v1beta1_PodSelector(in *extensions.PodSelector, out *PodSelector, s conversion.Scope) error { - return autoconvert_extensions_PodSelector_To_v1beta1_PodSelector(in, out, s) +func convert_extensions_LabelSelector_To_v1beta1_LabelSelector(in *extensions.LabelSelector, out *LabelSelector, s conversion.Scope) error { + return autoconvert_extensions_LabelSelector_To_v1beta1_LabelSelector(in, out, s) } -func autoconvert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequirement(in *extensions.PodSelectorRequirement, out *PodSelectorRequirement, s conversion.Scope) error { +func autoconvert_extensions_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in *extensions.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error { if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*extensions.PodSelectorRequirement))(in) + defaulting.(func(*extensions.LabelSelectorRequirement))(in) } out.Key = in.Key - out.Operator = PodSelectorOperator(in.Operator) + out.Operator = LabelSelectorOperator(in.Operator) if in.Values != nil { out.Values = make([]string, len(in.Values)) for i := range in.Values { @@ -2935,8 +2922,21 @@ func autoconvert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequire return nil } -func convert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequirement(in *extensions.PodSelectorRequirement, out *PodSelectorRequirement, s conversion.Scope) error { - return autoconvert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequirement(in, out, s) +func convert_extensions_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in *extensions.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error { + return autoconvert_extensions_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in, out, s) +} + +func autoconvert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in *extensions.NodeUtilization, out *NodeUtilization, s conversion.Scope) error { + if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { + defaulting.(func(*extensions.NodeUtilization))(in) + } + out.Resource = NodeResource(in.Resource) + out.Value = in.Value + return nil +} + +func convert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in *extensions.NodeUtilization, out *NodeUtilization, s conversion.Scope) error { + return autoconvert_extensions_NodeUtilization_To_v1beta1_NodeUtilization(in, out, s) } func autoconvert_extensions_ReplicationControllerDummy_To_v1beta1_ReplicationControllerDummy(in *extensions.ReplicationControllerDummy, out *ReplicationControllerDummy, s conversion.Scope) error { @@ -3289,8 +3289,8 @@ func autoconvert_v1beta1_DaemonSetSpec_To_extensions_DaemonSetSpec(in *DaemonSet defaulting.(func(*DaemonSetSpec))(in) } if in.Selector != nil { - out.Selector = new(extensions.PodSelector) - if err := convert_v1beta1_PodSelector_To_extensions_PodSelector(in.Selector, out.Selector, s); err != nil { + out.Selector = new(extensions.LabelSelector) + if err := convert_v1beta1_LabelSelector_To_extensions_LabelSelector(in.Selector, out.Selector, s); err != nil { return err } } else { @@ -3788,8 +3788,8 @@ func autoconvert_v1beta1_JobSpec_To_extensions_JobSpec(in *JobSpec, out *extensi out.Completions = nil } if in.Selector != nil { - out.Selector = new(extensions.PodSelector) - if err := convert_v1beta1_PodSelector_To_extensions_PodSelector(in.Selector, out.Selector, s); err != nil { + out.Selector = new(extensions.LabelSelector) + if err := convert_v1beta1_LabelSelector_To_extensions_LabelSelector(in.Selector, out.Selector, s); err != nil { return err } } else { @@ -3843,22 +3843,9 @@ func convert_v1beta1_JobStatus_To_extensions_JobStatus(in *JobStatus, out *exten return autoconvert_v1beta1_JobStatus_To_extensions_JobStatus(in, out, s) } -func autoconvert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in *NodeUtilization, out *extensions.NodeUtilization, s conversion.Scope) error { +func autoconvert_v1beta1_LabelSelector_To_extensions_LabelSelector(in *LabelSelector, out *extensions.LabelSelector, s conversion.Scope) error { if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*NodeUtilization))(in) - } - out.Resource = extensions.NodeResource(in.Resource) - out.Value = in.Value - return nil -} - -func convert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in *NodeUtilization, out *extensions.NodeUtilization, s conversion.Scope) error { - return autoconvert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in, out, s) -} - -func autoconvert_v1beta1_PodSelector_To_extensions_PodSelector(in *PodSelector, out *extensions.PodSelector, s conversion.Scope) error { - if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*PodSelector))(in) + defaulting.(func(*LabelSelector))(in) } if in.MatchLabels != nil { out.MatchLabels = make(map[string]string) @@ -3869,9 +3856,9 @@ func autoconvert_v1beta1_PodSelector_To_extensions_PodSelector(in *PodSelector, out.MatchLabels = nil } if in.MatchExpressions != nil { - out.MatchExpressions = make([]extensions.PodSelectorRequirement, len(in.MatchExpressions)) + out.MatchExpressions = make([]extensions.LabelSelectorRequirement, len(in.MatchExpressions)) for i := range in.MatchExpressions { - if err := convert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequirement(&in.MatchExpressions[i], &out.MatchExpressions[i], s); err != nil { + if err := convert_v1beta1_LabelSelectorRequirement_To_extensions_LabelSelectorRequirement(&in.MatchExpressions[i], &out.MatchExpressions[i], s); err != nil { return err } } @@ -3881,16 +3868,16 @@ func autoconvert_v1beta1_PodSelector_To_extensions_PodSelector(in *PodSelector, return nil } -func convert_v1beta1_PodSelector_To_extensions_PodSelector(in *PodSelector, out *extensions.PodSelector, s conversion.Scope) error { - return autoconvert_v1beta1_PodSelector_To_extensions_PodSelector(in, out, s) +func convert_v1beta1_LabelSelector_To_extensions_LabelSelector(in *LabelSelector, out *extensions.LabelSelector, s conversion.Scope) error { + return autoconvert_v1beta1_LabelSelector_To_extensions_LabelSelector(in, out, s) } -func autoconvert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequirement(in *PodSelectorRequirement, out *extensions.PodSelectorRequirement, s conversion.Scope) error { +func autoconvert_v1beta1_LabelSelectorRequirement_To_extensions_LabelSelectorRequirement(in *LabelSelectorRequirement, out *extensions.LabelSelectorRequirement, s conversion.Scope) error { if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { - defaulting.(func(*PodSelectorRequirement))(in) + defaulting.(func(*LabelSelectorRequirement))(in) } out.Key = in.Key - out.Operator = extensions.PodSelectorOperator(in.Operator) + out.Operator = extensions.LabelSelectorOperator(in.Operator) if in.Values != nil { out.Values = make([]string, len(in.Values)) for i := range in.Values { @@ -3902,8 +3889,21 @@ func autoconvert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequire return nil } -func convert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequirement(in *PodSelectorRequirement, out *extensions.PodSelectorRequirement, s conversion.Scope) error { - return autoconvert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequirement(in, out, s) +func convert_v1beta1_LabelSelectorRequirement_To_extensions_LabelSelectorRequirement(in *LabelSelectorRequirement, out *extensions.LabelSelectorRequirement, s conversion.Scope) error { + return autoconvert_v1beta1_LabelSelectorRequirement_To_extensions_LabelSelectorRequirement(in, out, s) +} + +func autoconvert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in *NodeUtilization, out *extensions.NodeUtilization, s conversion.Scope) error { + if defaulting, found := s.DefaultingInterface(reflect.TypeOf(*in)); found { + defaulting.(func(*NodeUtilization))(in) + } + out.Resource = extensions.NodeResource(in.Resource) + out.Value = in.Value + return nil +} + +func convert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in *NodeUtilization, out *extensions.NodeUtilization, s conversion.Scope) error { + return autoconvert_v1beta1_NodeUtilization_To_extensions_NodeUtilization(in, out, s) } func autoconvert_v1beta1_ReplicationControllerDummy_To_extensions_ReplicationControllerDummy(in *ReplicationControllerDummy, out *extensions.ReplicationControllerDummy, s conversion.Scope) error { @@ -4177,9 +4177,9 @@ func init() { autoconvert_extensions_JobSpec_To_v1beta1_JobSpec, autoconvert_extensions_JobStatus_To_v1beta1_JobStatus, autoconvert_extensions_Job_To_v1beta1_Job, + autoconvert_extensions_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement, + autoconvert_extensions_LabelSelector_To_v1beta1_LabelSelector, autoconvert_extensions_NodeUtilization_To_v1beta1_NodeUtilization, - autoconvert_extensions_PodSelectorRequirement_To_v1beta1_PodSelectorRequirement, - autoconvert_extensions_PodSelector_To_v1beta1_PodSelector, autoconvert_extensions_ReplicationControllerDummy_To_v1beta1_ReplicationControllerDummy, autoconvert_extensions_RollingUpdateDeployment_To_v1beta1_RollingUpdateDeployment, autoconvert_extensions_ScaleSpec_To_v1beta1_ScaleSpec, @@ -4262,9 +4262,9 @@ func init() { autoconvert_v1beta1_JobSpec_To_extensions_JobSpec, autoconvert_v1beta1_JobStatus_To_extensions_JobStatus, autoconvert_v1beta1_Job_To_extensions_Job, + autoconvert_v1beta1_LabelSelectorRequirement_To_extensions_LabelSelectorRequirement, + autoconvert_v1beta1_LabelSelector_To_extensions_LabelSelector, autoconvert_v1beta1_NodeUtilization_To_extensions_NodeUtilization, - autoconvert_v1beta1_PodSelectorRequirement_To_extensions_PodSelectorRequirement, - autoconvert_v1beta1_PodSelector_To_extensions_PodSelector, autoconvert_v1beta1_ReplicationControllerDummy_To_extensions_ReplicationControllerDummy, autoconvert_v1beta1_RollingUpdateDeployment_To_extensions_RollingUpdateDeployment, autoconvert_v1beta1_ScaleSpec_To_extensions_ScaleSpec, diff --git a/pkg/apis/extensions/v1beta1/deep_copy_generated.go b/pkg/apis/extensions/v1beta1/deep_copy_generated.go index 971205202b8..3c979f951d4 100644 --- a/pkg/apis/extensions/v1beta1/deep_copy_generated.go +++ b/pkg/apis/extensions/v1beta1/deep_copy_generated.go @@ -984,8 +984,8 @@ func deepCopy_v1beta1_DaemonSetList(in DaemonSetList, out *DaemonSetList, c *con func deepCopy_v1beta1_DaemonSetSpec(in DaemonSetSpec, out *DaemonSetSpec, c *conversion.Cloner) error { if in.Selector != nil { - out.Selector = new(PodSelector) - if err := deepCopy_v1beta1_PodSelector(*in.Selector, out.Selector, c); err != nil { + out.Selector = new(LabelSelector) + if err := deepCopy_v1beta1_LabelSelector(*in.Selector, out.Selector, c); err != nil { return err } } else { @@ -1357,8 +1357,8 @@ func deepCopy_v1beta1_JobSpec(in JobSpec, out *JobSpec, c *conversion.Cloner) er out.Completions = nil } if in.Selector != nil { - out.Selector = new(PodSelector) - if err := deepCopy_v1beta1_PodSelector(*in.Selector, out.Selector, c); err != nil { + out.Selector = new(LabelSelector) + if err := deepCopy_v1beta1_LabelSelector(*in.Selector, out.Selector, c); err != nil { return err } } else { @@ -1403,13 +1403,7 @@ func deepCopy_v1beta1_JobStatus(in JobStatus, out *JobStatus, c *conversion.Clon return nil } -func deepCopy_v1beta1_NodeUtilization(in NodeUtilization, out *NodeUtilization, c *conversion.Cloner) error { - out.Resource = in.Resource - out.Value = in.Value - return nil -} - -func deepCopy_v1beta1_PodSelector(in PodSelector, out *PodSelector, c *conversion.Cloner) error { +func deepCopy_v1beta1_LabelSelector(in LabelSelector, out *LabelSelector, c *conversion.Cloner) error { if in.MatchLabels != nil { out.MatchLabels = make(map[string]string) for key, val := range in.MatchLabels { @@ -1419,9 +1413,9 @@ func deepCopy_v1beta1_PodSelector(in PodSelector, out *PodSelector, c *conversio out.MatchLabels = nil } if in.MatchExpressions != nil { - out.MatchExpressions = make([]PodSelectorRequirement, len(in.MatchExpressions)) + out.MatchExpressions = make([]LabelSelectorRequirement, len(in.MatchExpressions)) for i := range in.MatchExpressions { - if err := deepCopy_v1beta1_PodSelectorRequirement(in.MatchExpressions[i], &out.MatchExpressions[i], c); err != nil { + if err := deepCopy_v1beta1_LabelSelectorRequirement(in.MatchExpressions[i], &out.MatchExpressions[i], c); err != nil { return err } } @@ -1431,7 +1425,7 @@ func deepCopy_v1beta1_PodSelector(in PodSelector, out *PodSelector, c *conversio return nil } -func deepCopy_v1beta1_PodSelectorRequirement(in PodSelectorRequirement, out *PodSelectorRequirement, c *conversion.Cloner) error { +func deepCopy_v1beta1_LabelSelectorRequirement(in LabelSelectorRequirement, out *LabelSelectorRequirement, c *conversion.Cloner) error { out.Key = in.Key out.Operator = in.Operator if in.Values != nil { @@ -1445,6 +1439,12 @@ func deepCopy_v1beta1_PodSelectorRequirement(in PodSelectorRequirement, out *Pod return nil } +func deepCopy_v1beta1_NodeUtilization(in NodeUtilization, out *NodeUtilization, c *conversion.Cloner) error { + out.Resource = in.Resource + out.Value = in.Value + return nil +} + func deepCopy_v1beta1_ReplicationControllerDummy(in ReplicationControllerDummy, out *ReplicationControllerDummy, c *conversion.Cloner) error { if err := deepCopy_unversioned_TypeMeta(in.TypeMeta, &out.TypeMeta, c); err != nil { return err @@ -1681,9 +1681,9 @@ func init() { deepCopy_v1beta1_JobList, deepCopy_v1beta1_JobSpec, deepCopy_v1beta1_JobStatus, + deepCopy_v1beta1_LabelSelector, + deepCopy_v1beta1_LabelSelectorRequirement, deepCopy_v1beta1_NodeUtilization, - deepCopy_v1beta1_PodSelector, - deepCopy_v1beta1_PodSelectorRequirement, deepCopy_v1beta1_ReplicationControllerDummy, deepCopy_v1beta1_RollingUpdateDeployment, deepCopy_v1beta1_Scale, diff --git a/pkg/apis/extensions/v1beta1/defaults.go b/pkg/apis/extensions/v1beta1/defaults.go index 96f7ed10dd1..29a54513c8e 100644 --- a/pkg/apis/extensions/v1beta1/defaults.go +++ b/pkg/apis/extensions/v1beta1/defaults.go @@ -36,7 +36,7 @@ func addDefaultingFuncs() { // TODO: support templates defined elsewhere when we support them in the API if labels != nil { if obj.Spec.Selector == nil { - obj.Spec.Selector = &PodSelector{ + obj.Spec.Selector = &LabelSelector{ MatchLabels: labels, } } @@ -93,7 +93,7 @@ func addDefaultingFuncs() { // TODO: support templates defined elsewhere when we support them in the API if labels != nil { if obj.Spec.Selector == nil { - obj.Spec.Selector = &PodSelector{ + obj.Spec.Selector = &LabelSelector{ MatchLabels: labels, } } diff --git a/pkg/apis/extensions/v1beta1/defaults_test.go b/pkg/apis/extensions/v1beta1/defaults_test.go index 9ad2352da2f..d10fdf5fe14 100644 --- a/pkg/apis/extensions/v1beta1/defaults_test.go +++ b/pkg/apis/extensions/v1beta1/defaults_test.go @@ -205,7 +205,7 @@ func TestSetDefaultDeployment(t *testing.T) { func TestSetDefaultJob(t *testing.T) { expected := &Job{ Spec: JobSpec{ - Selector: &PodSelector{ + Selector: &LabelSelector{ MatchLabels: map[string]string{"job": "selector"}, }, Completions: newInt32(1), @@ -216,7 +216,7 @@ func TestSetDefaultJob(t *testing.T) { // selector set explicitly, completions and parallelism - default { Spec: JobSpec{ - Selector: &PodSelector{ + Selector: &LabelSelector{ MatchLabels: map[string]string{"job": "selector"}, }, }, diff --git a/pkg/apis/extensions/v1beta1/types.generated.go b/pkg/apis/extensions/v1beta1/types.generated.go index b839226703b..9f6cfd7fbd0 100644 --- a/pkg/apis/extensions/v1beta1/types.generated.go +++ b/pkg/apis/extensions/v1beta1/types.generated.go @@ -6305,7 +6305,7 @@ func (x *DaemonSetSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -6351,7 +6351,7 @@ func (x *DaemonSetSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -8591,7 +8591,7 @@ func (x *JobSpec) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -8685,7 +8685,7 @@ func (x *JobSpec) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { } } else { if x.Selector == nil { - x.Selector = new(PodSelector) + x.Selector = new(LabelSelector) } x.Selector.CodecDecodeSelf(d) } @@ -12988,7 +12988,7 @@ func (x *ClusterAutoscalerList) codecDecodeSelfFromArray(l int, d *codec1978.Dec z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { +func (x *LabelSelector) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -13063,7 +13063,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym1088 if false { } else { - h.encSlicePodSelectorRequirement(([]PodSelectorRequirement)(x.MatchExpressions), e) + h.encSliceLabelSelectorRequirement(([]LabelSelectorRequirement)(x.MatchExpressions), e) } } } else { @@ -13081,7 +13081,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { _ = yym1089 if false { } else { - h.encSlicePodSelectorRequirement(([]PodSelectorRequirement)(x.MatchExpressions), e) + h.encSliceLabelSelectorRequirement(([]LabelSelectorRequirement)(x.MatchExpressions), e) } } } @@ -13095,7 +13095,7 @@ func (x *PodSelector) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelector) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelector) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13125,7 +13125,7 @@ func (x *PodSelector) CodecDecodeSelf(d *codec1978.Decoder) { } } -func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { +func (x *LabelSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13168,7 +13168,7 @@ func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { _ = yym1096 if false { } else { - h.decSlicePodSelectorRequirement((*[]PodSelectorRequirement)(yyv1095), d) + h.decSliceLabelSelectorRequirement((*[]LabelSelectorRequirement)(yyv1095), d) } } default: @@ -13178,7 +13178,7 @@ func (x *PodSelector) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerMapEnd1234) } -func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { +func (x *LabelSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13226,7 +13226,7 @@ func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { _ = yym1101 if false { } else { - h.decSlicePodSelectorRequirement((*[]PodSelectorRequirement)(yyv1100), d) + h.decSliceLabelSelectorRequirement((*[]LabelSelectorRequirement)(yyv1100), d) } } for { @@ -13245,7 +13245,7 @@ func (x *PodSelector) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x *PodSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { +func (x *LabelSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -13346,7 +13346,7 @@ func (x *PodSelectorRequirement) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13376,7 +13376,7 @@ func (x *PodSelectorRequirement) CodecDecodeSelf(d *codec1978.Decoder) { } } -func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13408,7 +13408,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Deco if r.TryDecodeAsNil() { x.Operator = "" } else { - x.Operator = PodSelectorOperator(r.DecodeString()) + x.Operator = LabelSelectorOperator(r.DecodeString()) } case "values": if r.TryDecodeAsNil() { @@ -13429,7 +13429,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromMap(l int, d *codec1978.Deco z.DecSendContainerState(codecSelfer_containerMapEnd1234) } -func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { +func (x *LabelSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -13466,7 +13466,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.De if r.TryDecodeAsNil() { x.Operator = "" } else { - x.Operator = PodSelectorOperator(r.DecodeString()) + x.Operator = LabelSelectorOperator(r.DecodeString()) } yyj1118++ if yyhl1118 { @@ -13506,7 +13506,7 @@ func (x *PodSelectorRequirement) codecDecodeSelfFromArray(l int, d *codec1978.De z.DecSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x PodSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { +func (x LabelSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -13519,7 +13519,7 @@ func (x PodSelectorOperator) CodecEncodeSelf(e *codec1978.Encoder) { } } -func (x *PodSelectorOperator) CodecDecodeSelf(d *codec1978.Decoder) { +func (x *LabelSelectorOperator) CodecDecodeSelf(d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -15040,7 +15040,7 @@ func (x codecSelfer1234) decSliceClusterAutoscaler(v *[]ClusterAutoscaler, d *co } } -func (x codecSelfer1234) encSlicePodSelectorRequirement(v []PodSelectorRequirement, e *codec1978.Encoder) { +func (x codecSelfer1234) encSliceLabelSelectorRequirement(v []LabelSelectorRequirement, e *codec1978.Encoder) { var h codecSelfer1234 z, r := codec1978.GenHelperEncoder(e) _, _, _ = h, z, r @@ -15053,7 +15053,7 @@ func (x codecSelfer1234) encSlicePodSelectorRequirement(v []PodSelectorRequireme z.EncSendContainerState(codecSelfer_containerArrayEnd1234) } -func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirement, d *codec1978.Decoder) { +func (x codecSelfer1234) decSliceLabelSelectorRequirement(v *[]LabelSelectorRequirement, d *codec1978.Decoder) { var h codecSelfer1234 z, r := codec1978.GenHelperDecoder(d) _, _, _ = h, z, r @@ -15063,7 +15063,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem var yyc1205 bool if yyl1205 == 0 { if yyv1205 == nil { - yyv1205 = []PodSelectorRequirement{} + yyv1205 = []LabelSelectorRequirement{} yyc1205 = true } else if len(yyv1205) != 0 { yyv1205 = yyv1205[:0] @@ -15081,10 +15081,10 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem if yyrl1205 <= cap(yyv1205) { yyv1205 = yyv1205[:yyrl1205] } else { - yyv1205 = make([]PodSelectorRequirement, yyrl1205) + yyv1205 = make([]LabelSelectorRequirement, yyrl1205) } } else { - yyv1205 = make([]PodSelectorRequirement, yyrl1205) + yyv1205 = make([]LabelSelectorRequirement, yyrl1205) } yyc1205 = true yyrr1205 = len(yyv1205) @@ -15099,7 +15099,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem for ; yyj1205 < yyrr1205; yyj1205++ { yyh1205.ElemContainerState(yyj1205) if r.TryDecodeAsNil() { - yyv1205[yyj1205] = PodSelectorRequirement{} + yyv1205[yyj1205] = LabelSelectorRequirement{} } else { yyv1206 := &yyv1205[yyj1205] yyv1206.CodecDecodeSelf(d) @@ -15108,10 +15108,10 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem } if yyrt1205 { for ; yyj1205 < yyl1205; yyj1205++ { - yyv1205 = append(yyv1205, PodSelectorRequirement{}) + yyv1205 = append(yyv1205, LabelSelectorRequirement{}) yyh1205.ElemContainerState(yyj1205) if r.TryDecodeAsNil() { - yyv1205[yyj1205] = PodSelectorRequirement{} + yyv1205[yyj1205] = LabelSelectorRequirement{} } else { yyv1207 := &yyv1205[yyj1205] yyv1207.CodecDecodeSelf(d) @@ -15125,13 +15125,13 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem for ; !r.CheckBreak(); yyj1205++ { if yyj1205 >= len(yyv1205) { - yyv1205 = append(yyv1205, PodSelectorRequirement{}) // var yyz1205 PodSelectorRequirement + yyv1205 = append(yyv1205, LabelSelectorRequirement{}) // var yyz1205 LabelSelectorRequirement yyc1205 = true } yyh1205.ElemContainerState(yyj1205) if yyj1205 < len(yyv1205) { if r.TryDecodeAsNil() { - yyv1205[yyj1205] = PodSelectorRequirement{} + yyv1205[yyj1205] = LabelSelectorRequirement{} } else { yyv1208 := &yyv1205[yyj1205] yyv1208.CodecDecodeSelf(d) @@ -15146,7 +15146,7 @@ func (x codecSelfer1234) decSlicePodSelectorRequirement(v *[]PodSelectorRequirem yyv1205 = yyv1205[:yyj1205] yyc1205 = true } else if yyj1205 == 0 && yyv1205 == nil { - yyv1205 = []PodSelectorRequirement{} + yyv1205 = []LabelSelectorRequirement{} yyc1205 = true } } diff --git a/pkg/apis/extensions/v1beta1/types.go b/pkg/apis/extensions/v1beta1/types.go index e691e11636f..395bcef15db 100644 --- a/pkg/apis/extensions/v1beta1/types.go +++ b/pkg/apis/extensions/v1beta1/types.go @@ -296,7 +296,7 @@ type DaemonSetSpec struct { // Must match in order to be controlled. // If empty, defaulted to labels on Pod template. // More info: http://releases.k8s.io/HEAD/docs/user-guide/labels.md#label-selectors - Selector *PodSelector `json:"selector,omitempty"` + Selector *LabelSelector `json:"selector,omitempty"` // Template is the object that describes the pod that will be created. // The DaemonSet will create exactly one copy of this pod on every node @@ -409,7 +409,7 @@ type JobSpec struct { // Selector is a label query over pods that should match the pod count. // More info: http://releases.k8s.io/HEAD/docs/user-guide/labels.md#label-selectors - Selector *PodSelector `json:"selector,omitempty"` + Selector *LabelSelector `json:"selector,omitempty"` // Template is the object that describes the pod that will be created when // executing a job. @@ -655,26 +655,26 @@ type ClusterAutoscalerList struct { Items []ClusterAutoscaler `json:"items"` } -// A pod selector is a label query over a set of pods. The result of matchLabels and -// matchExpressions are ANDed. An empty pod selector matches all objects. A null -// pod selector matches no objects. -type PodSelector struct { +// A label selector is a label query over a set of resources. The result of matchLabels and +// matchExpressions are ANDed. An empty label selector matches all objects. A null +// label selector matches no objects. +type LabelSelector struct { // matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels // map is equivalent to an element of matchExpressions, whose key field is "key", the // operator is "In", and the values array contains only "value". The requirements are ANDed. MatchLabels map[string]string `json:"matchLabels,omitempty"` - // matchExpressions is a list of pod selector requirements. The requirements are ANDed. - MatchExpressions []PodSelectorRequirement `json:"matchExpressions,omitempty"` + // matchExpressions is a list of label selector requirements. The requirements are ANDed. + MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty"` } -// A pod selector requirement is a selector that contains values, a key, and an operator that +// A label selector requirement is a selector that contains values, a key, and an operator that // relates the key and values. -type PodSelectorRequirement struct { +type LabelSelectorRequirement struct { // key is the label key that the selector applies to. Key string `json:"key" patchStrategy:"merge" patchMergeKey:"key"` // operator represents a key's relationship to a set of values. // Valid operators ard In, NotIn, Exists and DoesNotExist. - Operator PodSelectorOperator `json:"operator"` + Operator LabelSelectorOperator `json:"operator"` // values is an array of string values. If the operator is In or NotIn, // the values array must be non-empty. If the operator is Exists or DoesNotExist, // the values array must be empty. This array is replaced during a strategic @@ -682,12 +682,12 @@ type PodSelectorRequirement struct { Values []string `json:"values,omitempty"` } -// A pod selector operator is the set of operators that can be used in a selector requirement. -type PodSelectorOperator string +// A label selector operator is the set of operators that can be used in a selector requirement. +type LabelSelectorOperator string const ( - PodSelectorOpIn PodSelectorOperator = "In" - PodSelectorOpNotIn PodSelectorOperator = "NotIn" - PodSelectorOpExists PodSelectorOperator = "Exists" - PodSelectorOpDoesNotExist PodSelectorOperator = "DoesNotExist" + LabelSelectorOpIn LabelSelectorOperator = "In" + LabelSelectorOpNotIn LabelSelectorOperator = "NotIn" + LabelSelectorOpExists LabelSelectorOperator = "Exists" + LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist" ) diff --git a/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go b/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go index 2143d034f85..cdefee08712 100644 --- a/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go +++ b/pkg/apis/extensions/v1beta1/types_swagger_doc_generated.go @@ -363,6 +363,27 @@ func (JobStatus) SwaggerDoc() map[string]string { return map_JobStatus } +var map_LabelSelector = map[string]string{ + "": "A label selector is a label query over a set of resources. The result of matchLabels and matchExpressions are ANDed. An empty label selector matches all objects. A null label selector matches no objects.", + "matchLabels": "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed.", + "matchExpressions": "matchExpressions is a list of label selector requirements. The requirements are ANDed.", +} + +func (LabelSelector) SwaggerDoc() map[string]string { + return map_LabelSelector +} + +var map_LabelSelectorRequirement = map[string]string{ + "": "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.", + "key": "key is the label key that the selector applies to.", + "operator": "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.", + "values": "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.", +} + +func (LabelSelectorRequirement) SwaggerDoc() map[string]string { + return map_LabelSelectorRequirement +} + var map_NodeUtilization = map[string]string{ "": "NodeUtilization describes what percentage of a particular resource is used on a node.", "value": "The accepted values are from 0 to 1.", @@ -372,27 +393,6 @@ func (NodeUtilization) SwaggerDoc() map[string]string { return map_NodeUtilization } -var map_PodSelector = map[string]string{ - "": "A pod selector is a label query over a set of pods. The result of matchLabels and matchExpressions are ANDed. An empty pod selector matches all objects. A null pod selector matches no objects.", - "matchLabels": "matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels map is equivalent to an element of matchExpressions, whose key field is \"key\", the operator is \"In\", and the values array contains only \"value\". The requirements are ANDed.", - "matchExpressions": "matchExpressions is a list of pod selector requirements. The requirements are ANDed.", -} - -func (PodSelector) SwaggerDoc() map[string]string { - return map_PodSelector -} - -var map_PodSelectorRequirement = map[string]string{ - "": "A pod selector requirement is a selector that contains values, a key, and an operator that relates the key and values.", - "key": "key is the label key that the selector applies to.", - "operator": "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.", - "values": "values is an array of string values. If the operator is In or NotIn, the values array must be non-empty. If the operator is Exists or DoesNotExist, the values array must be empty. This array is replaced during a strategic merge patch.", -} - -func (PodSelectorRequirement) SwaggerDoc() map[string]string { - return map_PodSelectorRequirement -} - var map_ReplicationControllerDummy = map[string]string{ "": "Dummy definition", } diff --git a/pkg/apis/extensions/validation/validation.go b/pkg/apis/extensions/validation/validation.go index 27352d6661a..0d393216cd8 100644 --- a/pkg/apis/extensions/validation/validation.go +++ b/pkg/apis/extensions/validation/validation.go @@ -188,14 +188,14 @@ func ValidateDaemonSetTemplateUpdate(podTemplate, oldPodTemplate *api.PodTemplat func ValidateDaemonSetSpec(spec *extensions.DaemonSetSpec, fldPath *validation.FieldPath) validation.ErrorList { allErrs := validation.ErrorList{} - allErrs = append(allErrs, ValidatePodSelector(spec.Selector, fldPath.Child("selector"))...) + allErrs = append(allErrs, ValidateLabelSelector(spec.Selector, fldPath.Child("selector"))...) if spec.Template == nil { allErrs = append(allErrs, validation.NewRequiredError(fldPath.Child("template"))) return allErrs } - selector, err := extensions.PodSelectorAsSelector(spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(spec.Selector) if err == nil && !selector.Matches(labels.Set(spec.Template.Labels)) { allErrs = append(allErrs, validation.NewInvalidError(fldPath.Child("template", "metadata", "labels"), spec.Template.Labels, "selector does not match template")) } @@ -349,10 +349,10 @@ func ValidateJobSpec(spec *extensions.JobSpec, fldPath *validation.FieldPath) va if spec.Selector == nil { allErrs = append(allErrs, validation.NewRequiredError(fldPath.Child("selector"))) } else { - allErrs = append(allErrs, ValidatePodSelector(spec.Selector, fldPath.Child("selector"))...) + allErrs = append(allErrs, ValidateLabelSelector(spec.Selector, fldPath.Child("selector"))...) } - if selector, err := extensions.PodSelectorAsSelector(spec.Selector); err == nil { + if selector, err := extensions.LabelSelectorAsSelector(spec.Selector); err == nil { labels := labels.Set(spec.Template.Labels) if !selector.Matches(labels) { allErrs = append(allErrs, validation.NewInvalidError(fldPath.Child("template", "metadata", "labels"), spec.Template.Labels, "selector does not match template")) @@ -567,26 +567,26 @@ func ValidateClusterAutoscaler(autoscaler *extensions.ClusterAutoscaler) validat return allErrs } -func ValidatePodSelector(ps *extensions.PodSelector, fldPath *validation.FieldPath) validation.ErrorList { +func ValidateLabelSelector(ps *extensions.LabelSelector, fldPath *validation.FieldPath) validation.ErrorList { allErrs := validation.ErrorList{} if ps == nil { return allErrs } allErrs = append(allErrs, apivalidation.ValidateLabels(ps.MatchLabels, fldPath.Child("matchLabels"))...) for i, expr := range ps.MatchExpressions { - allErrs = append(allErrs, ValidatePodSelectorRequirement(expr, fldPath.Child("matchExpressions").Index(i))...) + allErrs = append(allErrs, ValidateLabelSelectorRequirement(expr, fldPath.Child("matchExpressions").Index(i))...) } return allErrs } -func ValidatePodSelectorRequirement(sr extensions.PodSelectorRequirement, fldPath *validation.FieldPath) validation.ErrorList { +func ValidateLabelSelectorRequirement(sr extensions.LabelSelectorRequirement, fldPath *validation.FieldPath) validation.ErrorList { allErrs := validation.ErrorList{} switch sr.Operator { - case extensions.PodSelectorOpIn, extensions.PodSelectorOpNotIn: + case extensions.LabelSelectorOpIn, extensions.LabelSelectorOpNotIn: if len(sr.Values) == 0 { allErrs = append(allErrs, validation.NewInvalidError(fldPath.Child("values"), sr.Values, "must be non-empty when operator is In or NotIn")) } - case extensions.PodSelectorOpExists, extensions.PodSelectorOpDoesNotExist: + case extensions.LabelSelectorOpExists, extensions.LabelSelectorOpDoesNotExist: if len(sr.Values) > 0 { allErrs = append(allErrs, validation.NewInvalidError(fldPath.Child("values"), sr.Values, "must be empty when operator is Exists or DoesNotExist")) } diff --git a/pkg/apis/extensions/validation/validation_test.go b/pkg/apis/extensions/validation/validation_test.go index 49b18940cee..eedf591ebff 100644 --- a/pkg/apis/extensions/validation/validation_test.go +++ b/pkg/apis/extensions/validation/validation_test.go @@ -368,14 +368,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, @@ -384,14 +384,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector2}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector2}, Template: &validPodTemplateAbc2.Template, }, }, @@ -400,14 +400,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateNodeSelector.Template, }, }, @@ -425,14 +425,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, @@ -441,14 +441,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: invalidSelector}, + Selector: &extensions.LabelSelector{MatchLabels: invalidSelector}, Template: &validPodTemplateAbc.Template, }, }, @@ -457,14 +457,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &invalidPodTemplate.Template, }, }, @@ -473,14 +473,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateDef.Template, }, }, @@ -489,14 +489,14 @@ func TestValidateDaemonSetUpdate(t *testing.T) { old: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplateAbc.Template, }, }, update: extensions.DaemonSet{ ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &readWriteVolumePodTemplate.Template, }, }, @@ -539,14 +539,14 @@ func TestValidateDaemonSet(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, { ObjectMeta: api.ObjectMeta{Name: "abc-123", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, @@ -561,14 +561,14 @@ func TestValidateDaemonSet(t *testing.T) { "zero-length ID": { ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, "missing-namespace": { ObjectMeta: api.ObjectMeta{Name: "abc-123"}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, @@ -581,14 +581,14 @@ func TestValidateDaemonSet(t *testing.T) { "selector_doesnt_match": { ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{"foo": "bar"}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{"foo": "bar"}}, Template: &validPodTemplate.Template, }, }, "invalid manifest": { ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, }, }, "invalid_label": { @@ -600,7 +600,7 @@ func TestValidateDaemonSet(t *testing.T) { }, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, @@ -625,7 +625,7 @@ func TestValidateDaemonSet(t *testing.T) { }, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &validPodTemplate.Template, }, }, @@ -635,7 +635,7 @@ func TestValidateDaemonSet(t *testing.T) { Namespace: api.NamespaceDefault, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &api.PodTemplateSpec{ Spec: api.PodSpec{ RestartPolicy: api.RestartPolicyOnFailure, @@ -654,7 +654,7 @@ func TestValidateDaemonSet(t *testing.T) { Namespace: api.NamespaceDefault, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: validSelector}, + Selector: &extensions.LabelSelector{MatchLabels: validSelector}, Template: &api.PodTemplateSpec{ Spec: api.PodSpec{ RestartPolicy: api.RestartPolicyNever, @@ -808,7 +808,7 @@ func TestValidateDeployment(t *testing.T) { } func TestValidateJob(t *testing.T) { - validSelector := &extensions.PodSelector{ + validSelector := &extensions.LabelSelector{ MatchLabels: map[string]string{"a": "b"}, } validPodTemplateSpec := api.PodTemplateSpec{ diff --git a/pkg/client/cache/listers.go b/pkg/client/cache/listers.go index 0a164935fee..9c459746a13 100644 --- a/pkg/client/cache/listers.go +++ b/pkg/client/cache/listers.go @@ -230,7 +230,7 @@ func (s *StoreToDaemonSetLister) GetPodDaemonSets(pod *api.Pod) (daemonSets []ex if daemonSet.Namespace != pod.Namespace { continue } - selector, err = extensions.PodSelectorAsSelector(daemonSet.Spec.Selector) + selector, err = extensions.LabelSelectorAsSelector(daemonSet.Spec.Selector) if err != nil { // this should not happen if the DaemonSet passed validation return nil, err @@ -352,7 +352,7 @@ func (s *StoreToJobLister) GetPodJobs(pod *api.Pod) (jobs []extensions.Job, err continue } - selector, _ = extensions.PodSelectorAsSelector(job.Spec.Selector) + selector, _ = extensions.LabelSelectorAsSelector(job.Spec.Selector) if !selector.Matches(labels.Set(pod.Labels)) { continue } diff --git a/pkg/client/cache/listers_test.go b/pkg/client/cache/listers_test.go index f108c697e20..19b46edb045 100644 --- a/pkg/client/cache/listers_test.go +++ b/pkg/client/cache/listers_test.go @@ -272,7 +272,7 @@ func TestStoreToDaemonSetLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{"foo": "baz"}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{"foo": "baz"}}, }, }, }, @@ -311,13 +311,13 @@ func TestStoreToDaemonSetLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "foo"}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{"foo": "bar"}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{"foo": "bar"}}, }, }, { ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "ns"}, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{"foo": "bar"}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{"foo": "bar"}}, }, }, }, @@ -401,7 +401,7 @@ func TestStoreToJobLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "basic", Namespace: "ns"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "baz"}, }, }, @@ -444,7 +444,7 @@ func TestStoreToJobLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "foo"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, }, @@ -452,7 +452,7 @@ func TestStoreToJobLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "ns"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, }, @@ -477,7 +477,7 @@ func TestStoreToJobLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: "foo"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, }, @@ -485,7 +485,7 @@ func TestStoreToJobLister(t *testing.T) { { ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "bar"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, }, diff --git a/pkg/controller/daemon/controller.go b/pkg/controller/daemon/controller.go index 6601655b943..e4dbefc19f7 100644 --- a/pkg/controller/daemon/controller.go +++ b/pkg/controller/daemon/controller.go @@ -346,7 +346,7 @@ func (dsc *DaemonSetsController) updateNode(old, cur interface{}) { // getNodesToDaemonSetPods returns a map from nodes to daemon pods (corresponding to ds) running on the nodes. func (dsc *DaemonSetsController) getNodesToDaemonPods(ds *extensions.DaemonSet) (map[string][]*api.Pod, error) { nodeToDaemonPods := make(map[string][]*api.Pod) - selector, err := extensions.PodSelectorAsSelector(ds.Spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(ds.Spec.Selector) if err != nil { return nil, err } diff --git a/pkg/controller/daemon/controller_test.go b/pkg/controller/daemon/controller_test.go index 4b8ed2a6949..66a151a3c68 100644 --- a/pkg/controller/daemon/controller_test.go +++ b/pkg/controller/daemon/controller_test.go @@ -55,7 +55,7 @@ func newDaemonSet(name string) *extensions.DaemonSet { Namespace: api.NamespaceDefault, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: simpleDaemonSetLabel}, + Selector: &extensions.LabelSelector{MatchLabels: simpleDaemonSetLabel}, Template: &api.PodTemplateSpec{ ObjectMeta: api.ObjectMeta{ Labels: simpleDaemonSetLabel, diff --git a/pkg/controller/job/controller.go b/pkg/controller/job/controller.go index ba306f8a87e..c5a88b91638 100644 --- a/pkg/controller/job/controller.go +++ b/pkg/controller/job/controller.go @@ -311,7 +311,7 @@ func (jm *JobController) syncJob(key string) error { return err } jobNeedsSync := jm.expectations.SatisfiedExpectations(jobKey) - selector, _ := extensions.PodSelectorAsSelector(job.Spec.Selector) + selector, _ := extensions.LabelSelectorAsSelector(job.Spec.Selector) podList, err := jm.podStore.Pods(job.Namespace).List(selector) if err != nil { glog.Errorf("Error getting pods for job %q: %v", key, err) diff --git a/pkg/controller/job/controller_test.go b/pkg/controller/job/controller_test.go index 64f987de879..2fb8214efa1 100644 --- a/pkg/controller/job/controller_test.go +++ b/pkg/controller/job/controller_test.go @@ -43,7 +43,7 @@ func newJob(parallelism, completions int) *extensions.Job { Spec: extensions.JobSpec{ Parallelism: ¶llelism, Completions: &completions, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, Template: api.PodTemplateSpec{ @@ -291,7 +291,7 @@ func TestJobPodLookup(t *testing.T) { job: &extensions.Job{ ObjectMeta: api.ObjectMeta{Name: "foo"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar"}, }, }, @@ -310,11 +310,11 @@ func TestJobPodLookup(t *testing.T) { job: &extensions.Job{ ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "ns"}, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ - MatchExpressions: []extensions.PodSelectorRequirement{ + Selector: &extensions.LabelSelector{ + MatchExpressions: []extensions.LabelSelectorRequirement{ { Key: "foo", - Operator: extensions.PodSelectorOpIn, + Operator: extensions.LabelSelectorOpIn, Values: []string{"bar"}, }, }, diff --git a/pkg/kubectl/describe.go b/pkg/kubectl/describe.go index fb675fce0e6..fa8bfb01f9a 100644 --- a/pkg/kubectl/describe.go +++ b/pkg/kubectl/describe.go @@ -888,7 +888,7 @@ func describeJob(job *extensions.Job, events *api.EventList) (string, error) { fmt.Fprintf(out, "Name:\t%s\n", job.Name) fmt.Fprintf(out, "Namespace:\t%s\n", job.Namespace) fmt.Fprintf(out, "Image(s):\t%s\n", makeImageList(&job.Spec.Template.Spec)) - selector, _ := extensions.PodSelectorAsSelector(job.Spec.Selector) + selector, _ := extensions.LabelSelectorAsSelector(job.Spec.Selector) fmt.Fprintf(out, "Selector:\t%s\n", selector) fmt.Fprintf(out, "Parallelism:\t%d\n", *job.Spec.Parallelism) fmt.Fprintf(out, "Completions:\t%d\n", *job.Spec.Completions) @@ -916,7 +916,7 @@ func (d *DaemonSetDescriber) Describe(namespace, name string) (string, error) { return "", err } - selector, err := extensions.PodSelectorAsSelector(daemon.Spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(daemon.Spec.Selector) if err != nil { return "", err } @@ -938,9 +938,9 @@ func describeDaemonSet(daemon *extensions.DaemonSet, events *api.EventList, runn } else { fmt.Fprintf(out, "Image(s):\t%s\n", "") } - selector, err := extensions.PodSelectorAsSelector(daemon.Spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(daemon.Spec.Selector) if err != nil { - // this shouldn't happen if PodSelector passed validation + // this shouldn't happen if LabelSelector passed validation return err } fmt.Fprintf(out, "Selector:\t%s\n", selector) @@ -1554,7 +1554,7 @@ func getDaemonSetsForLabels(c client.DaemonSetInterface, labelsToMatch labels.La // Find the ones that match labelsToMatch. var matchingDaemonSets []extensions.DaemonSet for _, ds := range dss.Items { - selector, err := extensions.PodSelectorAsSelector(ds.Spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(ds.Spec.Selector) if err != nil { // this should never happen if the DaemonSet passed validation return nil, err diff --git a/pkg/kubectl/resource_printer.go b/pkg/kubectl/resource_printer.go index 1ff90e3b622..6b042a8eb9b 100644 --- a/pkg/kubectl/resource_printer.go +++ b/pkg/kubectl/resource_printer.go @@ -730,7 +730,7 @@ func printJob(job *extensions.Job, w io.Writer, withNamespace bool, wide bool, s } } - selector, _ := extensions.PodSelectorAsSelector(job.Spec.Selector) + selector, _ := extensions.LabelSelectorAsSelector(job.Spec.Selector) _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%d", name, firstContainer.Name, @@ -931,9 +931,9 @@ func printDaemonSet(ds *extensions.DaemonSet, w io.Writer, withNamespace bool, w return err } } - selector, err := extensions.PodSelectorAsSelector(ds.Spec.Selector) + selector, err := extensions.LabelSelectorAsSelector(ds.Spec.Selector) if err != nil { - // this shouldn't happen if PodSelector passed validation + // this shouldn't happen if LabelSelector passed validation return err } if _, err := fmt.Fprintf(w, "%s\t%s\t%s\t%s\t%s", diff --git a/pkg/kubectl/run.go b/pkg/kubectl/run.go index 4c59a578b74..2c378a3680f 100644 --- a/pkg/kubectl/run.go +++ b/pkg/kubectl/run.go @@ -266,7 +266,7 @@ func (JobV1Beta1) Generate(genericParams map[string]interface{}) (runtime.Object Labels: labels, }, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: labels, }, Template: api.PodTemplateSpec{ diff --git a/pkg/kubectl/run_test.go b/pkg/kubectl/run_test.go index 59cf53bade4..073ae693ec3 100644 --- a/pkg/kubectl/run_test.go +++ b/pkg/kubectl/run_test.go @@ -746,7 +746,7 @@ func TestGenerateJob(t *testing.T) { Labels: map[string]string{"foo": "bar", "baz": "blah"}, }, Spec: extensions.JobSpec{ - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"foo": "bar", "baz": "blah"}, }, Template: api.PodTemplateSpec{ diff --git a/pkg/kubectl/stop.go b/pkg/kubectl/stop.go index 66c0938d303..e2f8797e713 100644 --- a/pkg/kubectl/stop.go +++ b/pkg/kubectl/stop.go @@ -250,7 +250,7 @@ func (reaper *JobReaper) Stop(namespace, name string, timeout time.Duration, gra return err } // at this point only dead pods are left, that should be removed - selector, _ := extensions.PodSelectorAsSelector(job.Spec.Selector) + selector, _ := extensions.LabelSelectorAsSelector(job.Spec.Selector) options := unversioned.ListOptions{LabelSelector: unversioned.LabelSelector{selector}} podList, err := pods.List(options) if err != nil { diff --git a/pkg/kubectl/stop_test.go b/pkg/kubectl/stop_test.go index 13a080f0812..2e2b5d343ea 100644 --- a/pkg/kubectl/stop_test.go +++ b/pkg/kubectl/stop_test.go @@ -284,7 +284,7 @@ func TestJobStop(t *testing.T) { }, Spec: extensions.JobSpec{ Parallelism: &zero, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"k1": "v1"}, }, }, @@ -298,7 +298,7 @@ func TestJobStop(t *testing.T) { }, Spec: extensions.JobSpec{ Parallelism: &zero, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"k1": "v1"}, }, }, @@ -320,7 +320,7 @@ func TestJobStop(t *testing.T) { }, Spec: extensions.JobSpec{ Parallelism: &zero, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"k1": "v1"}, }, }, @@ -334,7 +334,7 @@ func TestJobStop(t *testing.T) { }, Spec: extensions.JobSpec{ Parallelism: &zero, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"k1": "v1"}, }, }, diff --git a/pkg/registry/daemonset/etcd/etcd_test.go b/pkg/registry/daemonset/etcd/etcd_test.go index 963672dc9a2..de07f0a41dc 100755 --- a/pkg/registry/daemonset/etcd/etcd_test.go +++ b/pkg/registry/daemonset/etcd/etcd_test.go @@ -42,7 +42,7 @@ func newValidDaemonSet() *extensions.DaemonSet { Namespace: api.NamespaceDefault, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{"a": "b"}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{"a": "b"}}, Template: &api.PodTemplateSpec{ ObjectMeta: api.ObjectMeta{ Labels: map[string]string{"a": "b"}, @@ -77,7 +77,7 @@ func TestCreate(t *testing.T) { // invalid (invalid selector) &extensions.DaemonSet{ Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: map[string]string{}}, + Selector: &extensions.LabelSelector{MatchLabels: map[string]string{}}, Template: validDaemonSet.Spec.Template, }, }, @@ -115,7 +115,7 @@ func TestUpdate(t *testing.T) { }, func(obj runtime.Object) runtime.Object { object := obj.(*extensions.DaemonSet) - object.Spec.Selector = &extensions.PodSelector{MatchLabels: map[string]string{}} + object.Spec.Selector = &extensions.LabelSelector{MatchLabels: map[string]string{}} return object }, ) diff --git a/pkg/registry/job/etcd/etcd_test.go b/pkg/registry/job/etcd/etcd_test.go index 1d1639e7547..c028a3b3fca 100644 --- a/pkg/registry/job/etcd/etcd_test.go +++ b/pkg/registry/job/etcd/etcd_test.go @@ -48,7 +48,7 @@ func validNewJob() *extensions.Job { Spec: extensions.JobSpec{ Completions: &completions, Parallelism: ¶llelism, - Selector: &extensions.PodSelector{ + Selector: &extensions.LabelSelector{ MatchLabels: map[string]string{"a": "b"}, }, Template: api.PodTemplateSpec{ @@ -84,7 +84,7 @@ func TestCreate(t *testing.T) { &extensions.Job{ Spec: extensions.JobSpec{ Completions: validJob.Spec.Completions, - Selector: &extensions.PodSelector{}, + Selector: &extensions.LabelSelector{}, Template: validJob.Spec.Template, }, }, @@ -108,7 +108,7 @@ func TestUpdate(t *testing.T) { // invalid updateFunc func(obj runtime.Object) runtime.Object { object := obj.(*extensions.Job) - object.Spec.Selector = &extensions.PodSelector{} + object.Spec.Selector = &extensions.LabelSelector{} return object }, func(obj runtime.Object) runtime.Object { diff --git a/pkg/registry/job/strategy_test.go b/pkg/registry/job/strategy_test.go index 376d5ac76f1..d04a8a5459c 100644 --- a/pkg/registry/job/strategy_test.go +++ b/pkg/registry/job/strategy_test.go @@ -32,7 +32,7 @@ func TestJobStrategy(t *testing.T) { t.Errorf("Job should not allow create on update") } - validSelector := &extensions.PodSelector{ + validSelector := &extensions.LabelSelector{ MatchLabels: map[string]string{"a": "b"}, } validPodTemplateSpec := api.PodTemplateSpec{ @@ -97,7 +97,7 @@ func TestJobStatusStrategy(t *testing.T) { if StatusStrategy.AllowCreateOnUpdate() { t.Errorf("Job should not allow create on update") } - validSelector := &extensions.PodSelector{ + validSelector := &extensions.LabelSelector{ MatchLabels: map[string]string{"a": "b"}, } validPodTemplateSpec := api.PodTemplateSpec{ diff --git a/test/e2e/daemon_set.go b/test/e2e/daemon_set.go index f010698dcdb..dc2d018a3b3 100644 --- a/test/e2e/daemon_set.go +++ b/test/e2e/daemon_set.go @@ -135,7 +135,7 @@ var _ = Describe("Daemon set", func() { Name: dsName, }, Spec: extensions.DaemonSetSpec{ - Selector: &extensions.PodSelector{MatchLabels: complexLabel}, + Selector: &extensions.LabelSelector{MatchLabels: complexLabel}, Template: &api.PodTemplateSpec{ ObjectMeta: api.ObjectMeta{ Labels: complexLabel,