Merge pull request #35255 from caesarxuchao/remove-label-selectors

Automatic merge from submit-queue

Remove versioned LabelSelectors

We have LabelSelectors defined in `unversioned`, `batch/v1`, `batch/v2alpha1`, and `extensions/v1beta1`.  Their definitions are all the same. I kept the definition in `unversioned` and removed the others. It only makes sense to define a versioned LabelSelectors if the definition is different.
pull/6/head
Kubernetes Submit Queue 2016-10-25 23:54:56 -07:00 committed by GitHub
commit 5c6fdc7b50
47 changed files with 9912 additions and 14271 deletions

View File

@ -30272,7 +30272,7 @@
},
"selector": {
"description": "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
"$ref": "#/definitions/v1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"template": {
"description": "Template is the object that describes the pod that will be created when executing a job. More info: http://kubernetes.io/docs/user-guide/jobs",
@ -30315,49 +30315,6 @@
}
}
},
"v1.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": {
"matchExpressions": {
"description": "matchExpressions is a list of label selector requirements. The requirements are ANDed.",
"type": "array",
"items": {
"$ref": "#/definitions/v1.LabelSelectorRequirement"
}
},
"matchLabels": {
"description": "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.",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"v1.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"
],
"properties": {
"key": {
"description": "key is the label key that the selector applies to.",
"type": "string"
},
"operator": {
"description": "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.",
"type": "string"
},
"values": {
"description": "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.",
"type": "array",
"items": {
"type": "string"
}
}
}
},
"v1.Lifecycle": {
"description": "Lifecycle describes actions that the management system should take in response to container lifecycle events. For the PostStart and PreStop lifecycle handlers, management of the container blocks until the action is complete, unless the container process fails, in which case the handler is aborted.",
"properties": {
@ -32652,7 +32609,7 @@
"properties": {
"selector": {
"description": "Selector is a label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"template": {
"description": "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 that matches the template's node selector (or on every node if no node selector is specified). More info: http://kubernetes.io/docs/user-guide/replication-controller#pod-template",
@ -32782,7 +32739,7 @@
},
"selector": {
"description": "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment.",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"strategy": {
"description": "The deployment strategy to use to replace existing pods with new ones.",
@ -33139,7 +33096,7 @@
},
"selector": {
"description": "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"template": {
"description": "Template is the object that describes the pod that will be created when executing a job. More info: http://kubernetes.io/docs/user-guide/jobs",
@ -33182,49 +33139,6 @@
}
}
},
"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": {
"matchExpressions": {
"description": "matchExpressions is a list of label selector requirements. The requirements are ANDed.",
"type": "array",
"items": {
"$ref": "#/definitions/v1beta1.LabelSelectorRequirement"
}
},
"matchLabels": {
"description": "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.",
"type": "object",
"additionalProperties": {
"type": "string"
}
}
}
},
"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"
],
"properties": {
"key": {
"description": "key is the label key that the selector applies to.",
"type": "string"
},
"operator": {
"description": "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.",
"type": "string"
},
"values": {
"description": "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.",
"type": "array",
"items": {
"type": "string"
}
}
}
},
"v1beta1.LocalSubjectAccessReview": {
"description": "LocalSubjectAccessReview checks whether or not a user or group can perform an action in a given namespace. Having a namespace scoped resource makes it much easier to grant namespace scoped policy that includes permissions checking.",
"required": [
@ -33298,11 +33212,11 @@
"properties": {
"namespaceSelector": {
"description": "Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If omitted, this selector selects no namespaces. If present but empty, this selector selects all namespaces.",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"podSelector": {
"description": "This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If not provided, this selector selects no pods. If present but empty, this selector selects all pods in this namespace.",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
}
}
},
@ -33332,7 +33246,7 @@
},
"podSelector": {
"description": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
}
}
},
@ -33429,7 +33343,7 @@
},
"selector": {
"description": "Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
"$ref": "#/definitions/v1beta1.LabelSelector"
"$ref": "#/definitions/unversioned.LabelSelector"
},
"template": {
"description": "Template is the object that describes the pod that will be created if insufficient replicas are detected. More info: http://kubernetes.io/docs/user-guide/replication-controller#pod-template",

View File

@ -1179,7 +1179,7 @@
"description": "Optional duration in seconds relative to the startTime that the job may be active before the system tries to terminate it; value must be positive integer"
},
"selector": {
"$ref": "v1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors"
},
"manualSelector": {
@ -1192,8 +1192,8 @@
}
}
},
"v1.LabelSelector": {
"id": "v1.LabelSelector",
"unversioned.LabelSelector": {
"id": "unversioned.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": {
@ -1203,14 +1203,14 @@
"matchExpressions": {
"type": "array",
"items": {
"$ref": "v1.LabelSelectorRequirement"
"$ref": "unversioned.LabelSelectorRequirement"
},
"description": "matchExpressions is a list of label selector requirements. The requirements are ANDed."
}
}
},
"v1.LabelSelectorRequirement": {
"id": "v1.LabelSelectorRequirement",
"unversioned.LabelSelectorRequirement": {
"id": "unversioned.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",

View File

@ -7792,7 +7792,7 @@
],
"properties": {
"selector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selector is a label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors"
},
"template": {
@ -7801,8 +7801,8 @@
}
}
},
"v1beta1.LabelSelector": {
"id": "v1beta1.LabelSelector",
"unversioned.LabelSelector": {
"id": "unversioned.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": {
@ -7812,14 +7812,14 @@
"matchExpressions": {
"type": "array",
"items": {
"$ref": "v1beta1.LabelSelectorRequirement"
"$ref": "unversioned.LabelSelectorRequirement"
},
"description": "matchExpressions is a list of label selector requirements. The requirements are ANDed."
}
}
},
"v1beta1.LabelSelectorRequirement": {
"id": "v1beta1.LabelSelectorRequirement",
"unversioned.LabelSelectorRequirement": {
"id": "unversioned.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",
@ -9426,7 +9426,7 @@
"description": "Number of desired pods. This is a pointer to distinguish between explicit zero and not specified. Defaults to 1."
},
"selector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment."
},
"template": {
@ -10040,7 +10040,7 @@
"description": "Optional duration in seconds relative to the startTime that the job may be active before the system tries to terminate it; value must be positive integer"
},
"selector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors"
},
"autoSelector": {
@ -10183,7 +10183,7 @@
],
"properties": {
"podSelector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace."
},
"ingress": {
@ -10236,11 +10236,11 @@
"id": "v1beta1.NetworkPolicyPeer",
"properties": {
"podSelector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If not provided, this selector selects no pods. If present but empty, this selector selects all pods in this namespace."
},
"namespaceSelector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If omitted, this selector selects no namespaces. If present but empty, this selector selects all namespaces."
}
}
@ -10314,7 +10314,7 @@
"description": "Minimum number of seconds for which a newly created pod should be ready without any of its container crashing, for it to be considered available. Defaults to 0 (pod will be considered available as soon as it is ready)"
},
"selector": {
"$ref": "v1beta1.LabelSelector",
"$ref": "unversioned.LabelSelector",
"description": "Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors"
},
"template": {

View File

@ -15,7 +15,7 @@
IMAGE=gcr.io/google-containers/kube-addon-manager
ARCH?=amd64
TEMP_DIR:=$(shell mktemp -d)
VERSION=v5.1
VERSION=v5.2
KUBECTL_VERSION?=v1.5.0-alpha.1
# amd64 and arm has "stable" binaries pushed for v1.2, arm64 and ppc64le hasn't so they have to fetch the latest alpha

View File

@ -11,7 +11,7 @@
"containers": [
{
"name": "kube-addon-manager",
"image": "REGISTRY/kube-addon-manager-ARCH:v5.1",
"image": "REGISTRY/kube-addon-manager-ARCH:v5.2",
"resources": {
"requests": {
"cpu": "5m",

View File

@ -11,7 +11,7 @@
"containers": [
{
"name": "kube-addon-manager",
"image": "REGISTRY/kube-addon-manager-ARCH:v5.1",
"image": "REGISTRY/kube-addon-manager-ARCH:v5.2",
"resources": {
"requests": {
"cpu": "5m",

View File

@ -11,7 +11,7 @@ spec:
containers:
- name: kube-addon-manager
# When updating version also bump it in cluster/images/hyperkube/static-pods/addon-manager.json
image: gcr.io/google-containers/kube-addon-manager:v5.1
image: gcr.io/google-containers/kube-addon-manager:v5.2
resources:
requests:
cpu: 5m

View File

@ -652,47 +652,6 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_labelselector">v1.LabelSelector</h3>
<div class="paragraph">
<p>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.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchLabels</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">object</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions is a list of label selector requirements. The requirements are ANDed.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1_labelselectorrequirement">v1.LabelSelectorRequirement</a> array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_cephfsvolumesource">v1.CephFSVolumeSource</h3>
@ -2486,6 +2445,47 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_labelselector">unversioned.LabelSelector</h3>
<div class="paragraph">
<p>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.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchLabels</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">object</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions is a list of label selector requirements. The requirements are ANDed.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselectorrequirement">unversioned.LabelSelectorRequirement</a> array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_jobcondition">v1.JobCondition</h3>
@ -2661,54 +2661,6 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_labelselectorrequirement">v1.LabelSelectorRequirement</h3>
<div class="paragraph">
<p>A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">key</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">key is the label key that the selector applies to.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator represents a key&#8217;s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_envvar">v1.EnvVar</h3>
@ -3156,7 +3108,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
<td class="tableblock halign-left valign-top"><p class="tableblock">selector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: <a href="http://kubernetes.io/docs/user-guide/labels#label-selectors">http://kubernetes.io/docs/user-guide/labels#label-selectors</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1_labelselector">v1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -3557,6 +3509,54 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_labelselectorrequirement">unversioned.LabelSelectorRequirement</h3>
<div class="paragraph">
<p>A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">key</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">key is the label key that the selector applies to.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator represents a key&#8217;s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_apiresourcelist">unversioned.APIResourceList</h3>
@ -4328,7 +4328,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
</div>
<div id="footer">
<div id="footer-text">
Last updated 2016-09-28 00:00:04 UTC
Last updated 2016-10-21 02:17:49 UTC
</div>
</div>
</body>

View File

@ -1848,7 +1848,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
<td class="tableblock halign-left valign-top"><p class="tableblock">selector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: <a href="http://kubernetes.io/docs/user-guide/labels#label-selectors">http://kubernetes.io/docs/user-guide/labels#label-selectors</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -1889,7 +1889,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
<td class="tableblock halign-left valign-top"><p class="tableblock">selector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selector is a label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: <a href="http://kubernetes.io/docs/user-guide/labels#label-selectors">http://kubernetes.io/docs/user-guide/labels#label-selectors</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -2399,6 +2399,47 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_labelselector">unversioned.LabelSelector</h3>
<div class="paragraph">
<p>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.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchLabels</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">object</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions is a list of label selector requirements. The requirements are ANDed.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselectorrequirement">unversioned.LabelSelectorRequirement</a> array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1beta1_rollbackconfig">v1beta1.RollbackConfig</h3>
@ -3364,7 +3405,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
<td class="tableblock halign-left valign-top"><p class="tableblock">selector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -4364,7 +4405,7 @@ Populated by the system when a graceful deletion is requested. Read-only. More i
<td class="tableblock halign-left valign-top"><p class="tableblock">podSelector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -4963,14 +5004,14 @@ Both these may change in the future. Incoming requests are matched against the h
<td class="tableblock halign-left valign-top"><p class="tableblock">podSelector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If not provided, this selector selects no pods. If present but empty, this selector selects all pods in this namespace.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">namespaceSelector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If omitted, this selector selects no namespaces. If present but empty, this selector selects all namespaces.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
@ -5554,47 +5595,6 @@ Both these may change in the future. Incoming requests are matched against the h
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1beta1_labelselector">v1beta1.LabelSelector</h3>
<div class="paragraph">
<p>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.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchLabels</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">object</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">matchExpressions is a list of label selector requirements. The requirements are ANDed.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselectorrequirement">v1beta1.LabelSelectorRequirement</a> array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1beta1_replicaset">v1beta1.ReplicaSet</h3>
@ -6049,54 +6049,6 @@ Both these may change in the future. Incoming requests are matched against the h
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1beta1_labelselectorrequirement">v1beta1.LabelSelectorRequirement</h3>
<div class="paragraph">
<p>A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">key</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">key is the label key that the selector applies to.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator represents a key&#8217;s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_v1_envvar">v1.EnvVar</h3>
@ -6314,7 +6266,7 @@ Both these may change in the future. Incoming requests are matched against the h
<td class="tableblock halign-left valign-top"><p class="tableblock">selector</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: <a href="http://kubernetes.io/docs/user-guide/labels#label-selectors">http://kubernetes.io/docs/user-guide/labels#label-selectors</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_v1beta1_labelselector">v1beta1.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#_unversioned_labelselector">unversioned.LabelSelector</a></p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
@ -6334,6 +6286,54 @@ Both these may change in the future. Incoming requests are matched against the h
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_labelselectorrequirement">unversioned.LabelSelectorRequirement</h3>
<div class="paragraph">
<p>A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.</p>
</div>
<table class="tableblock frame-all grid-all" style="width:100%; ">
<colgroup>
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
<col style="width:20%;">
</colgroup>
<thead>
<tr>
<th class="tableblock halign-left valign-top">Name</th>
<th class="tableblock halign-left valign-top">Description</th>
<th class="tableblock halign-left valign-top">Required</th>
<th class="tableblock halign-left valign-top">Schema</th>
<th class="tableblock halign-left valign-top">Default</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">key</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">key is the label key that the selector applies to.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">operator represents a key&#8217;s relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">true</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">values</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">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.</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">false</p></td>
<td class="tableblock halign-left valign-top"><p class="tableblock">string array</p></td>
<td class="tableblock halign-left valign-top"></td>
</tr>
</tbody>
</table>
</div>
<div class="sect2">
<h3 id="_unversioned_status">unversioned.Status</h3>
@ -6687,7 +6687,7 @@ Both these may change in the future. Incoming requests are matched against the h
</div>
<div id="footer">
<div id="footer-text">
Last updated 2016-10-20 13:16:06 UTC
Last updated 2016-10-21 21:21:20 UTC
</div>
</div>
</body>

View File

@ -44,6 +44,7 @@ go_test(
"//federation/client/clientset_generated/federation_release_1_5/fake:go_default_library",
"//federation/pkg/federation-controller/util:go_default_library",
"//federation/pkg/federation-controller/util/test:go_default_library",
"//pkg/api/unversioned:go_default_library",
"//pkg/api/v1:go_default_library",
"//pkg/apis/extensions/v1beta1:go_default_library",
"//pkg/client/clientset_generated/release_1_5:go_default_library",

View File

@ -26,6 +26,7 @@ import (
fake_fedclientset "k8s.io/kubernetes/federation/client/clientset_generated/federation_release_1_5/fake"
"k8s.io/kubernetes/federation/pkg/federation-controller/util"
. "k8s.io/kubernetes/federation/pkg/federation-controller/util/test"
"k8s.io/kubernetes/pkg/api/unversioned"
api_v1 "k8s.io/kubernetes/pkg/api/v1"
extensionsv1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
kubeclientset "k8s.io/kubernetes/pkg/client/clientset_generated/release_1_5"
@ -85,7 +86,7 @@ func TestDaemonSetController(t *testing.T) {
SelfLink: "/api/v1/namespaces/ns/daemonsets/test-daemonset",
},
Spec: extensionsv1.DaemonSetSpec{
Selector: &extensionsv1.LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: make(map[string]string),
},
},

View File

@ -16,10 +16,8 @@ go_library(
tags = ["automanaged"],
deps = [
"//federation/pkg/federation-controller/util:go_default_library",
"//pkg/api:go_default_library",
"//pkg/api/unversioned:go_default_library",
"//pkg/api/v1:go_default_library",
"//pkg/apis/extensions/v1beta1:go_default_library",
"//pkg/labels:go_default_library",
],
)

View File

@ -21,10 +21,8 @@ import (
"time"
"k8s.io/kubernetes/federation/pkg/federation-controller/util"
api "k8s.io/kubernetes/pkg/api"
unversioned "k8s.io/kubernetes/pkg/api/unversioned"
api_v1 "k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
"k8s.io/kubernetes/pkg/labels"
)
@ -47,8 +45,8 @@ const (
// A function that calculates how many pods from the list are in one of
// the meaningful (from the replica set perspective) states. This function is
// a temporary workaround against the current lack of ownerRef in pods.
func AnalysePods(selectorv1 *v1beta1.LabelSelector, allPods []util.FederatedObject, currentTime time.Time) (map[string]PodAnalysisResult, error) {
selector, err := labelSelectorAsSelector(selectorv1)
func AnalysePods(selectorv1 *unversioned.LabelSelector, allPods []util.FederatedObject, currentTime time.Time) (map[string]PodAnalysisResult, error) {
selector, err := unversioned.LabelSelectorAsSelector(selectorv1)
if err != nil {
return nil, fmt.Errorf("invalid selector: %v", err)
}
@ -82,11 +80,3 @@ func AnalysePods(selectorv1 *v1beta1.LabelSelector, allPods []util.FederatedObje
}
return result, nil
}
func labelSelectorAsSelector(ps *v1beta1.LabelSelector) (labels.Selector, error) {
unversionedSelector := unversioned.LabelSelector{}
if err := api.Scheme.Convert(ps, &unversionedSelector, nil); err != nil {
return nil, err
}
return unversioned.LabelSelectorAsSelector(&unversionedSelector)
}

View File

@ -101,7 +101,7 @@ func newReplicaSet(selectorMap map[string]string) *v1beta1.ReplicaSet {
},
Spec: v1beta1.ReplicaSetSpec{
Replicas: &replicas,
Selector: &v1beta1.LabelSelector{MatchLabels: selectorMap},
Selector: &unversioned.LabelSelector{MatchLabels: selectorMap},
},
}
return rs

View File

@ -38,7 +38,6 @@ go_library(
"//pkg/util/intstr:go_default_library",
"//pkg/watch/versioned:go_default_library",
"//vendor:github.com/gogo/protobuf/proto",
"//vendor:github.com/gogo/protobuf/sortkeys",
"//vendor:github.com/ugorji/go/codec",
],
)

View File

@ -20,7 +20,6 @@ import (
"fmt"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
v1 "k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/batch"
"k8s.io/kubernetes/pkg/conversion"
@ -53,15 +52,7 @@ func Convert_batch_JobSpec_To_v1_JobSpec(in *batch.JobSpec, out *JobSpec, s conv
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for unversioned.LabelSelector -> v1.LabelSelector
if in.Selector != nil {
out.Selector = new(LabelSelector)
if err := Convert_unversioned_LabelSelector_To_v1_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if in.ManualSelector != nil {
out.ManualSelector = new(bool)
*out.ManualSelector = *in.ManualSelector
@ -79,15 +70,7 @@ func Convert_v1_JobSpec_To_batch_JobSpec(in *JobSpec, out *batch.JobSpec, s conv
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for v1.LabelSelector -> unversioned.LabelSelector
if in.Selector != nil {
out.Selector = new(unversioned.LabelSelector)
if err := Convert_v1_LabelSelector_To_unversioned_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if in.ManualSelector != nil {
out.ManualSelector = new(bool)
*out.ManualSelector = *in.ManualSelector

View File

@ -30,8 +30,6 @@ limitations under the License.
JobList
JobSpec
JobStatus
LabelSelector
LabelSelectorRequirement
*/
package v1
@ -44,7 +42,6 @@ import k8s_io_kubernetes_pkg_api_v1 "k8s.io/kubernetes/pkg/api/v1"
import strings "strings"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import io "io"
@ -77,24 +74,12 @@ func (m *JobStatus) Reset() { *m = JobStatus{} }
func (*JobStatus) ProtoMessage() {}
func (*JobStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{4} }
func (m *LabelSelector) Reset() { *m = LabelSelector{} }
func (*LabelSelector) ProtoMessage() {}
func (*LabelSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{5} }
func (m *LabelSelectorRequirement) Reset() { *m = LabelSelectorRequirement{} }
func (*LabelSelectorRequirement) ProtoMessage() {}
func (*LabelSelectorRequirement) Descriptor() ([]byte, []int) {
return fileDescriptorGenerated, []int{6}
}
func init() {
proto.RegisterType((*Job)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.Job")
proto.RegisterType((*JobCondition)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.JobCondition")
proto.RegisterType((*JobList)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.JobList")
proto.RegisterType((*JobSpec)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.JobSpec")
proto.RegisterType((*JobStatus)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.JobStatus")
proto.RegisterType((*LabelSelector)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.LabelSelector")
proto.RegisterType((*LabelSelectorRequirement)(nil), "k8s.io.kubernetes.pkg.apis.batch.v1.LabelSelectorRequirement")
}
func (m *Job) Marshal() (data []byte, err error) {
size := m.Size()
@ -346,94 +331,6 @@ func (m *JobStatus) MarshalTo(data []byte) (int, error) {
return i, nil
}
func (m *LabelSelector) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *LabelSelector) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.MatchLabels) > 0 {
for k := range m.MatchLabels {
data[i] = 0xa
i++
v := m.MatchLabels[k]
mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v)))
i = encodeVarintGenerated(data, i, uint64(mapSize))
data[i] = 0xa
i++
i = encodeVarintGenerated(data, i, uint64(len(k)))
i += copy(data[i:], k)
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(len(v)))
i += copy(data[i:], v)
}
}
if len(m.MatchExpressions) > 0 {
for _, msg := range m.MatchExpressions {
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(msg.Size()))
n, err := msg.MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n
}
}
return i, nil
}
func (m *LabelSelectorRequirement) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *LabelSelectorRequirement) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
data[i] = 0xa
i++
i = encodeVarintGenerated(data, i, uint64(len(m.Key)))
i += copy(data[i:], m.Key)
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(len(m.Operator)))
i += copy(data[i:], m.Operator)
if len(m.Values) > 0 {
for _, s := range m.Values {
data[i] = 0x1a
i++
l = len(s)
for l >= 1<<7 {
data[i] = uint8(uint64(l)&0x7f | 0x80)
l >>= 7
i++
}
data[i] = uint8(l)
i++
i += copy(data[i:], s)
}
}
return i, nil
}
func encodeFixed64Generated(data []byte, offset int, v uint64) int {
data[offset] = uint8(v)
data[offset+1] = uint8(v >> 8)
@ -552,42 +449,6 @@ func (m *JobStatus) Size() (n int) {
return n
}
func (m *LabelSelector) Size() (n int) {
var l int
_ = l
if len(m.MatchLabels) > 0 {
for k, v := range m.MatchLabels {
_ = k
_ = v
mapEntrySize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v)))
n += mapEntrySize + 1 + sovGenerated(uint64(mapEntrySize))
}
}
if len(m.MatchExpressions) > 0 {
for _, e := range m.MatchExpressions {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
func (m *LabelSelectorRequirement) Size() (n int) {
var l int
_ = l
l = len(m.Key)
n += 1 + l + sovGenerated(uint64(l))
l = len(m.Operator)
n += 1 + l + sovGenerated(uint64(l))
if len(m.Values) > 0 {
for _, s := range m.Values {
l = len(s)
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
func sovGenerated(x uint64) (n int) {
for {
n++
@ -647,7 +508,7 @@ func (this *JobSpec) String() string {
`Parallelism:` + valueToStringGenerated(this.Parallelism) + `,`,
`Completions:` + valueToStringGenerated(this.Completions) + `,`,
`ActiveDeadlineSeconds:` + valueToStringGenerated(this.ActiveDeadlineSeconds) + `,`,
`Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "LabelSelector", 1) + `,`,
`Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "k8s_io_kubernetes_pkg_api_unversioned.LabelSelector", 1) + `,`,
`ManualSelector:` + valueToStringGenerated(this.ManualSelector) + `,`,
`Template:` + strings.Replace(strings.Replace(this.Template.String(), "PodTemplateSpec", "k8s_io_kubernetes_pkg_api_v1.PodTemplateSpec", 1), `&`, ``, 1) + `,`,
`}`,
@ -669,39 +530,6 @@ func (this *JobStatus) String() string {
}, "")
return s
}
func (this *LabelSelector) String() string {
if this == nil {
return "nil"
}
keysForMatchLabels := make([]string, 0, len(this.MatchLabels))
for k := range this.MatchLabels {
keysForMatchLabels = append(keysForMatchLabels, k)
}
github_com_gogo_protobuf_sortkeys.Strings(keysForMatchLabels)
mapStringForMatchLabels := "map[string]string{"
for _, k := range keysForMatchLabels {
mapStringForMatchLabels += fmt.Sprintf("%v: %v,", k, this.MatchLabels[k])
}
mapStringForMatchLabels += "}"
s := strings.Join([]string{`&LabelSelector{`,
`MatchLabels:` + mapStringForMatchLabels + `,`,
`MatchExpressions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.MatchExpressions), "LabelSelectorRequirement", "LabelSelectorRequirement", 1), `&`, ``, 1) + `,`,
`}`,
}, "")
return s
}
func (this *LabelSelectorRequirement) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&LabelSelectorRequirement{`,
`Key:` + fmt.Sprintf("%v", this.Key) + `,`,
`Operator:` + fmt.Sprintf("%v", this.Operator) + `,`,
`Values:` + fmt.Sprintf("%v", this.Values) + `,`,
`}`,
}, "")
return s
}
func valueToStringGenerated(v interface{}) string {
rv := reflect.ValueOf(v)
if rv.IsNil() {
@ -1303,7 +1131,7 @@ func (m *JobSpec) Unmarshal(data []byte) error {
return io.ErrUnexpectedEOF
}
if m.Selector == nil {
m.Selector = &LabelSelector{}
m.Selector = &k8s_io_kubernetes_pkg_api_unversioned.LabelSelector{}
}
if err := m.Selector.Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
@ -1585,335 +1413,6 @@ func (m *JobStatus) Unmarshal(data []byte) error {
}
return nil
}
func (m *LabelSelector) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: LabelSelector: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: LabelSelector: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field MatchLabels", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var keykey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
keykey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var stringLenmapkey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLenmapkey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int(stringLenmapkey)
if intStringLenmapkey < 0 {
return ErrInvalidLengthGenerated
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey > l {
return io.ErrUnexpectedEOF
}
mapkey := string(data[iNdEx:postStringIndexmapkey])
iNdEx = postStringIndexmapkey
var valuekey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
valuekey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var stringLenmapvalue uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLenmapvalue |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLenmapvalue := int(stringLenmapvalue)
if intStringLenmapvalue < 0 {
return ErrInvalidLengthGenerated
}
postStringIndexmapvalue := iNdEx + intStringLenmapvalue
if postStringIndexmapvalue > l {
return io.ErrUnexpectedEOF
}
mapvalue := string(data[iNdEx:postStringIndexmapvalue])
iNdEx = postStringIndexmapvalue
if m.MatchLabels == nil {
m.MatchLabels = make(map[string]string)
}
m.MatchLabels[mapkey] = mapvalue
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field MatchExpressions", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.MatchExpressions = append(m.MatchExpressions, LabelSelectorRequirement{})
if err := m.MatchExpressions[len(m.MatchExpressions)-1].Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *LabelSelectorRequirement) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: LabelSelectorRequirement: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: LabelSelectorRequirement: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Key = string(data[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Operator", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Operator = LabelSelectorOperator(data[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Values = append(m.Values, string(data[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func skipGenerated(data []byte) (n int, err error) {
l := len(data)
iNdEx := 0
@ -2020,71 +1519,59 @@ var (
)
var fileDescriptorGenerated = []byte{
// 1041 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x56, 0xdf, 0x6e, 0xe3, 0xc4,
0x17, 0xae, 0x93, 0xa6, 0x4d, 0x26, 0x6d, 0x37, 0xbf, 0xf9, 0x51, 0x29, 0x44, 0x22, 0x59, 0x05,
0x84, 0xba, 0x62, 0x6b, 0x2b, 0x05, 0xa4, 0xd5, 0x4a, 0xac, 0x84, 0x4b, 0x91, 0x28, 0x0d, 0xad,
0xa6, 0xd5, 0x6a, 0xc5, 0x9f, 0x8b, 0xb1, 0x73, 0x36, 0x35, 0xb5, 0x3d, 0xc6, 0x33, 0x0e, 0x94,
0x2b, 0x24, 0x2e, 0xb8, 0xe5, 0x21, 0x78, 0x06, 0xf6, 0x15, 0x7a, 0xb9, 0x70, 0xc5, 0x55, 0x44,
0xc3, 0x5b, 0xf4, 0x0a, 0xcd, 0x78, 0xec, 0x38, 0x49, 0x5b, 0xb5, 0xdc, 0x75, 0xce, 0x39, 0xdf,
0x77, 0x3e, 0xcf, 0xf9, 0xce, 0xa4, 0xe8, 0xfd, 0xb3, 0x27, 0xdc, 0xf4, 0x98, 0x75, 0x96, 0x38,
0x10, 0x87, 0x20, 0x80, 0x5b, 0xd1, 0xd9, 0xd0, 0xa2, 0x91, 0xc7, 0x2d, 0x87, 0x0a, 0xf7, 0xd4,
0x1a, 0xf5, 0xac, 0x21, 0x84, 0x10, 0x53, 0x01, 0x03, 0x33, 0x8a, 0x99, 0x60, 0xf8, 0xed, 0x14,
0x64, 0x4e, 0x41, 0x66, 0x74, 0x36, 0x34, 0x25, 0xc8, 0x54, 0x20, 0x73, 0xd4, 0x6b, 0x6d, 0x0f,
0x3d, 0x71, 0x9a, 0x38, 0xa6, 0xcb, 0x02, 0x6b, 0xc8, 0x86, 0xcc, 0x52, 0x58, 0x27, 0x79, 0xa9,
0x4e, 0xea, 0xa0, 0xfe, 0x4a, 0x39, 0x5b, 0x3b, 0x37, 0x0a, 0xb1, 0x62, 0xe0, 0x2c, 0x89, 0x5d,
0x98, 0xd7, 0xd1, 0xfa, 0xf0, 0x66, 0x4c, 0x12, 0x8e, 0x20, 0xe6, 0x1e, 0x0b, 0x61, 0xb0, 0x00,
0x7b, 0x7c, 0x33, 0x6c, 0xf1, 0x63, 0x5b, 0xdb, 0xd7, 0x57, 0xc7, 0x49, 0x28, 0xbc, 0x60, 0x51,
0x53, 0xef, 0xfa, 0xf2, 0x44, 0x78, 0xbe, 0xe5, 0x85, 0x82, 0x8b, 0x78, 0x1e, 0xd2, 0xfd, 0xa5,
0x84, 0xca, 0xfb, 0xcc, 0xc1, 0x2f, 0x50, 0x35, 0x00, 0x41, 0x07, 0x54, 0xd0, 0xa6, 0xf1, 0xd0,
0xd8, 0xaa, 0xef, 0x6c, 0x99, 0x37, 0xde, 0xb4, 0x39, 0xea, 0x99, 0x87, 0xce, 0xb7, 0xe0, 0x8a,
0x3e, 0x08, 0x6a, 0xe3, 0x8b, 0x71, 0x67, 0x69, 0x32, 0xee, 0xa0, 0x69, 0x8c, 0xe4, 0x6c, 0xf8,
0x0b, 0xb4, 0xcc, 0x23, 0x70, 0x9b, 0x25, 0xc5, 0xfa, 0xd8, 0xbc, 0xc3, 0xfc, 0xcc, 0x7d, 0xe6,
0x1c, 0x47, 0xe0, 0xda, 0x6b, 0x9a, 0x79, 0x59, 0x9e, 0x88, 0xe2, 0xc1, 0xcf, 0xd1, 0x0a, 0x17,
0x54, 0x24, 0xbc, 0x59, 0x56, 0x8c, 0xe6, 0x9d, 0x19, 0x15, 0xca, 0xde, 0xd0, 0x9c, 0x2b, 0xe9,
0x99, 0x68, 0xb6, 0xee, 0x9f, 0x65, 0xb4, 0xb6, 0xcf, 0x9c, 0x5d, 0x16, 0x0e, 0x3c, 0xe1, 0xb1,
0x10, 0x7f, 0x80, 0x96, 0xc5, 0x79, 0x04, 0xea, 0x3a, 0x6a, 0xf6, 0xc3, 0x4c, 0xca, 0xc9, 0x79,
0x04, 0x57, 0xe3, 0x4e, 0xa3, 0x58, 0x2b, 0x63, 0x44, 0x55, 0x17, 0xe4, 0x95, 0x14, 0xee, 0xd9,
0x6c, 0xbb, 0xab, 0x71, 0xe7, 0x56, 0x0b, 0x98, 0x39, 0xe7, 0xac, 0x3c, 0x7c, 0x8a, 0xd6, 0x7d,
0xca, 0xc5, 0x51, 0xcc, 0x1c, 0x38, 0xf1, 0x02, 0xd0, 0x5f, 0xff, 0xde, 0x2d, 0x53, 0x2a, 0xf8,
0xd0, 0x94, 0x10, 0x7b, 0x53, 0x6b, 0x59, 0x3f, 0x28, 0x32, 0x91, 0x59, 0x62, 0xfc, 0x3d, 0xc2,
0x32, 0x70, 0x12, 0xd3, 0x90, 0xa7, 0x5f, 0x27, 0xdb, 0x2d, 0xdf, 0xbf, 0x5d, 0x4b, 0xb7, 0xc3,
0x07, 0x0b, 0x74, 0xe4, 0x9a, 0x16, 0xf8, 0x5d, 0xb4, 0x12, 0x03, 0xe5, 0x2c, 0x6c, 0x56, 0xd4,
0xd5, 0xe5, 0x93, 0x22, 0x2a, 0x4a, 0x74, 0x16, 0x3f, 0x42, 0xab, 0x01, 0x70, 0x4e, 0x87, 0xd0,
0x5c, 0x51, 0x85, 0x0f, 0x74, 0xe1, 0x6a, 0x3f, 0x0d, 0x93, 0x2c, 0xdf, 0x7d, 0x65, 0xa0, 0xd5,
0x7d, 0xe6, 0x1c, 0x78, 0x5c, 0xe0, 0x6f, 0x16, 0x2c, 0x6e, 0xdd, 0xf1, 0x6b, 0x24, 0x5c, 0x39,
0xbd, 0xa1, 0x1b, 0x55, 0xb3, 0x48, 0xc1, 0xe7, 0x7d, 0x54, 0xf1, 0x04, 0x04, 0x72, 0xee, 0xe5,
0xdb, 0xd7, 0x67, 0xd6, 0x96, 0xf6, 0xba, 0x26, 0xad, 0x7c, 0x26, 0xe1, 0x24, 0x65, 0xe9, 0xbe,
0x2a, 0x2b, 0xe5, 0xd2, 0xf8, 0xb8, 0x87, 0xea, 0x11, 0x8d, 0xa9, 0xef, 0x83, 0xef, 0xf1, 0x40,
0x89, 0xaf, 0xd8, 0x0f, 0x26, 0xe3, 0x4e, 0xfd, 0x68, 0x1a, 0x26, 0xc5, 0x1a, 0x09, 0x71, 0x59,
0x10, 0xf9, 0x20, 0x6f, 0x37, 0xf5, 0xa2, 0x86, 0xec, 0x4e, 0xc3, 0xa4, 0x58, 0x83, 0x0f, 0xd1,
0x26, 0x75, 0x85, 0x37, 0x82, 0x4f, 0x80, 0x0e, 0x7c, 0x2f, 0x84, 0x63, 0x70, 0x59, 0x38, 0x48,
0xf7, 0xac, 0x6c, 0xbf, 0x39, 0x19, 0x77, 0x36, 0x3f, 0xbe, 0xae, 0x80, 0x5c, 0x8f, 0xc3, 0x5f,
0xa3, 0x2a, 0x07, 0x1f, 0x5c, 0xc1, 0x62, 0x6d, 0x9f, 0x9d, 0x3b, 0x5d, 0xca, 0x01, 0x75, 0xc0,
0x3f, 0xd6, 0x48, 0x7b, 0x4d, 0xde, 0x77, 0x76, 0x22, 0x39, 0x23, 0x7e, 0x8a, 0x36, 0x02, 0x1a,
0x26, 0x34, 0xaf, 0x54, 0xae, 0xa9, 0xda, 0x78, 0x32, 0xee, 0x6c, 0xf4, 0x67, 0x32, 0x64, 0xae,
0x12, 0x7f, 0x85, 0xaa, 0x02, 0x82, 0xc8, 0xa7, 0x22, 0xb5, 0x50, 0x7d, 0x67, 0xfb, 0xf6, 0xd7,
0xee, 0x88, 0x0d, 0x4e, 0x34, 0x40, 0x3d, 0x4c, 0xb9, 0x11, 0xb2, 0x28, 0xc9, 0x09, 0xbb, 0xbf,
0x97, 0x51, 0x2d, 0x7f, 0x6e, 0x30, 0x20, 0xe4, 0x66, 0x2b, 0xcd, 0x9b, 0x86, 0xf2, 0x46, 0xef,
0xae, 0xde, 0xc8, 0x1f, 0x83, 0xe9, 0x1b, 0x9b, 0x87, 0x38, 0x29, 0x10, 0xe3, 0x17, 0xa8, 0xc6,
0x05, 0x8d, 0x85, 0xda, 0xd5, 0xd2, 0xfd, 0x77, 0x75, 0x7d, 0x32, 0xee, 0xd4, 0x8e, 0x33, 0x06,
0x32, 0x25, 0xc3, 0x43, 0xb4, 0x31, 0x75, 0xc9, 0x7f, 0x7d, 0x79, 0xd4, 0x50, 0x76, 0x67, 0x68,
0xc8, 0x1c, 0xad, 0x5c, 0xff, 0xd4, 0x47, 0xca, 0x2c, 0x95, 0xe9, 0xfa, 0xa7, 0xa6, 0x23, 0x3a,
0x8b, 0x2d, 0x54, 0xe3, 0x89, 0xeb, 0x02, 0x0c, 0x60, 0xa0, 0x66, 0x5e, 0xb1, 0xff, 0xa7, 0x4b,
0x6b, 0xc7, 0x59, 0x82, 0x4c, 0x6b, 0x24, 0xf1, 0x4b, 0xea, 0xf9, 0x30, 0x50, 0xb3, 0x2e, 0x10,
0x7f, 0xaa, 0xa2, 0x44, 0x67, 0xbb, 0x7f, 0x94, 0xd0, 0xfa, 0x8c, 0xf7, 0xf0, 0x8f, 0xa8, 0x1e,
0xc8, 0x71, 0xa8, 0x68, 0x36, 0xbd, 0xdd, 0xfb, 0x9b, 0xd8, 0xec, 0x4f, 0x59, 0xf6, 0x42, 0x11,
0x9f, 0xdb, 0xff, 0xd7, 0x1a, 0xea, 0x85, 0x0c, 0x29, 0x36, 0xc3, 0x3f, 0x1b, 0xa8, 0xa1, 0xce,
0x7b, 0x3f, 0x44, 0x31, 0x70, 0xae, 0xf7, 0x58, 0x2a, 0xf8, 0xe8, 0xfe, 0x0a, 0x08, 0x7c, 0x97,
0x78, 0x31, 0x04, 0x10, 0x0a, 0xbb, 0xa9, 0x7b, 0x37, 0xfa, 0x73, 0xf4, 0x64, 0xa1, 0x61, 0xeb,
0x19, 0x6a, 0xcc, 0x6b, 0xc7, 0x0d, 0x54, 0x3e, 0x83, 0xf3, 0xf4, 0x77, 0x91, 0xc8, 0x3f, 0xf1,
0x1b, 0xa8, 0x32, 0xa2, 0x7e, 0x92, 0x3a, 0xaf, 0x46, 0xd2, 0xc3, 0xd3, 0xd2, 0x13, 0xa3, 0xfb,
0x9b, 0x81, 0x9a, 0x37, 0x09, 0xc1, 0x6f, 0x15, 0x88, 0xec, 0xba, 0x56, 0x55, 0xfe, 0x1c, 0xce,
0x53, 0xd6, 0x3d, 0x54, 0x65, 0x91, 0xfc, 0x6f, 0x85, 0xc5, 0xfa, 0xc7, 0xf4, 0x51, 0xb6, 0x76,
0x87, 0x3a, 0x7e, 0x35, 0xee, 0x6c, 0xce, 0xd0, 0x67, 0x09, 0x92, 0x43, 0x71, 0x17, 0xad, 0x28,
0x3d, 0xf2, 0x21, 0x2b, 0x6f, 0xd5, 0x6c, 0x24, 0x47, 0xff, 0x5c, 0x45, 0x88, 0xce, 0xd8, 0xef,
0x5c, 0x5c, 0xb6, 0x97, 0x5e, 0x5f, 0xb6, 0x97, 0xfe, 0xba, 0x6c, 0x2f, 0xfd, 0x34, 0x69, 0x1b,
0x17, 0x93, 0xb6, 0xf1, 0x7a, 0xd2, 0x36, 0xfe, 0x9e, 0xb4, 0x8d, 0x5f, 0xff, 0x69, 0x2f, 0x7d,
0x59, 0x1a, 0xf5, 0xfe, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xd1, 0x8b, 0x10, 0xf1, 0xb1, 0x0a, 0x00,
0x00,
// 863 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0x9c, 0x54, 0xcf, 0x6f, 0xe3, 0x44,
0x14, 0xce, 0x8f, 0xa6, 0x4d, 0xa6, 0x3f, 0x76, 0x19, 0xa9, 0x52, 0xc8, 0x21, 0x59, 0x05, 0x84,
0x16, 0xb1, 0x1d, 0x2b, 0x65, 0x91, 0x10, 0x07, 0x24, 0x5c, 0x84, 0x44, 0xd5, 0xb2, 0xd5, 0xa4,
0x42, 0x2b, 0x10, 0x48, 0x63, 0xfb, 0x6d, 0x3a, 0xd4, 0xf6, 0x58, 0x9e, 0x71, 0xd0, 0xde, 0xb8,
0x71, 0xe5, 0xaf, 0x01, 0xf1, 0x1f, 0xf4, 0xb8, 0xe2, 0xc4, 0x29, 0xa2, 0xe6, 0xbf, 0xd8, 0x13,
0xf2, 0x78, 0x62, 0x3b, 0x4d, 0x1a, 0xa5, 0xdc, 0x3c, 0x6f, 0xbe, 0xef, 0x7b, 0xcf, 0xef, 0x7d,
0xf3, 0xd0, 0xc7, 0xd7, 0x9f, 0x4a, 0xc2, 0x85, 0x75, 0x9d, 0x38, 0x10, 0x87, 0xa0, 0x40, 0x5a,
0xd1, 0xf5, 0xc4, 0x62, 0x11, 0x97, 0x96, 0xc3, 0x94, 0x7b, 0x65, 0x4d, 0x47, 0xd6, 0x04, 0x42,
0x88, 0x99, 0x02, 0x8f, 0x44, 0xb1, 0x50, 0x02, 0xbf, 0x97, 0x93, 0x48, 0x49, 0x22, 0xd1, 0xf5,
0x84, 0x64, 0x24, 0xa2, 0x49, 0x64, 0x3a, 0xea, 0x1d, 0x4d, 0xb8, 0xba, 0x4a, 0x1c, 0xe2, 0x8a,
0xc0, 0x9a, 0x88, 0x89, 0xb0, 0x34, 0xd7, 0x49, 0x5e, 0xe9, 0x93, 0x3e, 0xe8, 0xaf, 0x5c, 0xb3,
0x77, 0x7c, 0x6f, 0x21, 0x56, 0x0c, 0x52, 0x24, 0xb1, 0x0b, 0x77, 0xeb, 0xe8, 0x7d, 0x72, 0x3f,
0x27, 0x09, 0xa7, 0x10, 0x4b, 0x2e, 0x42, 0xf0, 0x96, 0x68, 0xcf, 0xee, 0xa7, 0x2d, 0xff, 0x6c,
0xef, 0x68, 0x35, 0x3a, 0x4e, 0x42, 0xc5, 0x83, 0xe5, 0x9a, 0x46, 0xab, 0xe1, 0x89, 0xe2, 0xbe,
0xc5, 0x43, 0x25, 0x55, 0x7c, 0x97, 0x32, 0xfc, 0xb5, 0x81, 0x9a, 0xa7, 0xc2, 0xc1, 0x2f, 0x51,
0x3b, 0x00, 0xc5, 0x3c, 0xa6, 0x58, 0xb7, 0xfe, 0xa4, 0xfe, 0x74, 0xf7, 0xf8, 0x29, 0xb9, 0xb7,
0xd3, 0x64, 0x3a, 0x22, 0x2f, 0x9c, 0x9f, 0xc0, 0x55, 0xe7, 0xa0, 0x98, 0x8d, 0x6f, 0x66, 0x83,
0x5a, 0x3a, 0x1b, 0xa0, 0x32, 0x46, 0x0b, 0x35, 0xfc, 0x0d, 0xda, 0x92, 0x11, 0xb8, 0xdd, 0x86,
0x56, 0x7d, 0x46, 0x36, 0x98, 0x1f, 0x39, 0x15, 0xce, 0x38, 0x02, 0xd7, 0xde, 0x33, 0xca, 0x5b,
0xd9, 0x89, 0x6a, 0x1d, 0xfc, 0x2d, 0xda, 0x96, 0x8a, 0xa9, 0x44, 0x76, 0x9b, 0x5a, 0x91, 0x6c,
0xac, 0xa8, 0x59, 0xf6, 0x81, 0xd1, 0xdc, 0xce, 0xcf, 0xd4, 0xa8, 0x0d, 0xff, 0x6a, 0xa2, 0xbd,
0x53, 0xe1, 0x9c, 0x88, 0xd0, 0xe3, 0x8a, 0x8b, 0x10, 0x3f, 0x47, 0x5b, 0xea, 0x75, 0x04, 0xba,
0x1d, 0x1d, 0xfb, 0xc9, 0xbc, 0x94, 0xcb, 0xd7, 0x11, 0xbc, 0x9d, 0x0d, 0x1e, 0x57, 0xb1, 0x59,
0x8c, 0x6a, 0x74, 0xa5, 0xbc, 0x86, 0xe6, 0x7d, 0xbe, 0x98, 0xee, 0xed, 0x6c, 0xb0, 0xd6, 0x02,
0xa4, 0xd0, 0x5c, 0x2c, 0x0f, 0x5f, 0xa1, 0x7d, 0x9f, 0x49, 0x75, 0x11, 0x0b, 0x07, 0x2e, 0x79,
0x00, 0xe6, 0xef, 0x3f, 0x5a, 0x33, 0xa5, 0x8a, 0x0f, 0x49, 0x46, 0xb1, 0x0f, 0x4d, 0x2d, 0xfb,
0x67, 0x55, 0x25, 0xba, 0x28, 0x8c, 0x7f, 0x46, 0x38, 0x0b, 0x5c, 0xc6, 0x2c, 0x94, 0xf9, 0xdf,
0x65, 0xe9, 0xb6, 0x1e, 0x9e, 0xae, 0x67, 0xd2, 0xe1, 0xb3, 0x25, 0x39, 0xba, 0x22, 0x05, 0xfe,
0x00, 0x6d, 0xc7, 0xc0, 0xa4, 0x08, 0xbb, 0x2d, 0xdd, 0xba, 0x62, 0x52, 0x54, 0x47, 0xa9, 0xb9,
0xc5, 0x1f, 0xa2, 0x9d, 0x00, 0xa4, 0x64, 0x13, 0xe8, 0x6e, 0x6b, 0xe0, 0x23, 0x03, 0xdc, 0x39,
0xcf, 0xc3, 0x74, 0x7e, 0x3f, 0xfc, 0xa3, 0x8e, 0x76, 0x4e, 0x85, 0x73, 0xc6, 0xa5, 0xc2, 0x3f,
0x2c, 0x59, 0xdc, 0xda, 0xf0, 0x6f, 0x32, 0xba, 0x76, 0xfa, 0x63, 0x93, 0xa8, 0x3d, 0x8f, 0x54,
0x7c, 0x7e, 0x8e, 0x5a, 0x5c, 0x41, 0x90, 0xcd, 0xbd, 0xb9, 0xfe, 0xf9, 0x2c, 0xda, 0xd2, 0xde,
0x37, 0xa2, 0xad, 0xaf, 0x33, 0x3a, 0xcd, 0x55, 0x86, 0x7f, 0x36, 0x75, 0xe5, 0x99, 0xf1, 0xf1,
0x08, 0xed, 0x46, 0x2c, 0x66, 0xbe, 0x0f, 0x3e, 0x97, 0x81, 0x2e, 0xbe, 0x65, 0x3f, 0x4a, 0x67,
0x83, 0xdd, 0x8b, 0x32, 0x4c, 0xab, 0x98, 0x8c, 0xe2, 0x8a, 0x20, 0xf2, 0x21, 0xeb, 0x6e, 0xee,
0x45, 0x43, 0x39, 0x29, 0xc3, 0xb4, 0x8a, 0xc1, 0x2f, 0xd0, 0x21, 0x73, 0x15, 0x9f, 0xc2, 0x97,
0xc0, 0x3c, 0x9f, 0x87, 0x30, 0x06, 0x57, 0x84, 0x5e, 0xfe, 0xce, 0x9a, 0xf6, 0xbb, 0xe9, 0x6c,
0x70, 0xf8, 0xc5, 0x2a, 0x00, 0x5d, 0xcd, 0xc3, 0x3f, 0xa2, 0xb6, 0x04, 0x1f, 0x5c, 0x25, 0x62,
0x63, 0x9f, 0xe7, 0x9b, 0x36, 0x9c, 0x39, 0xe0, 0x8f, 0x0d, 0xd7, 0xde, 0xcb, 0x3a, 0x3e, 0x3f,
0xd1, 0x42, 0x13, 0x7f, 0x86, 0x0e, 0x02, 0x16, 0x26, 0xac, 0x40, 0x6a, 0xdf, 0xb4, 0x6d, 0x9c,
0xce, 0x06, 0x07, 0xe7, 0x0b, 0x37, 0xf4, 0x0e, 0x12, 0x7f, 0x8f, 0xda, 0x0a, 0x82, 0xc8, 0x67,
0x2a, 0x37, 0xd1, 0xee, 0xf1, 0xd1, 0xfa, 0x7d, 0x77, 0x21, 0xbc, 0x4b, 0x43, 0xd0, 0xab, 0xa9,
0xb0, 0xc2, 0x3c, 0x4a, 0x0b, 0xc1, 0xe1, 0xef, 0x4d, 0xd4, 0x29, 0x16, 0x0e, 0x06, 0x84, 0xdc,
0xf9, 0xa3, 0x96, 0xdd, 0xba, 0x76, 0xc7, 0x68, 0x53, 0x77, 0x14, 0xeb, 0xa0, 0xdc, 0xb2, 0x45,
0x48, 0xd2, 0x8a, 0x30, 0x7e, 0x89, 0x3a, 0x52, 0xb1, 0x58, 0xe9, 0xd7, 0xda, 0x78, 0xf8, 0x6b,
0xdd, 0x4f, 0x67, 0x83, 0xce, 0x78, 0xae, 0x40, 0x4b, 0x31, 0x3c, 0x41, 0x07, 0xa5, 0x4f, 0xfe,
0xef, 0xee, 0xd1, 0x43, 0x39, 0x59, 0x90, 0xa1, 0x77, 0x64, 0xb3, 0x05, 0x90, 0x3b, 0x49, 0xdb,
0xa5, 0x55, 0x2e, 0x80, 0xdc, 0x76, 0xd4, 0xdc, 0x62, 0x0b, 0x75, 0x64, 0xe2, 0xba, 0x00, 0x1e,
0x78, 0x7a, 0xe6, 0x2d, 0xfb, 0x1d, 0x03, 0xed, 0x8c, 0xe7, 0x17, 0xb4, 0xc4, 0x64, 0xc2, 0xaf,
0x18, 0xf7, 0xc1, 0xd3, 0xb3, 0xae, 0x08, 0x7f, 0xa5, 0xa3, 0xd4, 0xdc, 0xda, 0xef, 0xdf, 0xdc,
0xf6, 0x6b, 0x6f, 0x6e, 0xfb, 0xb5, 0xbf, 0x6f, 0xfb, 0xb5, 0x5f, 0xd2, 0x7e, 0xfd, 0x26, 0xed,
0xd7, 0xdf, 0xa4, 0xfd, 0xfa, 0x3f, 0x69, 0xbf, 0xfe, 0xdb, 0xbf, 0xfd, 0xda, 0x77, 0x8d, 0xe9,
0xe8, 0xbf, 0x00, 0x00, 0x00, 0xff, 0xff, 0x9a, 0x45, 0x86, 0xd9, 0xb8, 0x08, 0x00, 0x00,
}

View File

@ -112,7 +112,7 @@ message JobSpec {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
optional LabelSelector selector = 4;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 4;
// ManualSelector controls generation of pod labels and pod selectors.
// Leave `manualSelector` unset unless you are certain what you are doing.
@ -165,36 +165,3 @@ message JobStatus {
optional int32 failed = 6;
}
// 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.
message LabelSelector {
// 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.
// +optional
map<string, string> matchLabels = 1;
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
repeated LabelSelectorRequirement matchExpressions = 2;
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
message LabelSelectorRequirement {
// key is the label key that the selector applies to.
optional string key = 1;
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
optional string operator = 2;
// 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.
// +optional
repeated string values = 3;
}

File diff suppressed because it is too large Load Diff

View File

@ -83,7 +83,7 @@ type JobSpec struct {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
// ManualSelector controls generation of pod labels and pod selectors.
// Leave `manualSelector` unset unless you are certain what you are doing.
@ -166,43 +166,3 @@ type JobCondition struct {
// +optional
Message string `json:"message,omitempty" protobuf:"bytes,6,opt,name=message"`
}
// 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.
// +optional
MatchLabels map[string]string `json:"matchLabels,omitempty" protobuf:"bytes,1,rep,name=matchLabels"`
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty" protobuf:"bytes,2,rep,name=matchExpressions"`
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
type LabelSelectorRequirement struct {
// key is the label key that the selector applies to.
Key string `json:"key" patchStrategy:"merge" patchMergeKey:"key" protobuf:"bytes,1,opt,name=key"`
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
Operator LabelSelectorOperator `json:"operator" protobuf:"bytes,2,opt,name=operator,casttype=LabelSelectorOperator"`
// 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.
// +optional
Values []string `json:"values,omitempty" protobuf:"bytes,3,rep,name=values"`
}
// A label selector operator is the set of operators that can be used in a selector requirement.
type LabelSelectorOperator string
const (
LabelSelectorOpIn LabelSelectorOperator = "In"
LabelSelectorOpNotIn LabelSelectorOperator = "NotIn"
LabelSelectorOpExists LabelSelectorOperator = "Exists"
LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist"
)

View File

@ -90,25 +90,4 @@ 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
}
// AUTO-GENERATED FUNCTIONS END HERE

View File

@ -49,10 +49,6 @@ func RegisterConversions(scheme *runtime.Scheme) error {
Convert_batch_JobSpec_To_v1_JobSpec,
Convert_v1_JobStatus_To_batch_JobStatus,
Convert_batch_JobStatus_To_v1_JobStatus,
Convert_v1_LabelSelector_To_unversioned_LabelSelector,
Convert_unversioned_LabelSelector_To_v1_LabelSelector,
Convert_v1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement,
Convert_unversioned_LabelSelectorRequirement_To_v1_LabelSelectorRequirement,
)
}
@ -176,7 +172,7 @@ func autoConvert_batch_JobSpec_To_v1_JobSpec(in *batch.JobSpec, out *JobSpec, s
out.Parallelism = (*int32)(unsafe.Pointer(in.Parallelism))
out.Completions = (*int32)(unsafe.Pointer(in.Completions))
out.ActiveDeadlineSeconds = (*int64)(unsafe.Pointer(in.ActiveDeadlineSeconds))
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
out.ManualSelector = (*bool)(unsafe.Pointer(in.ManualSelector))
if err := api_v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
@ -219,67 +215,3 @@ func autoConvert_batch_JobStatus_To_v1_JobStatus(in *batch.JobStatus, out *JobSt
func Convert_batch_JobStatus_To_v1_JobStatus(in *batch.JobStatus, out *JobStatus, s conversion.Scope) error {
return autoConvert_batch_JobStatus_To_v1_JobStatus(in, out, s)
}
func autoConvert_v1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_v1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
return autoConvert_v1_LabelSelector_To_unversioned_LabelSelector(in, out, s)
}
func autoConvert_unversioned_LabelSelector_To_v1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelector_To_v1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelector_To_v1_LabelSelector(in, out, s)
}
func autoConvert_v1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = unversioned.LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_v1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_v1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in, out, s)
}
func autoConvert_unversioned_LabelSelectorRequirement_To_v1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelectorRequirement_To_v1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelectorRequirement_To_v1_LabelSelectorRequirement(in, out, s)
}

View File

@ -41,8 +41,6 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_JobList, InType: reflect.TypeOf(&JobList{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_JobSpec, InType: reflect.TypeOf(&JobSpec{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_JobStatus, InType: reflect.TypeOf(&JobStatus{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LabelSelector, InType: reflect.TypeOf(&LabelSelector{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1_LabelSelectorRequirement, InType: reflect.TypeOf(&LabelSelectorRequirement{})},
)
}
@ -126,8 +124,8 @@ func DeepCopy_v1_JobSpec(in interface{}, out interface{}, c *conversion.Cloner)
}
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -182,48 +180,3 @@ func DeepCopy_v1_JobStatus(in interface{}, out interface{}, c *conversion.Cloner
return nil
}
}
func DeepCopy_v1_LabelSelector(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelector)
out := out.(*LabelSelector)
if in.MatchLabels != nil {
in, out := &in.MatchLabels, &out.MatchLabels
*out = make(map[string]string)
for key, val := range *in {
(*out)[key] = val
}
} else {
out.MatchLabels = nil
}
if in.MatchExpressions != nil {
in, out := &in.MatchExpressions, &out.MatchExpressions
*out = make([]LabelSelectorRequirement, len(*in))
for i := range *in {
if err := DeepCopy_v1_LabelSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil {
return err
}
}
} else {
out.MatchExpressions = nil
}
return nil
}
}
func DeepCopy_v1_LabelSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelectorRequirement)
out := out.(*LabelSelectorRequirement)
out.Key = in.Key
out.Operator = in.Operator
if in.Values != nil {
in, out := &in.Values, &out.Values
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Values = nil
}
return nil
}
}

View File

@ -38,7 +38,6 @@ go_library(
"//pkg/util/intstr:go_default_library",
"//pkg/watch/versioned:go_default_library",
"//vendor:github.com/gogo/protobuf/proto",
"//vendor:github.com/gogo/protobuf/sortkeys",
"//vendor:github.com/ugorji/go/codec",
],
)

View File

@ -20,7 +20,6 @@ import (
"fmt"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
v1 "k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/batch"
"k8s.io/kubernetes/pkg/conversion"
@ -59,15 +58,7 @@ func Convert_batch_JobSpec_To_v2alpha1_JobSpec(in *batch.JobSpec, out *JobSpec,
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for unversioned.LabelSelector -> v1.LabelSelector
if in.Selector != nil {
out.Selector = new(LabelSelector)
if err := Convert_unversioned_LabelSelector_To_v2alpha1_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if in.ManualSelector != nil {
out.ManualSelector = new(bool)
*out.ManualSelector = *in.ManualSelector
@ -85,15 +76,7 @@ func Convert_v2alpha1_JobSpec_To_batch_JobSpec(in *JobSpec, out *batch.JobSpec,
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for unversioned.LabelSelector -> v1.LabelSelector
if in.Selector != nil {
out.Selector = new(unversioned.LabelSelector)
if err := Convert_v2alpha1_LabelSelector_To_unversioned_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if in.ManualSelector != nil {
out.ManualSelector = new(bool)
*out.ManualSelector = *in.ManualSelector

View File

@ -32,8 +32,6 @@ limitations under the License.
JobStatus
JobTemplate
JobTemplateSpec
LabelSelector
LabelSelectorRequirement
ScheduledJob
ScheduledJobList
ScheduledJobSpec
@ -50,7 +48,6 @@ import k8s_io_kubernetes_pkg_api_v1 "k8s.io/kubernetes/pkg/api/v1"
import strings "strings"
import reflect "reflect"
import github_com_gogo_protobuf_sortkeys "github.com/gogo/protobuf/sortkeys"
import io "io"
@ -91,31 +88,21 @@ func (m *JobTemplateSpec) Reset() { *m = JobTemplateSpec{} }
func (*JobTemplateSpec) ProtoMessage() {}
func (*JobTemplateSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{6} }
func (m *LabelSelector) Reset() { *m = LabelSelector{} }
func (*LabelSelector) ProtoMessage() {}
func (*LabelSelector) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} }
func (m *LabelSelectorRequirement) Reset() { *m = LabelSelectorRequirement{} }
func (*LabelSelectorRequirement) ProtoMessage() {}
func (*LabelSelectorRequirement) Descriptor() ([]byte, []int) {
return fileDescriptorGenerated, []int{8}
}
func (m *ScheduledJob) Reset() { *m = ScheduledJob{} }
func (*ScheduledJob) ProtoMessage() {}
func (*ScheduledJob) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} }
func (*ScheduledJob) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{7} }
func (m *ScheduledJobList) Reset() { *m = ScheduledJobList{} }
func (*ScheduledJobList) ProtoMessage() {}
func (*ScheduledJobList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} }
func (*ScheduledJobList) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{8} }
func (m *ScheduledJobSpec) Reset() { *m = ScheduledJobSpec{} }
func (*ScheduledJobSpec) ProtoMessage() {}
func (*ScheduledJobSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{11} }
func (*ScheduledJobSpec) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{9} }
func (m *ScheduledJobStatus) Reset() { *m = ScheduledJobStatus{} }
func (*ScheduledJobStatus) ProtoMessage() {}
func (*ScheduledJobStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{12} }
func (*ScheduledJobStatus) Descriptor() ([]byte, []int) { return fileDescriptorGenerated, []int{10} }
func init() {
proto.RegisterType((*Job)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.Job")
@ -125,8 +112,6 @@ func init() {
proto.RegisterType((*JobStatus)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.JobStatus")
proto.RegisterType((*JobTemplate)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.JobTemplate")
proto.RegisterType((*JobTemplateSpec)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.JobTemplateSpec")
proto.RegisterType((*LabelSelector)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.LabelSelector")
proto.RegisterType((*LabelSelectorRequirement)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.LabelSelectorRequirement")
proto.RegisterType((*ScheduledJob)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.ScheduledJob")
proto.RegisterType((*ScheduledJobList)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.ScheduledJobList")
proto.RegisterType((*ScheduledJobSpec)(nil), "k8s.io.kubernetes.pkg.apis.batch.v2alpha1.ScheduledJobSpec")
@ -450,94 +435,6 @@ func (m *JobTemplateSpec) MarshalTo(data []byte) (int, error) {
return i, nil
}
func (m *LabelSelector) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *LabelSelector) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
if len(m.MatchLabels) > 0 {
for k := range m.MatchLabels {
data[i] = 0xa
i++
v := m.MatchLabels[k]
mapSize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v)))
i = encodeVarintGenerated(data, i, uint64(mapSize))
data[i] = 0xa
i++
i = encodeVarintGenerated(data, i, uint64(len(k)))
i += copy(data[i:], k)
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(len(v)))
i += copy(data[i:], v)
}
}
if len(m.MatchExpressions) > 0 {
for _, msg := range m.MatchExpressions {
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(msg.Size()))
n, err := msg.MarshalTo(data[i:])
if err != nil {
return 0, err
}
i += n
}
}
return i, nil
}
func (m *LabelSelectorRequirement) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
n, err := m.MarshalTo(data)
if err != nil {
return nil, err
}
return data[:n], nil
}
func (m *LabelSelectorRequirement) MarshalTo(data []byte) (int, error) {
var i int
_ = i
var l int
_ = l
data[i] = 0xa
i++
i = encodeVarintGenerated(data, i, uint64(len(m.Key)))
i += copy(data[i:], m.Key)
data[i] = 0x12
i++
i = encodeVarintGenerated(data, i, uint64(len(m.Operator)))
i += copy(data[i:], m.Operator)
if len(m.Values) > 0 {
for _, s := range m.Values {
data[i] = 0x1a
i++
l = len(s)
for l >= 1<<7 {
data[i] = uint8(uint64(l)&0x7f | 0x80)
l >>= 7
i++
}
data[i] = uint8(l)
i++
i += copy(data[i:], s)
}
}
return i, nil
}
func (m *ScheduledJob) Marshal() (data []byte, err error) {
size := m.Size()
data = make([]byte, size)
@ -845,42 +742,6 @@ func (m *JobTemplateSpec) Size() (n int) {
return n
}
func (m *LabelSelector) Size() (n int) {
var l int
_ = l
if len(m.MatchLabels) > 0 {
for k, v := range m.MatchLabels {
_ = k
_ = v
mapEntrySize := 1 + len(k) + sovGenerated(uint64(len(k))) + 1 + len(v) + sovGenerated(uint64(len(v)))
n += mapEntrySize + 1 + sovGenerated(uint64(mapEntrySize))
}
}
if len(m.MatchExpressions) > 0 {
for _, e := range m.MatchExpressions {
l = e.Size()
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
func (m *LabelSelectorRequirement) Size() (n int) {
var l int
_ = l
l = len(m.Key)
n += 1 + l + sovGenerated(uint64(l))
l = len(m.Operator)
n += 1 + l + sovGenerated(uint64(l))
if len(m.Values) > 0 {
for _, s := range m.Values {
l = len(s)
n += 1 + l + sovGenerated(uint64(l))
}
}
return n
}
func (m *ScheduledJob) Size() (n int) {
var l int
_ = l
@ -1000,7 +861,7 @@ func (this *JobSpec) String() string {
`Parallelism:` + valueToStringGenerated(this.Parallelism) + `,`,
`Completions:` + valueToStringGenerated(this.Completions) + `,`,
`ActiveDeadlineSeconds:` + valueToStringGenerated(this.ActiveDeadlineSeconds) + `,`,
`Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "LabelSelector", 1) + `,`,
`Selector:` + strings.Replace(fmt.Sprintf("%v", this.Selector), "LabelSelector", "k8s_io_kubernetes_pkg_api_unversioned.LabelSelector", 1) + `,`,
`ManualSelector:` + valueToStringGenerated(this.ManualSelector) + `,`,
`Template:` + strings.Replace(strings.Replace(this.Template.String(), "PodTemplateSpec", "k8s_io_kubernetes_pkg_api_v1.PodTemplateSpec", 1), `&`, ``, 1) + `,`,
`}`,
@ -1044,39 +905,6 @@ func (this *JobTemplateSpec) String() string {
}, "")
return s
}
func (this *LabelSelector) String() string {
if this == nil {
return "nil"
}
keysForMatchLabels := make([]string, 0, len(this.MatchLabels))
for k := range this.MatchLabels {
keysForMatchLabels = append(keysForMatchLabels, k)
}
github_com_gogo_protobuf_sortkeys.Strings(keysForMatchLabels)
mapStringForMatchLabels := "map[string]string{"
for _, k := range keysForMatchLabels {
mapStringForMatchLabels += fmt.Sprintf("%v: %v,", k, this.MatchLabels[k])
}
mapStringForMatchLabels += "}"
s := strings.Join([]string{`&LabelSelector{`,
`MatchLabels:` + mapStringForMatchLabels + `,`,
`MatchExpressions:` + strings.Replace(strings.Replace(fmt.Sprintf("%v", this.MatchExpressions), "LabelSelectorRequirement", "LabelSelectorRequirement", 1), `&`, ``, 1) + `,`,
`}`,
}, "")
return s
}
func (this *LabelSelectorRequirement) String() string {
if this == nil {
return "nil"
}
s := strings.Join([]string{`&LabelSelectorRequirement{`,
`Key:` + fmt.Sprintf("%v", this.Key) + `,`,
`Operator:` + fmt.Sprintf("%v", this.Operator) + `,`,
`Values:` + fmt.Sprintf("%v", this.Values) + `,`,
`}`,
}, "")
return s
}
func (this *ScheduledJob) String() string {
if this == nil {
return "nil"
@ -1726,7 +1554,7 @@ func (m *JobSpec) Unmarshal(data []byte) error {
return io.ErrUnexpectedEOF
}
if m.Selector == nil {
m.Selector = &LabelSelector{}
m.Selector = &k8s_io_kubernetes_pkg_api_unversioned.LabelSelector{}
}
if err := m.Selector.Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
@ -2228,335 +2056,6 @@ func (m *JobTemplateSpec) Unmarshal(data []byte) error {
}
return nil
}
func (m *LabelSelector) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: LabelSelector: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: LabelSelector: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field MatchLabels", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
var keykey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
keykey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var stringLenmapkey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLenmapkey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLenmapkey := int(stringLenmapkey)
if intStringLenmapkey < 0 {
return ErrInvalidLengthGenerated
}
postStringIndexmapkey := iNdEx + intStringLenmapkey
if postStringIndexmapkey > l {
return io.ErrUnexpectedEOF
}
mapkey := string(data[iNdEx:postStringIndexmapkey])
iNdEx = postStringIndexmapkey
var valuekey uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
valuekey |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
var stringLenmapvalue uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLenmapvalue |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLenmapvalue := int(stringLenmapvalue)
if intStringLenmapvalue < 0 {
return ErrInvalidLengthGenerated
}
postStringIndexmapvalue := iNdEx + intStringLenmapvalue
if postStringIndexmapvalue > l {
return io.ErrUnexpectedEOF
}
mapvalue := string(data[iNdEx:postStringIndexmapvalue])
iNdEx = postStringIndexmapvalue
if m.MatchLabels == nil {
m.MatchLabels = make(map[string]string)
}
m.MatchLabels[mapkey] = mapvalue
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field MatchExpressions", wireType)
}
var msglen int
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
msglen |= (int(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
if msglen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + msglen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.MatchExpressions = append(m.MatchExpressions, LabelSelectorRequirement{})
if err := m.MatchExpressions[len(m.MatchExpressions)-1].Unmarshal(data[iNdEx:postIndex]); err != nil {
return err
}
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *LabelSelectorRequirement) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
for iNdEx < l {
preIndex := iNdEx
var wire uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
wire |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
fieldNum := int32(wire >> 3)
wireType := int(wire & 0x7)
if wireType == 4 {
return fmt.Errorf("proto: LabelSelectorRequirement: wiretype end group for non-group")
}
if fieldNum <= 0 {
return fmt.Errorf("proto: LabelSelectorRequirement: illegal tag %d (wire type %d)", fieldNum, wire)
}
switch fieldNum {
case 1:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Key", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Key = string(data[iNdEx:postIndex])
iNdEx = postIndex
case 2:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Operator", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Operator = LabelSelectorOperator(data[iNdEx:postIndex])
iNdEx = postIndex
case 3:
if wireType != 2 {
return fmt.Errorf("proto: wrong wireType = %d for field Values", wireType)
}
var stringLen uint64
for shift := uint(0); ; shift += 7 {
if shift >= 64 {
return ErrIntOverflowGenerated
}
if iNdEx >= l {
return io.ErrUnexpectedEOF
}
b := data[iNdEx]
iNdEx++
stringLen |= (uint64(b) & 0x7F) << shift
if b < 0x80 {
break
}
}
intStringLen := int(stringLen)
if intStringLen < 0 {
return ErrInvalidLengthGenerated
}
postIndex := iNdEx + intStringLen
if postIndex > l {
return io.ErrUnexpectedEOF
}
m.Values = append(m.Values, string(data[iNdEx:postIndex]))
iNdEx = postIndex
default:
iNdEx = preIndex
skippy, err := skipGenerated(data[iNdEx:])
if err != nil {
return err
}
if skippy < 0 {
return ErrInvalidLengthGenerated
}
if (iNdEx + skippy) > l {
return io.ErrUnexpectedEOF
}
iNdEx += skippy
}
}
if iNdEx > l {
return io.ErrUnexpectedEOF
}
return nil
}
func (m *ScheduledJob) Unmarshal(data []byte) error {
l := len(data)
iNdEx := 0
@ -3207,88 +2706,77 @@ var (
)
var fileDescriptorGenerated = []byte{
// 1316 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x57, 0xcf, 0x6f, 0x1b, 0xc5,
0x17, 0xcf, 0xda, 0x71, 0x62, 0x8f, 0x93, 0xd4, 0x9d, 0x6f, 0xa3, 0xfa, 0x1b, 0x84, 0x5d, 0x59,
0x02, 0xa5, 0xd0, 0xac, 0x95, 0xa8, 0xa8, 0xa5, 0x88, 0x4a, 0x6c, 0x28, 0x52, 0x43, 0xa2, 0x46,
0xe3, 0xb4, 0xaa, 0xa0, 0x3d, 0xac, 0x77, 0x5f, 0x9d, 0x6d, 0x76, 0x77, 0xb6, 0x3b, 0xb3, 0x01,
0xdf, 0x7a, 0xe5, 0x04, 0x12, 0xff, 0x02, 0x67, 0xfe, 0x02, 0x7a, 0xe0, 0xd6, 0x1b, 0x85, 0x13,
0xe2, 0x60, 0x51, 0xf3, 0x5f, 0xe4, 0x84, 0x66, 0x76, 0x76, 0xbd, 0xfe, 0x15, 0xc5, 0x41, 0x45,
0xe2, 0xb6, 0xf3, 0x7e, 0x7c, 0xde, 0x9b, 0x79, 0x9f, 0x79, 0xf3, 0x16, 0x7d, 0x78, 0x74, 0x93,
0xe9, 0x0e, 0x6d, 0x1e, 0x45, 0x6d, 0x08, 0x7d, 0xe0, 0xc0, 0x9a, 0xc1, 0x51, 0xa7, 0x69, 0x06,
0x0e, 0x6b, 0xb6, 0x4d, 0x6e, 0x1d, 0x36, 0x8f, 0xb7, 0x4c, 0x37, 0x38, 0x34, 0x37, 0x9b, 0x1d,
0xf0, 0x21, 0x34, 0x39, 0xd8, 0x7a, 0x10, 0x52, 0x4e, 0xf1, 0xd5, 0xd8, 0x55, 0x1f, 0xb8, 0xea,
0xc1, 0x51, 0x47, 0x17, 0xae, 0xba, 0x74, 0xd5, 0x13, 0xd7, 0xb5, 0x8d, 0x8e, 0xc3, 0x0f, 0xa3,
0xb6, 0x6e, 0x51, 0xaf, 0xd9, 0xa1, 0x1d, 0xda, 0x94, 0x08, 0xed, 0xe8, 0x89, 0x5c, 0xc9, 0x85,
0xfc, 0x8a, 0x91, 0xd7, 0xb6, 0xa6, 0x26, 0xd5, 0x0c, 0x81, 0xd1, 0x28, 0xb4, 0x60, 0x34, 0x9b,
0xb5, 0x0f, 0xa6, 0xfb, 0x44, 0xfe, 0x31, 0x84, 0xcc, 0xa1, 0x3e, 0xd8, 0x63, 0x6e, 0xd7, 0xa6,
0xbb, 0x1d, 0x8f, 0x6d, 0x79, 0x6d, 0x63, 0xb2, 0x75, 0x18, 0xf9, 0xdc, 0xf1, 0xc6, 0x73, 0xda,
0x9c, 0x6c, 0x1e, 0x71, 0xc7, 0x6d, 0x3a, 0x3e, 0x67, 0x3c, 0x1c, 0x75, 0x69, 0x7c, 0x9f, 0x43,
0xf9, 0x1d, 0xda, 0xc6, 0x0f, 0x51, 0xd1, 0x03, 0x6e, 0xda, 0x26, 0x37, 0xab, 0xda, 0x15, 0x6d,
0xbd, 0xbc, 0xb5, 0xae, 0x4f, 0x3d, 0x6f, 0xfd, 0x78, 0x53, 0xbf, 0xd7, 0x7e, 0x0a, 0x16, 0xdf,
0x03, 0x6e, 0x1a, 0xf8, 0x65, 0xaf, 0x3e, 0xd7, 0xef, 0xd5, 0xd1, 0x40, 0x46, 0x52, 0x34, 0x7c,
0x80, 0xe6, 0x59, 0x00, 0x56, 0x35, 0x27, 0x51, 0xb7, 0xf4, 0x33, 0x57, 0x51, 0xdf, 0xa1, 0xed,
0x56, 0x00, 0x96, 0xb1, 0xa4, 0xf0, 0xe7, 0xc5, 0x8a, 0x48, 0x34, 0xfc, 0x08, 0x2d, 0x30, 0x6e,
0xf2, 0x88, 0x55, 0xf3, 0x12, 0xf7, 0xfa, 0x8c, 0xb8, 0xd2, 0xd7, 0x58, 0x51, 0xc8, 0x0b, 0xf1,
0x9a, 0x28, 0xcc, 0xc6, 0x6f, 0x79, 0xb4, 0xb4, 0x43, 0xdb, 0xdb, 0xd4, 0xb7, 0x1d, 0xee, 0x50,
0x1f, 0x5f, 0x47, 0xf3, 0xbc, 0x1b, 0x80, 0x3c, 0x9a, 0x92, 0x71, 0x25, 0x49, 0xe8, 0xa0, 0x1b,
0xc0, 0x49, 0xaf, 0x5e, 0xc9, 0xda, 0x0a, 0x19, 0x91, 0xd6, 0xf8, 0x41, 0x9a, 0x64, 0x4e, 0xfa,
0xdd, 0x1e, 0x0e, 0x77, 0xd2, 0xab, 0x9f, 0x4a, 0x07, 0x3d, 0xc5, 0x1c, 0x4e, 0x0f, 0x1f, 0xa2,
0x65, 0xd7, 0x64, 0x7c, 0x3f, 0xa4, 0x6d, 0x38, 0x70, 0x3c, 0x50, 0x67, 0xf0, 0xfe, 0x29, 0x15,
0xcb, 0x70, 0x52, 0x17, 0x2e, 0xc6, 0xaa, 0xca, 0x65, 0x79, 0x37, 0x8b, 0x44, 0x86, 0x81, 0xf1,
0x57, 0x08, 0x0b, 0xc1, 0x41, 0x68, 0xfa, 0x2c, 0xde, 0x9d, 0x08, 0x37, 0x3f, 0x7b, 0xb8, 0x35,
0x15, 0x0e, 0xef, 0x8e, 0xc1, 0x91, 0x09, 0x21, 0xf0, 0xbb, 0x68, 0x21, 0x04, 0x93, 0x51, 0xbf,
0x5a, 0x90, 0x47, 0x97, 0x56, 0x8a, 0x48, 0x29, 0x51, 0x5a, 0x7c, 0x15, 0x2d, 0x7a, 0xc0, 0x98,
0xd9, 0x81, 0xea, 0x82, 0x34, 0xbc, 0xa0, 0x0c, 0x17, 0xf7, 0x62, 0x31, 0x49, 0xf4, 0x8d, 0x17,
0x1a, 0x5a, 0xdc, 0xa1, 0xed, 0x5d, 0x87, 0x71, 0xfc, 0x78, 0x8c, 0xee, 0xcd, 0x33, 0xee, 0x46,
0xb8, 0x4b, 0xd6, 0x57, 0x54, 0xa0, 0x62, 0x22, 0xc9, 0x70, 0xbe, 0x85, 0x0a, 0x0e, 0x07, 0x4f,
0xd4, 0x3d, 0xbf, 0x5e, 0xde, 0xd2, 0x67, 0x23, 0xa7, 0xb1, 0xac, 0xa0, 0x0b, 0x77, 0x05, 0x08,
0x89, 0xb1, 0x1a, 0x2f, 0xf2, 0x32, 0x7f, 0x71, 0x09, 0xf0, 0x26, 0x2a, 0x07, 0x66, 0x68, 0xba,
0x2e, 0xb8, 0x0e, 0xf3, 0xe4, 0x16, 0x0a, 0xc6, 0x85, 0x7e, 0xaf, 0x5e, 0xde, 0x1f, 0x88, 0x49,
0xd6, 0x46, 0xb8, 0x58, 0xd4, 0x0b, 0x5c, 0x10, 0x67, 0x1c, 0x33, 0x52, 0xb9, 0x6c, 0x0f, 0xc4,
0x24, 0x6b, 0x83, 0xef, 0xa1, 0x55, 0xd3, 0xe2, 0xce, 0x31, 0x7c, 0x0a, 0xa6, 0xed, 0x3a, 0x3e,
0xb4, 0xc0, 0xa2, 0xbe, 0x1d, 0xdf, 0xb9, 0xbc, 0xf1, 0xff, 0x7e, 0xaf, 0xbe, 0xfa, 0xc9, 0x24,
0x03, 0x32, 0xd9, 0x0f, 0xb7, 0x51, 0x91, 0x81, 0x0b, 0x16, 0xa7, 0xa1, 0x22, 0xd1, 0xcd, 0x19,
0x8e, 0x66, 0xd7, 0x6c, 0x83, 0xdb, 0x52, 0xfe, 0xc6, 0x92, 0x38, 0xfb, 0x64, 0x45, 0x52, 0x5c,
0x7c, 0x0b, 0xad, 0x78, 0xa6, 0x1f, 0x99, 0xa9, 0xa5, 0x64, 0x50, 0xd1, 0xc0, 0xfd, 0x5e, 0x7d,
0x65, 0x6f, 0x48, 0x43, 0x46, 0x2c, 0xf1, 0x97, 0xa8, 0xc8, 0xc1, 0x0b, 0x5c, 0x93, 0xc7, 0x74,
0x2a, 0x6f, 0x6d, 0x9c, 0xde, 0x05, 0xf7, 0xa9, 0x7d, 0xa0, 0x1c, 0x64, 0xab, 0x4a, 0x49, 0x91,
0x48, 0x49, 0x0a, 0xd8, 0xf8, 0x29, 0x8f, 0x4a, 0x69, 0xeb, 0xc1, 0x47, 0x08, 0x59, 0xc9, 0xf5,
0x66, 0x55, 0x4d, 0xf2, 0xe4, 0xc6, 0x6c, 0x3c, 0x49, 0xdb, 0xc3, 0xa0, 0x03, 0xa7, 0x22, 0x46,
0x32, 0xf0, 0xf8, 0x21, 0x2a, 0x31, 0x6e, 0x86, 0x5c, 0xde, 0xde, 0xdc, 0xec, 0xb7, 0x77, 0xb9,
0xdf, 0xab, 0x97, 0x5a, 0x09, 0x02, 0x19, 0x80, 0xe1, 0x0e, 0x5a, 0x19, 0x30, 0xe6, 0xbc, 0xbd,
0x48, 0x96, 0x66, 0x7b, 0x08, 0x86, 0x8c, 0xc0, 0x8a, 0x86, 0x10, 0x73, 0x4a, 0x12, 0xa7, 0x30,
0x68, 0x08, 0x31, 0x01, 0x89, 0xd2, 0xe2, 0x26, 0x2a, 0xb1, 0xc8, 0xb2, 0x00, 0x6c, 0xb0, 0x65,
0xe5, 0x0b, 0xc6, 0x45, 0x65, 0x5a, 0x6a, 0x25, 0x0a, 0x32, 0xb0, 0x11, 0xc0, 0x4f, 0x4c, 0xc7,
0x05, 0x5b, 0x56, 0x3c, 0x03, 0xfc, 0x99, 0x94, 0x12, 0xa5, 0x6d, 0xfc, 0xaa, 0xa1, 0xf2, 0x0e,
0x6d, 0x27, 0x85, 0x7d, 0x83, 0x2f, 0xe6, 0x61, 0x86, 0x85, 0x71, 0xb1, 0x6e, 0xcd, 0x46, 0x8c,
0x33, 0x53, 0xf2, 0x67, 0x0d, 0x5d, 0x18, 0xb1, 0xff, 0xaf, 0x4d, 0x02, 0x8d, 0x5e, 0x0e, 0x2d,
0x0f, 0x75, 0x06, 0xfc, 0x5c, 0x43, 0x65, 0x4f, 0x00, 0x48, 0x71, 0x72, 0xb9, 0xee, 0x9e, 0xb7,
0xd3, 0xe8, 0x7b, 0x03, 0xac, 0x3b, 0x3e, 0x0f, 0xbb, 0xc6, 0xff, 0x54, 0x1a, 0xe5, 0x8c, 0x86,
0x64, 0x43, 0xe2, 0x6f, 0x34, 0x54, 0x91, 0xeb, 0x3b, 0x5f, 0x07, 0x21, 0x30, 0xa6, 0x5a, 0xae,
0xc8, 0x63, 0xfb, 0xbc, 0x79, 0x10, 0x78, 0x16, 0x39, 0x21, 0x78, 0xe0, 0x73, 0xa3, 0xaa, 0x32,
0xa8, 0xec, 0x8d, 0x04, 0x21, 0x63, 0x61, 0xd7, 0x6e, 0xa3, 0xca, 0xe8, 0x0e, 0x70, 0x05, 0xe5,
0x8f, 0xa0, 0x1b, 0x8f, 0x33, 0x44, 0x7c, 0xe2, 0x4b, 0xa8, 0x70, 0x6c, 0xba, 0x51, 0xcc, 0xb8,
0x12, 0x89, 0x17, 0xb7, 0x72, 0x37, 0xb5, 0xc6, 0x0f, 0x1a, 0xaa, 0x4e, 0x4b, 0x04, 0xbf, 0x9d,
0x01, 0x32, 0xca, 0x2a, 0xab, 0xfc, 0xe7, 0xd0, 0x8d, 0x51, 0xef, 0xa0, 0x22, 0x0d, 0xc4, 0xc0,
0x49, 0x43, 0x35, 0x03, 0x5d, 0x4d, 0xe8, 0x78, 0x4f, 0xc9, 0x4f, 0x7a, 0xf5, 0xd5, 0x21, 0xf8,
0x44, 0x41, 0x52, 0x57, 0xdc, 0x40, 0x0b, 0x32, 0x1f, 0xf1, 0xf2, 0xe4, 0xd7, 0x4b, 0x06, 0x12,
0xf7, 0xf3, 0x81, 0x94, 0x10, 0xa5, 0x69, 0xfc, 0x98, 0x43, 0x4b, 0x2d, 0xeb, 0x10, 0xec, 0xc8,
0x05, 0xfb, 0xcd, 0x8e, 0xb4, 0x8f, 0x87, 0x88, 0xfc, 0xd1, 0x0c, 0x05, 0xcd, 0x26, 0x38, 0x75,
0xb6, 0x85, 0x91, 0xd9, 0xf6, 0xe3, 0xf3, 0x06, 0x38, 0x7d, 0xc8, 0xfd, 0x45, 0x43, 0x95, 0xac,
0xf9, 0xbf, 0x31, 0x18, 0x3d, 0x1a, 0x1e, 0x8c, 0x6e, 0x9c, 0x73, 0x67, 0x53, 0x26, 0xa4, 0x6f,
0xf3, 0xc3, 0x3b, 0x92, 0xfd, 0xec, 0x1a, 0x2a, 0x32, 0x25, 0x53, 0x34, 0x4d, 0x13, 0x4c, 0x6c,
0x49, 0x6a, 0x81, 0xef, 0xa3, 0xcb, 0xf2, 0x71, 0x73, 0xfc, 0xce, 0xe8, 0xd0, 0x93, 0x93, 0x43,
0xcf, 0x5b, 0xfd, 0x5e, 0xfd, 0x72, 0x6b, 0xb2, 0x09, 0x99, 0xe6, 0x8b, 0x1f, 0xa1, 0x8b, 0x16,
0xf5, 0xad, 0x28, 0x0c, 0xc1, 0xb7, 0xba, 0xfb, 0xd4, 0x75, 0xac, 0xae, 0xac, 0x6e, 0xc9, 0xd0,
0x55, 0x36, 0x17, 0xb7, 0x47, 0x0d, 0x4e, 0x26, 0x09, 0xc9, 0x38, 0x10, 0x7e, 0x07, 0x2d, 0xb2,
0x88, 0x05, 0xe0, 0xdb, 0xf2, 0x71, 0x2c, 0x1a, 0x65, 0x31, 0x00, 0xb7, 0x62, 0x11, 0x49, 0x74,
0xf8, 0x19, 0x2a, 0x3f, 0x1d, 0x34, 0x7b, 0xf9, 0x38, 0xfe, 0xb3, 0xa7, 0x25, 0xed, 0x83, 0x19,
0x05, 0xc9, 0xc6, 0x68, 0xfc, 0xa1, 0x21, 0x3c, 0x4e, 0x49, 0x7c, 0x3f, 0x7d, 0xcc, 0xe3, 0xde,
0xbc, 0x71, 0x96, 0x8b, 0x49, 0xe0, 0x09, 0x88, 0x5d, 0xc3, 0xd4, 0xb7, 0xdf, 0x43, 0x15, 0xf1,
0x2b, 0x91, 0x04, 0x3c, 0xef, 0xbf, 0xca, 0x25, 0xd1, 0x58, 0x77, 0x47, 0x80, 0xc8, 0x18, 0xb4,
0xf1, 0xde, 0xcb, 0xd7, 0xb5, 0xb9, 0x57, 0xaf, 0x6b, 0x73, 0xbf, 0xbf, 0xae, 0xcd, 0x3d, 0xef,
0xd7, 0xb4, 0x97, 0xfd, 0x9a, 0xf6, 0xaa, 0x5f, 0xd3, 0xfe, 0xec, 0xd7, 0xb4, 0xef, 0xfe, 0xaa,
0xcd, 0x7d, 0x51, 0x4c, 0x8e, 0xee, 0xef, 0x00, 0x00, 0x00, 0xff, 0xff, 0x67, 0x5d, 0xb9, 0x32,
0xf8, 0x10, 0x00, 0x00,
// 1139 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x09, 0x6e, 0x88, 0x02, 0xff, 0xd4, 0x56, 0xcf, 0x6f, 0xe3, 0x44,
0x14, 0xae, 0x93, 0xa6, 0x4d, 0x26, 0x6d, 0xb7, 0x1d, 0xa8, 0x36, 0x14, 0x29, 0x59, 0x45, 0x02,
0x75, 0x61, 0x6b, 0xab, 0x51, 0xd1, 0xc2, 0x22, 0x90, 0x70, 0x11, 0x12, 0x55, 0xab, 0xad, 0x26,
0x5d, 0xb4, 0x82, 0x2e, 0xd2, 0xd8, 0x7e, 0x4d, 0xbc, 0x75, 0x3c, 0xc6, 0x33, 0x2e, 0xea, 0x8d,
0xff, 0x00, 0x24, 0xfe, 0x0f, 0xee, 0x48, 0x70, 0xe0, 0xd6, 0x1b, 0x0b, 0x27, 0xc4, 0x21, 0xa2,
0xe6, 0xbf, 0xe8, 0x09, 0x79, 0xfc, 0x23, 0xce, 0xaf, 0xaa, 0x29, 0x5a, 0x24, 0x6e, 0xf6, 0x9b,
0xef, 0xfb, 0xe6, 0xcd, 0xbc, 0x6f, 0xde, 0x0c, 0x7a, 0xef, 0xf4, 0x5d, 0xae, 0xda, 0x4c, 0x3b,
0x0d, 0x0c, 0xf0, 0x5d, 0x10, 0xc0, 0x35, 0xef, 0xb4, 0xa3, 0x51, 0xcf, 0xe6, 0x9a, 0x41, 0x85,
0xd9, 0xd5, 0xce, 0x5a, 0xd4, 0xf1, 0xba, 0x74, 0x5b, 0xeb, 0x80, 0x0b, 0x3e, 0x15, 0x60, 0xa9,
0x9e, 0xcf, 0x04, 0xc3, 0xf7, 0x63, 0xaa, 0x3a, 0xa0, 0xaa, 0xde, 0x69, 0x47, 0x8d, 0xa8, 0xaa,
0xa4, 0xaa, 0x29, 0x75, 0x63, 0xab, 0x63, 0x8b, 0x6e, 0x60, 0xa8, 0x26, 0xeb, 0x69, 0x1d, 0xd6,
0x61, 0x9a, 0x54, 0x30, 0x82, 0x13, 0xf9, 0x27, 0x7f, 0xe4, 0x57, 0xac, 0xbc, 0xd1, 0x9a, 0x9a,
0x94, 0xe6, 0x03, 0x67, 0x81, 0x6f, 0xc2, 0x68, 0x36, 0x1b, 0xef, 0x4c, 0xe7, 0x04, 0xee, 0x19,
0xf8, 0xdc, 0x66, 0x2e, 0x58, 0x63, 0xb4, 0x07, 0xd3, 0x69, 0x67, 0x63, 0x4b, 0xde, 0xd8, 0x9a,
0x8c, 0xf6, 0x03, 0x57, 0xd8, 0xbd, 0xf1, 0x9c, 0xb6, 0x27, 0xc3, 0x03, 0x61, 0x3b, 0x9a, 0xed,
0x0a, 0x2e, 0xfc, 0x51, 0x4a, 0xf3, 0xfb, 0x02, 0x2a, 0xee, 0x31, 0x03, 0x3f, 0x45, 0xe5, 0x1e,
0x08, 0x6a, 0x51, 0x41, 0x6b, 0xca, 0x3d, 0x65, 0xb3, 0xda, 0xda, 0x54, 0xa7, 0xee, 0xb7, 0x7a,
0xb6, 0xad, 0x3e, 0x36, 0x9e, 0x83, 0x29, 0x0e, 0x40, 0x50, 0x1d, 0x5f, 0xf4, 0x1b, 0x73, 0x61,
0xbf, 0x81, 0x06, 0x31, 0x92, 0xa9, 0xe1, 0x23, 0x34, 0xcf, 0x3d, 0x30, 0x6b, 0x05, 0xa9, 0xda,
0x52, 0x6f, 0x5c, 0x45, 0x75, 0x8f, 0x19, 0x6d, 0x0f, 0x4c, 0x7d, 0x29, 0xd1, 0x9f, 0x8f, 0xfe,
0x88, 0x54, 0xc3, 0xc7, 0x68, 0x81, 0x0b, 0x2a, 0x02, 0x5e, 0x2b, 0x4a, 0xdd, 0x9d, 0x19, 0x75,
0x25, 0x57, 0x5f, 0x49, 0x94, 0x17, 0xe2, 0x7f, 0x92, 0x68, 0x36, 0x7f, 0x2f, 0xa2, 0xa5, 0x3d,
0x66, 0xec, 0x32, 0xd7, 0xb2, 0x85, 0xcd, 0x5c, 0xbc, 0x83, 0xe6, 0xc5, 0xb9, 0x07, 0x72, 0x6b,
0x2a, 0xfa, 0xbd, 0x34, 0xa1, 0xa3, 0x73, 0x0f, 0xae, 0xfa, 0x8d, 0xd5, 0x3c, 0x36, 0x8a, 0x11,
0x89, 0xc6, 0x9f, 0x65, 0x49, 0x16, 0x24, 0xef, 0xc3, 0xe1, 0xe9, 0xae, 0xfa, 0x8d, 0x6b, 0xed,
0xa0, 0x66, 0x9a, 0xc3, 0xe9, 0xe1, 0x2e, 0x5a, 0x76, 0x28, 0x17, 0x87, 0x3e, 0x33, 0xe0, 0xc8,
0xee, 0x41, 0xb2, 0x07, 0x6f, 0x5f, 0x53, 0xb1, 0x9c, 0x27, 0xd5, 0x88, 0xa2, 0xaf, 0x27, 0xb9,
0x2c, 0xef, 0xe7, 0x95, 0xc8, 0xb0, 0x30, 0xfe, 0x1a, 0xe1, 0x28, 0x70, 0xe4, 0x53, 0x97, 0xc7,
0xab, 0x8b, 0xa6, 0x9b, 0x9f, 0x7d, 0xba, 0x8d, 0x64, 0x3a, 0xbc, 0x3f, 0x26, 0x47, 0x26, 0x4c,
0x81, 0xdf, 0x44, 0x0b, 0x3e, 0x50, 0xce, 0xdc, 0x5a, 0x49, 0x6e, 0x5d, 0x56, 0x29, 0x22, 0xa3,
0x24, 0x19, 0xc5, 0xf7, 0xd1, 0x62, 0x0f, 0x38, 0xa7, 0x1d, 0xa8, 0x2d, 0x48, 0xe0, 0x9d, 0x04,
0xb8, 0x78, 0x10, 0x87, 0x49, 0x3a, 0xde, 0xfc, 0x59, 0x41, 0x8b, 0x7b, 0xcc, 0xd8, 0xb7, 0xb9,
0xc0, 0xcf, 0xc6, 0xec, 0xae, 0xdd, 0x70, 0x35, 0x11, 0x5d, 0xba, 0x7e, 0x35, 0x99, 0xa8, 0x9c,
0x46, 0x72, 0x9e, 0x6f, 0xa3, 0x92, 0x2d, 0xa0, 0x17, 0xd5, 0xbd, 0xb8, 0x59, 0x6d, 0xa9, 0xb3,
0x99, 0x53, 0x5f, 0x4e, 0xa4, 0x4b, 0x9f, 0x46, 0x22, 0x24, 0xd6, 0x6a, 0xfe, 0x58, 0x94, 0xf9,
0x47, 0x87, 0x00, 0x6f, 0xa3, 0xaa, 0x47, 0x7d, 0xea, 0x38, 0xe0, 0xd8, 0xbc, 0x27, 0x97, 0x50,
0xd2, 0xef, 0x84, 0xfd, 0x46, 0xf5, 0x70, 0x10, 0x26, 0x79, 0x4c, 0x44, 0x31, 0x59, 0xcf, 0x73,
0x20, 0xda, 0xe3, 0xd8, 0x91, 0x09, 0x65, 0x77, 0x10, 0x26, 0x79, 0x0c, 0x7e, 0x8c, 0xd6, 0xa9,
0x29, 0xec, 0x33, 0xf8, 0x18, 0xa8, 0xe5, 0xd8, 0x2e, 0xb4, 0xc1, 0x64, 0xae, 0x15, 0x9f, 0xb9,
0xa2, 0xfe, 0x5a, 0xd8, 0x6f, 0xac, 0x7f, 0x34, 0x09, 0x40, 0x26, 0xf3, 0xf0, 0x97, 0xa8, 0xcc,
0xc1, 0x01, 0x53, 0x30, 0x3f, 0x31, 0xd1, 0xce, 0x4d, 0xb7, 0x9d, 0x1a, 0xe0, 0xb4, 0x13, 0xae,
0xbe, 0x14, 0xed, 0x7b, 0xfa, 0x47, 0x32, 0x4d, 0xfc, 0x08, 0xad, 0xf4, 0xa8, 0x1b, 0xd0, 0x0c,
0x29, 0xdd, 0x53, 0xd6, 0x71, 0xd8, 0x6f, 0xac, 0x1c, 0x0c, 0x8d, 0x90, 0x11, 0x24, 0xfe, 0x02,
0x95, 0x05, 0xf4, 0x3c, 0x87, 0x8a, 0xd8, 0x4a, 0xd5, 0xd6, 0xd6, 0xf5, 0x1d, 0xf0, 0x90, 0x59,
0x47, 0x09, 0x41, 0xb6, 0xa9, 0xcc, 0x10, 0x69, 0x94, 0x64, 0x82, 0xcd, 0x9f, 0x8a, 0xa8, 0x92,
0xb5, 0x1d, 0x7c, 0x8a, 0x90, 0x99, 0x1e, 0x6d, 0x5e, 0x53, 0xa4, 0x47, 0x1e, 0xce, 0xe6, 0x91,
0xac, 0x35, 0x0c, 0xba, 0x6f, 0x16, 0xe2, 0x24, 0x27, 0x8f, 0x9f, 0xa2, 0x0a, 0x17, 0xd4, 0x17,
0xf2, 0xe4, 0x16, 0x66, 0x3f, 0xb9, 0xcb, 0x61, 0xbf, 0x51, 0x69, 0xa7, 0x0a, 0x64, 0x20, 0x86,
0x3b, 0x68, 0x65, 0xe0, 0x96, 0xdb, 0xf6, 0x21, 0x59, 0x9a, 0xdd, 0x21, 0x19, 0x32, 0x22, 0x1b,
0x35, 0x83, 0xd8, 0x4f, 0xd2, 0x34, 0xa5, 0x41, 0x33, 0x88, 0xcd, 0x47, 0x92, 0x51, 0xac, 0xa1,
0x0a, 0x0f, 0x4c, 0x13, 0xc0, 0x02, 0x4b, 0x56, 0xbe, 0xa4, 0xaf, 0x25, 0xd0, 0x4a, 0x3b, 0x1d,
0x20, 0x03, 0x4c, 0x24, 0x7c, 0x42, 0x6d, 0x07, 0x2c, 0x59, 0xf1, 0x9c, 0xf0, 0x27, 0x32, 0x4a,
0x92, 0xd1, 0xe6, 0x6f, 0x0a, 0xaa, 0xee, 0x31, 0x23, 0x2d, 0xec, 0x4b, 0xbc, 0x2d, 0xbb, 0x39,
0x17, 0xc6, 0xc5, 0x7a, 0x34, 0x9b, 0x31, 0x6e, 0x6c, 0xc9, 0x5f, 0x14, 0x74, 0x67, 0x04, 0xff,
0x7f, 0x7b, 0x05, 0x34, 0x7f, 0x28, 0xa0, 0xa5, 0xb6, 0xd9, 0x05, 0x2b, 0x70, 0xc0, 0x7a, 0xb9,
0xcf, 0x98, 0x67, 0x43, 0x0b, 0x78, 0x7f, 0x86, 0x05, 0xe4, 0x13, 0x9c, 0xfa, 0x9e, 0x81, 0x91,
0xf7, 0xcc, 0x07, 0xb7, 0x9d, 0xe0, 0xfa, 0x87, 0xcd, 0xaf, 0x0a, 0x5a, 0xcd, 0xc3, 0xff, 0x8b,
0xcb, 0xf0, 0x78, 0xf8, 0x32, 0x7c, 0x78, 0xcb, 0x95, 0x4d, 0xb9, 0x15, 0xbf, 0x2d, 0x0e, 0xaf,
0x48, 0xfa, 0xf8, 0x01, 0x2a, 0xf3, 0x24, 0x96, 0x3c, 0xd9, 0xb2, 0x04, 0x53, 0x2c, 0xc9, 0x10,
0xf8, 0x09, 0xba, 0x2b, 0x9b, 0x9a, 0xed, 0x76, 0x46, 0x2f, 0xba, 0x82, 0xbc, 0xe8, 0x5e, 0x0f,
0xfb, 0x8d, 0xbb, 0xed, 0xc9, 0x10, 0x32, 0x8d, 0x8b, 0x8f, 0xd1, 0x9a, 0xc9, 0x5c, 0x33, 0xf0,
0x7d, 0x70, 0xcd, 0xf3, 0x43, 0xe6, 0xd8, 0xe6, 0xb9, 0xac, 0x6e, 0x45, 0x57, 0x93, 0x6c, 0xd6,
0x76, 0x47, 0x01, 0x57, 0x93, 0x82, 0x64, 0x5c, 0x08, 0xbf, 0x81, 0x16, 0x79, 0xc0, 0x3d, 0x70,
0x2d, 0xd9, 0x14, 0xcb, 0x7a, 0x35, 0x7a, 0xf4, 0xb4, 0xe3, 0x10, 0x49, 0xc7, 0xf0, 0x57, 0xa8,
0xfa, 0x7c, 0x70, 0xc8, 0x65, 0x53, 0xfc, 0x77, 0x2d, 0xe5, 0x95, 0x24, 0xf5, 0x7c, 0x3f, 0x24,
0xf9, 0x39, 0x9a, 0x7f, 0x2a, 0x08, 0x8f, 0x5b, 0x12, 0x3f, 0xc9, 0x9a, 0x78, 0x7c, 0xe1, 0x6d,
0xdd, 0xe4, 0x60, 0x12, 0x38, 0x81, 0x68, 0xd5, 0x30, 0xb5, 0xe7, 0xf7, 0xd0, 0x6a, 0xf4, 0x7c,
0x4c, 0x27, 0xbc, 0xed, 0xfb, 0xf4, 0xd5, 0xb0, 0xdf, 0x58, 0xdd, 0x1f, 0x11, 0x22, 0x63, 0xd2,
0xfa, 0x5b, 0x17, 0x97, 0xf5, 0xb9, 0x17, 0x97, 0xf5, 0xb9, 0x3f, 0x2e, 0xeb, 0x73, 0xdf, 0x84,
0x75, 0xe5, 0x22, 0xac, 0x2b, 0x2f, 0xc2, 0xba, 0xf2, 0x57, 0x58, 0x57, 0xbe, 0xfb, 0xbb, 0x3e,
0xf7, 0x79, 0x39, 0xdd, 0xba, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0x80, 0x6a, 0xa7, 0x35, 0xec,
0x0e, 0x00, 0x00,
}

View File

@ -112,7 +112,7 @@ message JobSpec {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
optional LabelSelector selector = 4;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 4;
// ManualSelector controls generation of pod labels and pod selectors.
// Leave `manualSelector` unset unless you are certain what you are doing.
@ -191,39 +191,6 @@ message JobTemplateSpec {
optional JobSpec spec = 2;
}
// 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.
message LabelSelector {
// 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.
// +optional
map<string, string> matchLabels = 1;
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
repeated LabelSelectorRequirement matchExpressions = 2;
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
message LabelSelectorRequirement {
// key is the label key that the selector applies to.
optional string key = 1;
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
optional string operator = 2;
// 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.
// +optional
repeated string values = 3;
}
// ScheduledJob represents the configuration of a single scheduled job.
message ScheduledJob {
// Standard object's metadata.

File diff suppressed because it is too large Load Diff

View File

@ -108,7 +108,7 @@ type JobSpec struct {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
// ManualSelector controls generation of pod labels and pod selectors.
// Leave `manualSelector` unset unless you are certain what you are doing.
@ -276,43 +276,3 @@ type ScheduledJobStatus struct {
// +optional
LastScheduleTime *unversioned.Time `json:"lastScheduleTime,omitempty" protobuf:"bytes,4,opt,name=lastScheduleTime"`
}
// 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.
// +optional
MatchLabels map[string]string `json:"matchLabels,omitempty" protobuf:"bytes,1,rep,name=matchLabels"`
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty" protobuf:"bytes,2,rep,name=matchExpressions"`
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
type LabelSelectorRequirement struct {
// key is the label key that the selector applies to.
Key string `json:"key" patchStrategy:"merge" patchMergeKey:"key" protobuf:"bytes,1,opt,name=key"`
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
Operator LabelSelectorOperator `json:"operator" protobuf:"bytes,2,opt,name=operator,casttype=LabelSelectorOperator"`
// 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.
// +optional
Values []string `json:"values,omitempty" protobuf:"bytes,3,rep,name=values"`
}
// A label selector operator is the set of operators that can be used in a selector requirement.
type LabelSelectorOperator string
const (
LabelSelectorOpIn LabelSelectorOperator = "In"
LabelSelectorOpNotIn LabelSelectorOperator = "NotIn"
LabelSelectorOpExists LabelSelectorOperator = "Exists"
LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist"
)

View File

@ -110,27 +110,6 @@ func (JobTemplateSpec) SwaggerDoc() map[string]string {
return map_JobTemplateSpec
}
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_ScheduledJob = map[string]string{
"": "ScheduledJob represents the configuration of a single scheduled job.",
"metadata": "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata",

View File

@ -53,10 +53,6 @@ func RegisterConversions(scheme *runtime.Scheme) error {
Convert_batch_JobTemplate_To_v2alpha1_JobTemplate,
Convert_v2alpha1_JobTemplateSpec_To_batch_JobTemplateSpec,
Convert_batch_JobTemplateSpec_To_v2alpha1_JobTemplateSpec,
Convert_v2alpha1_LabelSelector_To_unversioned_LabelSelector,
Convert_unversioned_LabelSelector_To_v2alpha1_LabelSelector,
Convert_v2alpha1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement,
Convert_unversioned_LabelSelectorRequirement_To_v2alpha1_LabelSelectorRequirement,
Convert_v2alpha1_ScheduledJob_To_batch_ScheduledJob,
Convert_batch_ScheduledJob_To_v2alpha1_ScheduledJob,
Convert_v2alpha1_ScheduledJobList_To_batch_ScheduledJobList,
@ -188,7 +184,7 @@ func autoConvert_batch_JobSpec_To_v2alpha1_JobSpec(in *batch.JobSpec, out *JobSp
out.Parallelism = (*int32)(unsafe.Pointer(in.Parallelism))
out.Completions = (*int32)(unsafe.Pointer(in.Completions))
out.ActiveDeadlineSeconds = (*int64)(unsafe.Pointer(in.ActiveDeadlineSeconds))
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
out.ManualSelector = (*bool)(unsafe.Pointer(in.ManualSelector))
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
@ -292,70 +288,6 @@ func Convert_batch_JobTemplateSpec_To_v2alpha1_JobTemplateSpec(in *batch.JobTemp
return autoConvert_batch_JobTemplateSpec_To_v2alpha1_JobTemplateSpec(in, out, s)
}
func autoConvert_v2alpha1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_v2alpha1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
return autoConvert_v2alpha1_LabelSelector_To_unversioned_LabelSelector(in, out, s)
}
func autoConvert_unversioned_LabelSelector_To_v2alpha1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelector_To_v2alpha1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelector_To_v2alpha1_LabelSelector(in, out, s)
}
func autoConvert_v2alpha1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = unversioned.LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_v2alpha1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_v2alpha1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in, out, s)
}
func autoConvert_unversioned_LabelSelectorRequirement_To_v2alpha1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelectorRequirement_To_v2alpha1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelectorRequirement_To_v2alpha1_LabelSelectorRequirement(in, out, s)
}
func autoConvert_v2alpha1_ScheduledJob_To_batch_ScheduledJob(in *ScheduledJob, out *batch.ScheduledJob, s conversion.Scope) error {
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {

View File

@ -43,8 +43,6 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_JobStatus, InType: reflect.TypeOf(&JobStatus{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_JobTemplate, InType: reflect.TypeOf(&JobTemplate{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_JobTemplateSpec, InType: reflect.TypeOf(&JobTemplateSpec{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_LabelSelector, InType: reflect.TypeOf(&LabelSelector{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_LabelSelectorRequirement, InType: reflect.TypeOf(&LabelSelectorRequirement{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ScheduledJob, InType: reflect.TypeOf(&ScheduledJob{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ScheduledJobList, InType: reflect.TypeOf(&ScheduledJobList{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v2alpha1_ScheduledJobSpec, InType: reflect.TypeOf(&ScheduledJobSpec{})},
@ -132,8 +130,8 @@ func DeepCopy_v2alpha1_JobSpec(in interface{}, out interface{}, c *conversion.Cl
}
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v2alpha1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -218,51 +216,6 @@ func DeepCopy_v2alpha1_JobTemplateSpec(in interface{}, out interface{}, c *conve
}
}
func DeepCopy_v2alpha1_LabelSelector(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelector)
out := out.(*LabelSelector)
if in.MatchLabels != nil {
in, out := &in.MatchLabels, &out.MatchLabels
*out = make(map[string]string)
for key, val := range *in {
(*out)[key] = val
}
} else {
out.MatchLabels = nil
}
if in.MatchExpressions != nil {
in, out := &in.MatchExpressions, &out.MatchExpressions
*out = make([]LabelSelectorRequirement, len(*in))
for i := range *in {
if err := DeepCopy_v2alpha1_LabelSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil {
return err
}
}
} else {
out.MatchExpressions = nil
}
return nil
}
}
func DeepCopy_v2alpha1_LabelSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelectorRequirement)
out := out.(*LabelSelectorRequirement)
out.Key = in.Key
out.Operator = in.Operator
if in.Values != nil {
in, out := &in.Values, &out.Values
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Values = nil
}
return nil
}
}
func DeepCopy_v2alpha1_ScheduledJob(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*ScheduledJob)

View File

@ -56,6 +56,7 @@ go_test(
"//pkg/api:go_default_library",
"//pkg/api/install:go_default_library",
"//pkg/api/resource:go_default_library",
"//pkg/api/unversioned:go_default_library",
"//pkg/api/v1:go_default_library",
"//pkg/apis/batch:go_default_library",
"//pkg/apis/extensions/install:go_default_library",

View File

@ -134,14 +134,7 @@ func Convert_v1beta1_ScaleStatus_To_extensions_ScaleStatus(in *ScaleStatus, out
func Convert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec(in *extensions.DeploymentSpec, out *DeploymentSpec, s conversion.Scope) error {
out.Replicas = &in.Replicas
if in.Selector != nil {
out.Selector = new(LabelSelector)
if err := Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -167,15 +160,7 @@ func Convert_v1beta1_DeploymentSpec_To_extensions_DeploymentSpec(in *DeploymentS
if in.Replicas != nil {
out.Replicas = *in.Replicas
}
if in.Selector != nil {
out.Selector = new(unversioned.LabelSelector)
if err := Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if err := v1.Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -250,15 +235,7 @@ func Convert_extensions_ReplicaSetSpec_To_v1beta1_ReplicaSetSpec(in *extensions.
out.Replicas = new(int32)
*out.Replicas = int32(in.Replicas)
out.MinReadySeconds = in.MinReadySeconds
if in.Selector != nil {
out.Selector = new(LabelSelector)
if err := Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -270,14 +247,7 @@ func Convert_v1beta1_ReplicaSetSpec_To_extensions_ReplicaSetSpec(in *ReplicaSetS
out.Replicas = *in.Replicas
}
out.MinReadySeconds = in.MinReadySeconds
if in.Selector != nil {
out.Selector = new(unversioned.LabelSelector)
if err := Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
if err := v1.Convert_v1_PodTemplateSpec_To_api_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -288,16 +258,7 @@ func Convert_batch_JobSpec_To_v1beta1_JobSpec(in *batch.JobSpec, out *JobSpec, s
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for unversioned.LabelSelector -> v1beta1.LabelSelector
if in.Selector != nil {
out.Selector = new(LabelSelector)
if err := Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
// BEGIN non-standard conversion
// autoSelector has opposite meaning as manualSelector.
// in both cases, unset means false, and unset is always preferred to false.
@ -322,16 +283,7 @@ func Convert_v1beta1_JobSpec_To_batch_JobSpec(in *JobSpec, out *batch.JobSpec, s
out.Parallelism = in.Parallelism
out.Completions = in.Completions
out.ActiveDeadlineSeconds = in.ActiveDeadlineSeconds
// unable to generate simple pointer conversion for v1beta1.LabelSelector -> unversioned.LabelSelector
if in.Selector != nil {
out.Selector = new(unversioned.LabelSelector)
if err := Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in.Selector, out.Selector, s); err != nil {
return err
}
} else {
out.Selector = nil
}
out.Selector = in.Selector
// BEGIN non-standard conversion
// autoSelector has opposite meaning as manualSelector.
// in both cases, unset means false, and unset is always preferred to false.

View File

@ -17,6 +17,7 @@ limitations under the License.
package v1beta1
import (
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/runtime"
"k8s.io/kubernetes/pkg/util/intstr"
@ -40,7 +41,7 @@ func SetDefaults_DaemonSet(obj *DaemonSet) {
// TODO: support templates defined elsewhere when we support them in the API
if labels != nil {
if obj.Spec.Selector == nil {
obj.Spec.Selector = &LabelSelector{
obj.Spec.Selector = &unversioned.LabelSelector{
MatchLabels: labels,
}
}
@ -56,7 +57,7 @@ func SetDefaults_Deployment(obj *Deployment) {
if labels != nil {
if obj.Spec.Selector == nil {
obj.Spec.Selector = &LabelSelector{MatchLabels: labels}
obj.Spec.Selector = &unversioned.LabelSelector{MatchLabels: labels}
}
if len(obj.Labels) == 0 {
obj.Labels = labels
@ -102,7 +103,7 @@ func SetDefaults_Job(obj *Job) {
// and default behavior for an unspecified manual selector is to use the pod template labels
if manualSelector && obj.Spec.Selector == nil {
obj.Spec.Selector = &LabelSelector{
obj.Spec.Selector = &unversioned.LabelSelector{
MatchLabels: labels,
}
}
@ -140,7 +141,7 @@ func SetDefaults_ReplicaSet(obj *ReplicaSet) {
// TODO: support templates defined elsewhere when we support them in the API
if labels != nil {
if obj.Spec.Selector == nil {
obj.Spec.Selector = &LabelSelector{
obj.Spec.Selector = &unversioned.LabelSelector{
MatchLabels: labels,
}
}

View File

@ -23,6 +23,7 @@ import (
"k8s.io/kubernetes/pkg/api"
_ "k8s.io/kubernetes/pkg/api/install"
"k8s.io/kubernetes/pkg/api/resource"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/api/v1"
_ "k8s.io/kubernetes/pkg/apis/extensions/install"
. "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
@ -67,7 +68,7 @@ func TestSetDefaultDaemonSet(t *testing.T) {
Labels: defaultLabels,
},
Spec: DaemonSetSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: defaultLabels,
},
Template: defaultTemplate,
@ -92,7 +93,7 @@ func TestSetDefaultDaemonSet(t *testing.T) {
},
},
Spec: DaemonSetSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: defaultLabels,
},
Template: defaultTemplate,
@ -449,18 +450,18 @@ func TestSetDefaultJob(t *testing.T) {
func TestSetDefaultJobSelector(t *testing.T) {
tests := []struct {
original *Job
expectedSelector *LabelSelector
expectedSelector *unversioned.LabelSelector
}{
// selector set explicitly, nil autoSelector
{
original: &Job{
Spec: JobSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
},
expectedSelector: &LabelSelector{
expectedSelector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
@ -468,13 +469,13 @@ func TestSetDefaultJobSelector(t *testing.T) {
{
original: &Job{
Spec: JobSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
AutoSelector: newBool(true),
},
},
expectedSelector: &LabelSelector{
expectedSelector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
@ -482,13 +483,13 @@ func TestSetDefaultJobSelector(t *testing.T) {
{
original: &Job{
Spec: JobSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
AutoSelector: newBool(false),
},
},
expectedSelector: &LabelSelector{
expectedSelector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
@ -503,7 +504,7 @@ func TestSetDefaultJobSelector(t *testing.T) {
},
},
},
expectedSelector: &LabelSelector{
expectedSelector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
@ -519,7 +520,7 @@ func TestSetDefaultJobSelector(t *testing.T) {
AutoSelector: newBool(false),
},
},
expectedSelector: &LabelSelector{
expectedSelector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"job": "selector"},
},
},
@ -601,7 +602,7 @@ func TestSetDefaultReplicaSet(t *testing.T) {
},
},
Spec: ReplicaSetSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{
"some": "other",
},
@ -621,7 +622,7 @@ func TestSetDefaultReplicaSet(t *testing.T) {
{
rs: &ReplicaSet{
Spec: ReplicaSetSpec{
Selector: &LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{
"some": "other",
},

File diff suppressed because it is too large Load Diff

View File

@ -107,7 +107,7 @@ message DaemonSetSpec {
// If empty, defaulted to labels on Pod template.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
optional LabelSelector selector = 1;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 1;
// 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
@ -187,7 +187,7 @@ message DeploymentSpec {
// Label selector for pods. Existing ReplicaSets whose pods are
// selected by this will be the ones affected by this deployment.
// +optional
optional LabelSelector selector = 2;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 2;
// Template describes the pods that will be created.
optional k8s.io.kubernetes.pkg.api.v1.PodTemplateSpec template = 3;
@ -598,7 +598,7 @@ message JobSpec {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
optional LabelSelector selector = 4;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 4;
// AutoSelector controls generation of pod labels and pod selectors.
// It was not present in the original extensions/v1beta1 Job definition, but exists
@ -646,39 +646,6 @@ message JobStatus {
optional int32 failed = 6;
}
// 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.
message LabelSelector {
// 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.
// +optional
map<string, string> matchLabels = 1;
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
repeated LabelSelectorRequirement matchExpressions = 2;
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
message LabelSelectorRequirement {
// key is the label key that the selector applies to.
optional string key = 1;
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
optional string operator = 2;
// 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.
// +optional
repeated string values = 3;
}
message NetworkPolicy {
// Standard object's metadata.
// More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata
@ -730,7 +697,7 @@ message NetworkPolicyPeer {
// If not provided, this selector selects no pods.
// If present but empty, this selector selects all pods in this namespace.
// +optional
optional LabelSelector podSelector = 1;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector podSelector = 1;
// Selects Namespaces using cluster scoped-labels. This
// matches all pods in all namespaces selected by this label selector.
@ -738,7 +705,7 @@ message NetworkPolicyPeer {
// If omitted, this selector selects no namespaces.
// If present but empty, this selector selects all namespaces.
// +optional
optional LabelSelector namespaceSelector = 2;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector namespaceSelector = 2;
}
message NetworkPolicyPort {
@ -762,7 +729,7 @@ message NetworkPolicySpec {
// same set of pods. In this case, the ingress rules for each are combined additively.
// This field is NOT optional and follows standard label selector semantics.
// An empty podSelector matches all pods in this namespace.
optional LabelSelector podSelector = 1;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector podSelector = 1;
// List of ingress rules to be applied to the selected pods.
// Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it,
@ -940,7 +907,7 @@ message ReplicaSetSpec {
// Label keys and values that must match in order to be controlled by this replica set.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
optional LabelSelector selector = 2;
optional k8s.io.kubernetes.pkg.api.unversioned.LabelSelector selector = 2;
// Template is the object that describes the pod that will be created if
// insufficient replicas are detected.

File diff suppressed because it is too large Load Diff

View File

@ -264,7 +264,7 @@ type DeploymentSpec struct {
// Label selector for pods. Existing ReplicaSets whose pods are
// selected by this will be the ones affected by this deployment.
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"`
// Template describes the pods that will be created.
Template v1.PodTemplateSpec `json:"template" protobuf:"bytes,3,opt,name=template"`
@ -464,7 +464,7 @@ type DaemonSetSpec struct {
// If empty, defaulted to labels on Pod template.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,1,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,1,opt,name=selector"`
// 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
@ -630,7 +630,7 @@ type JobSpec struct {
// Normally, the system sets this field for you.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,4,opt,name=selector"`
// AutoSelector controls generation of pod labels and pod selectors.
// It was not present in the original extensions/v1beta1 Job definition, but exists
@ -884,46 +884,6 @@ type ExportOptions struct {
Exact bool `json:"exact" protobuf:"varint,2,opt,name=exact"`
}
// 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.
// +optional
MatchLabels map[string]string `json:"matchLabels,omitempty" protobuf:"bytes,1,rep,name=matchLabels"`
// matchExpressions is a list of label selector requirements. The requirements are ANDed.
// +optional
MatchExpressions []LabelSelectorRequirement `json:"matchExpressions,omitempty" protobuf:"bytes,2,rep,name=matchExpressions"`
}
// A label selector requirement is a selector that contains values, a key, and an operator that
// relates the key and values.
type LabelSelectorRequirement struct {
// key is the label key that the selector applies to.
Key string `json:"key" patchStrategy:"merge" patchMergeKey:"key" protobuf:"bytes,1,opt,name=key"`
// operator represents a key's relationship to a set of values.
// Valid operators ard In, NotIn, Exists and DoesNotExist.
Operator LabelSelectorOperator `json:"operator" protobuf:"bytes,2,opt,name=operator,casttype=LabelSelectorOperator"`
// 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.
// +optional
Values []string `json:"values,omitempty" protobuf:"bytes,3,rep,name=values"`
}
// A label selector operator is the set of operators that can be used in a selector requirement.
type LabelSelectorOperator string
const (
LabelSelectorOpIn LabelSelectorOperator = "In"
LabelSelectorOpNotIn LabelSelectorOperator = "NotIn"
LabelSelectorOpExists LabelSelectorOperator = "Exists"
LabelSelectorOpDoesNotExist LabelSelectorOperator = "DoesNotExist"
)
// +genclient=true
// ReplicaSet represents the configuration of a ReplicaSet.
@ -983,7 +943,7 @@ type ReplicaSetSpec struct {
// Label keys and values that must match in order to be controlled by this replica set.
// More info: http://kubernetes.io/docs/user-guide/labels#label-selectors
// +optional
Selector *LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"`
Selector *unversioned.LabelSelector `json:"selector,omitempty" protobuf:"bytes,2,opt,name=selector"`
// Template is the object that describes the pod that will be created if
// insufficient replicas are detected.
@ -1277,7 +1237,7 @@ type NetworkPolicySpec struct {
// same set of pods. In this case, the ingress rules for each are combined additively.
// This field is NOT optional and follows standard label selector semantics.
// An empty podSelector matches all pods in this namespace.
PodSelector LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"`
PodSelector unversioned.LabelSelector `json:"podSelector" protobuf:"bytes,1,opt,name=podSelector"`
// List of ingress rules to be applied to the selected pods.
// Traffic is allowed to a pod if namespace.networkPolicy.ingress.isolation is undefined and cluster policy allows it,
@ -1337,7 +1297,7 @@ type NetworkPolicyPeer struct {
// If not provided, this selector selects no pods.
// If present but empty, this selector selects all pods in this namespace.
// +optional
PodSelector *LabelSelector `json:"podSelector,omitempty" protobuf:"bytes,1,opt,name=podSelector"`
PodSelector *unversioned.LabelSelector `json:"podSelector,omitempty" protobuf:"bytes,1,opt,name=podSelector"`
// Selects Namespaces using cluster scoped-labels. This
// matches all pods in all namespaces selected by this label selector.
@ -1345,7 +1305,7 @@ type NetworkPolicyPeer struct {
// If omitted, this selector selects no namespaces.
// If present but empty, this selector selects all namespaces.
// +optional
NamespaceSelector *LabelSelector `json:"namespaceSelector,omitempty" protobuf:"bytes,2,opt,name=namespaceSelector"`
NamespaceSelector *unversioned.LabelSelector `json:"namespaceSelector,omitempty" protobuf:"bytes,2,opt,name=namespaceSelector"`
}
// Network Policy List is a list of NetworkPolicy objects.

View File

@ -423,27 +423,6 @@ 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_NetworkPolicy = map[string]string{
"metadata": "Standard object's metadata. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#metadata",
"spec": "Specification of the desired behavior for this NetworkPolicy.",

View File

@ -118,10 +118,6 @@ func RegisterConversions(scheme *runtime.Scheme) error {
Convert_batch_JobSpec_To_v1beta1_JobSpec,
Convert_v1beta1_JobStatus_To_batch_JobStatus,
Convert_batch_JobStatus_To_v1beta1_JobStatus,
Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector,
Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector,
Convert_v1beta1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement,
Convert_unversioned_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement,
Convert_v1beta1_NetworkPolicy_To_extensions_NetworkPolicy,
Convert_extensions_NetworkPolicy_To_v1beta1_NetworkPolicy,
Convert_v1beta1_NetworkPolicyIngressRule_To_extensions_NetworkPolicyIngressRule,
@ -378,7 +374,7 @@ func Convert_v1beta1_DaemonSetSpec_To_extensions_DaemonSetSpec(in *DaemonSetSpec
}
func autoConvert_extensions_DaemonSetSpec_To_v1beta1_DaemonSetSpec(in *extensions.DaemonSetSpec, out *DaemonSetSpec, s conversion.Scope) error {
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -543,7 +539,7 @@ func autoConvert_extensions_DeploymentSpec_To_v1beta1_DeploymentSpec(in *extensi
if err := api.Convert_int32_To_Pointer_int32(&in.Replicas, &out.Replicas, s); err != nil {
return err
}
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}
@ -1203,7 +1199,7 @@ func autoConvert_batch_JobSpec_To_v1beta1_JobSpec(in *batch.JobSpec, out *JobSpe
out.Parallelism = (*int32)(unsafe.Pointer(in.Parallelism))
out.Completions = (*int32)(unsafe.Pointer(in.Completions))
out.ActiveDeadlineSeconds = (*int64)(unsafe.Pointer(in.ActiveDeadlineSeconds))
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
// WARNING: in.ManualSelector requires manual conversion: does not exist in peer-type
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
@ -1247,70 +1243,6 @@ func Convert_batch_JobStatus_To_v1beta1_JobStatus(in *batch.JobStatus, out *JobS
return autoConvert_batch_JobStatus_To_v1beta1_JobStatus(in, out, s)
}
func autoConvert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in *LabelSelector, out *unversioned.LabelSelector, s conversion.Scope) error {
return autoConvert_v1beta1_LabelSelector_To_unversioned_LabelSelector(in, out, s)
}
func autoConvert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
{
m := (*map[string]string)(unsafe.Pointer(&in.MatchLabels))
out.MatchLabels = *m
}
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.MatchExpressions))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.MatchExpressions))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in *unversioned.LabelSelector, out *LabelSelector, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelector_To_v1beta1_LabelSelector(in, out, s)
}
func autoConvert_v1beta1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = unversioned.LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_v1beta1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in *LabelSelectorRequirement, out *unversioned.LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_v1beta1_LabelSelectorRequirement_To_unversioned_LabelSelectorRequirement(in, out, s)
}
func autoConvert_unversioned_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
out.Key = in.Key
out.Operator = LabelSelectorOperator(in.Operator)
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Values))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Values))
*outHdr = *inHdr
}
return nil
}
func Convert_unversioned_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in *unversioned.LabelSelectorRequirement, out *LabelSelectorRequirement, s conversion.Scope) error {
return autoConvert_unversioned_LabelSelectorRequirement_To_v1beta1_LabelSelectorRequirement(in, out, s)
}
func autoConvert_v1beta1_NetworkPolicy_To_extensions_NetworkPolicy(in *NetworkPolicy, out *extensions.NetworkPolicy, s conversion.Scope) error {
// TODO: Inefficient conversion - can we improve it?
if err := s.Convert(&in.ObjectMeta, &out.ObjectMeta, 0); err != nil {
@ -1416,8 +1348,8 @@ func Convert_v1beta1_NetworkPolicyPeer_To_extensions_NetworkPolicyPeer(in *Netwo
}
func autoConvert_extensions_NetworkPolicyPeer_To_v1beta1_NetworkPolicyPeer(in *extensions.NetworkPolicyPeer, out *NetworkPolicyPeer, s conversion.Scope) error {
out.PodSelector = (*LabelSelector)(unsafe.Pointer(in.PodSelector))
out.NamespaceSelector = (*LabelSelector)(unsafe.Pointer(in.NamespaceSelector))
out.PodSelector = (*unversioned.LabelSelector)(unsafe.Pointer(in.PodSelector))
out.NamespaceSelector = (*unversioned.LabelSelector)(unsafe.Pointer(in.NamespaceSelector))
return nil
}
@ -1446,9 +1378,7 @@ func Convert_extensions_NetworkPolicyPort_To_v1beta1_NetworkPolicyPort(in *exten
}
func autoConvert_v1beta1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(in *NetworkPolicySpec, out *extensions.NetworkPolicySpec, s conversion.Scope) error {
if err := Convert_v1beta1_LabelSelector_To_unversioned_LabelSelector(&in.PodSelector, &out.PodSelector, s); err != nil {
return err
}
out.PodSelector = in.PodSelector
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Ingress))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Ingress))
@ -1462,9 +1392,7 @@ func Convert_v1beta1_NetworkPolicySpec_To_extensions_NetworkPolicySpec(in *Netwo
}
func autoConvert_extensions_NetworkPolicySpec_To_v1beta1_NetworkPolicySpec(in *extensions.NetworkPolicySpec, out *NetworkPolicySpec, s conversion.Scope) error {
if err := Convert_unversioned_LabelSelector_To_v1beta1_LabelSelector(&in.PodSelector, &out.PodSelector, s); err != nil {
return err
}
out.PodSelector = in.PodSelector
{
outHdr := (*reflect.SliceHeader)(unsafe.Pointer(&out.Ingress))
inHdr := (*reflect.SliceHeader)(unsafe.Pointer(&in.Ingress))
@ -1778,7 +1706,7 @@ func autoConvert_extensions_ReplicaSetSpec_To_v1beta1_ReplicaSetSpec(in *extensi
return err
}
out.MinReadySeconds = in.MinReadySeconds
out.Selector = (*LabelSelector)(unsafe.Pointer(in.Selector))
out.Selector = (*unversioned.LabelSelector)(unsafe.Pointer(in.Selector))
if err := v1.Convert_api_PodTemplateSpec_To_v1_PodTemplateSpec(&in.Template, &out.Template, s); err != nil {
return err
}

View File

@ -76,8 +76,6 @@ func RegisterDeepCopies(scheme *runtime.Scheme) error {
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_JobList, InType: reflect.TypeOf(&JobList{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_JobSpec, InType: reflect.TypeOf(&JobSpec{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_JobStatus, InType: reflect.TypeOf(&JobStatus{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_LabelSelector, InType: reflect.TypeOf(&LabelSelector{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_LabelSelectorRequirement, InType: reflect.TypeOf(&LabelSelectorRequirement{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_NetworkPolicy, InType: reflect.TypeOf(&NetworkPolicy{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_NetworkPolicyIngressRule, InType: reflect.TypeOf(&NetworkPolicyIngressRule{})},
conversion.GeneratedDeepCopyFunc{Fn: DeepCopy_v1beta1_NetworkPolicyList, InType: reflect.TypeOf(&NetworkPolicyList{})},
@ -228,8 +226,8 @@ func DeepCopy_v1beta1_DaemonSetSpec(in interface{}, out interface{}, c *conversi
out := out.(*DaemonSetSpec)
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -324,8 +322,8 @@ func DeepCopy_v1beta1_DeploymentSpec(in interface{}, out interface{}, c *convers
}
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -780,8 +778,8 @@ func DeepCopy_v1beta1_JobSpec(in interface{}, out interface{}, c *conversion.Clo
}
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -837,51 +835,6 @@ func DeepCopy_v1beta1_JobStatus(in interface{}, out interface{}, c *conversion.C
}
}
func DeepCopy_v1beta1_LabelSelector(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelector)
out := out.(*LabelSelector)
if in.MatchLabels != nil {
in, out := &in.MatchLabels, &out.MatchLabels
*out = make(map[string]string)
for key, val := range *in {
(*out)[key] = val
}
} else {
out.MatchLabels = nil
}
if in.MatchExpressions != nil {
in, out := &in.MatchExpressions, &out.MatchExpressions
*out = make([]LabelSelectorRequirement, len(*in))
for i := range *in {
if err := DeepCopy_v1beta1_LabelSelectorRequirement(&(*in)[i], &(*out)[i], c); err != nil {
return err
}
}
} else {
out.MatchExpressions = nil
}
return nil
}
}
func DeepCopy_v1beta1_LabelSelectorRequirement(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*LabelSelectorRequirement)
out := out.(*LabelSelectorRequirement)
out.Key = in.Key
out.Operator = in.Operator
if in.Values != nil {
in, out := &in.Values, &out.Values
*out = make([]string, len(*in))
copy(*out, *in)
} else {
out.Values = nil
}
return nil
}
}
func DeepCopy_v1beta1_NetworkPolicy(in interface{}, out interface{}, c *conversion.Cloner) error {
{
in := in.(*NetworkPolicy)
@ -954,8 +907,8 @@ func DeepCopy_v1beta1_NetworkPolicyPeer(in interface{}, out interface{}, c *conv
out := out.(*NetworkPolicyPeer)
if in.PodSelector != nil {
in, out := &in.PodSelector, &out.PodSelector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -963,8 +916,8 @@ func DeepCopy_v1beta1_NetworkPolicyPeer(in interface{}, out interface{}, c *conv
}
if in.NamespaceSelector != nil {
in, out := &in.NamespaceSelector, &out.NamespaceSelector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {
@ -1000,7 +953,7 @@ func DeepCopy_v1beta1_NetworkPolicySpec(in interface{}, out interface{}, c *conv
{
in := in.(*NetworkPolicySpec)
out := out.(*NetworkPolicySpec)
if err := DeepCopy_v1beta1_LabelSelector(&in.PodSelector, &out.PodSelector, c); err != nil {
if err := unversioned.DeepCopy_unversioned_LabelSelector(&in.PodSelector, &out.PodSelector, c); err != nil {
return err
}
if in.Ingress != nil {
@ -1190,8 +1143,8 @@ func DeepCopy_v1beta1_ReplicaSetSpec(in interface{}, out interface{}, c *convers
out.MinReadySeconds = in.MinReadySeconds
if in.Selector != nil {
in, out := &in.Selector, &out.Selector
*out = new(LabelSelector)
if err := DeepCopy_v1beta1_LabelSelector(*in, *out, c); err != nil {
*out = new(unversioned.LabelSelector)
if err := unversioned.DeepCopy_unversioned_LabelSelector(*in, *out, c); err != nil {
return err
}
} else {

View File

@ -8727,7 +8727,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
Ref: spec.MustCreateRef("#/definitions/v1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"manualSelector": {
@ -8748,7 +8748,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.LabelSelector", "v1.PodTemplateSpec"},
"unversioned.LabelSelector", "v1.PodTemplateSpec"},
},
"v1.JobStatus": {
Schema: spec.Schema{
@ -8839,83 +8839,6 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
Dependencies: []string{},
},
"v1.LabelSelector": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
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: map[string]spec.Schema{
"matchLabels": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
"matchExpressions": {
SchemaProps: spec.SchemaProps{
Description: "matchExpressions is a list of label selector requirements. The requirements are ANDed.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Ref: spec.MustCreateRef("#/definitions/v1.LabelSelectorRequirement"),
},
},
},
},
},
},
},
},
Dependencies: []string{
"v1.LabelSelectorRequirement"},
},
"v1.LabelSelectorRequirement": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
Properties: map[string]spec.Schema{
"key": {
SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.",
Type: []string{"string"},
Format: "",
},
},
"operator": {
SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.",
Type: []string{"string"},
Format: "",
},
},
"values": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
},
Required: []string{"key", "operator"},
},
},
Dependencies: []string{},
},
"v1.Lifecycle": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@ -15744,7 +15667,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Selector is a label query over pods that are managed by the daemon set. Must match in order to be controlled. If empty, defaulted to labels on Pod template. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"template": {
@ -15758,7 +15681,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.PodTemplateSpec", "v1beta1.LabelSelector"},
"unversioned.LabelSelector", "v1.PodTemplateSpec"},
},
"v1beta1.DaemonSetStatus": {
Schema: spec.Schema{
@ -15913,7 +15836,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Label selector for pods. Existing ReplicaSets whose pods are selected by this will be the ones affected by this deployment.",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"template": {
@ -15960,7 +15883,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.PodTemplateSpec", "v1beta1.DeploymentStrategy", "v1beta1.LabelSelector", "v1beta1.RollbackConfig"},
"unversioned.LabelSelector", "v1.PodTemplateSpec", "v1beta1.DeploymentStrategy", "v1beta1.RollbackConfig"},
},
"v1beta1.DeploymentStatus": {
Schema: spec.Schema{
@ -16681,7 +16604,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"autoSelector": {
@ -16702,7 +16625,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.PodTemplateSpec", "v1beta1.LabelSelector"},
"unversioned.LabelSelector", "v1.PodTemplateSpec"},
},
"v1beta1.JobStatus": {
Schema: spec.Schema{
@ -16761,83 +16684,6 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
Dependencies: []string{
"unversioned.Time", "v1beta1.JobCondition"},
},
"v1beta1.LabelSelector": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
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: map[string]spec.Schema{
"matchLabels": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
"matchExpressions": {
SchemaProps: spec.SchemaProps{
Description: "matchExpressions is a list of label selector requirements. The requirements are ANDed.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelectorRequirement"),
},
},
},
},
},
},
},
},
Dependencies: []string{
"v1beta1.LabelSelectorRequirement"},
},
"v1beta1.LabelSelectorRequirement": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
Properties: map[string]spec.Schema{
"key": {
SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.",
Type: []string{"string"},
Format: "",
},
},
"operator": {
SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.",
Type: []string{"string"},
Format: "",
},
},
"values": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
},
Required: []string{"key", "operator"},
},
},
Dependencies: []string{},
},
"v1beta1.LocalSubjectAccessReview": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
@ -16964,20 +16810,20 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"podSelector": {
SchemaProps: spec.SchemaProps{
Description: "This is a label selector which selects Pods in this namespace. This field follows standard label selector semantics. If not provided, this selector selects no pods. If present but empty, this selector selects all pods in this namespace.",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"namespaceSelector": {
SchemaProps: spec.SchemaProps{
Description: "Selects Namespaces using cluster scoped-labels. This matches all pods in all namespaces selected by this label selector. This field follows standard label selector semantics. If omitted, this selector selects no namespaces. If present but empty, this selector selects all namespaces.",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
},
},
},
Dependencies: []string{
"v1beta1.LabelSelector"},
"unversioned.LabelSelector"},
},
"v1beta1.NetworkPolicyPort": {
Schema: spec.Schema{
@ -17009,7 +16855,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"podSelector": {
SchemaProps: spec.SchemaProps{
Description: "Selects the pods to which this NetworkPolicy object applies. The array of ingress rules is applied to any pods selected by this field. Multiple network policies can select the same set of pods. In this case, the ingress rules for each are combined additively. This field is NOT optional and follows standard label selector semantics. An empty podSelector matches all pods in this namespace.",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"ingress": {
@ -17030,7 +16876,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1beta1.LabelSelector", "v1beta1.NetworkPolicyIngressRule"},
"unversioned.LabelSelector", "v1beta1.NetworkPolicyIngressRule"},
},
"v1beta1.NonResourceAttributes": {
Schema: spec.Schema{
@ -17378,7 +17224,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Selector is a label query over pods that should match the replica count. If the selector is empty, it is defaulted to the labels present on the pod template. Label keys and values that must match in order to be controlled by this replica set. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
Ref: spec.MustCreateRef("#/definitions/v1beta1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"template": {
@ -17391,7 +17237,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.PodTemplateSpec", "v1beta1.LabelSelector"},
"unversioned.LabelSelector", "v1.PodTemplateSpec"},
},
"v1beta1.ReplicaSetStatus": {
Schema: spec.Schema{
@ -18444,7 +18290,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
"selector": {
SchemaProps: spec.SchemaProps{
Description: "Selector is a label query over pods that should match the pod count. Normally, the system sets this field for you. More info: http://kubernetes.io/docs/user-guide/labels#label-selectors",
Ref: spec.MustCreateRef("#/definitions/v2alpha1.LabelSelector"),
Ref: spec.MustCreateRef("#/definitions/unversioned.LabelSelector"),
},
},
"manualSelector": {
@ -18465,7 +18311,7 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
},
},
Dependencies: []string{
"v1.PodTemplateSpec", "v2alpha1.LabelSelector"},
"unversioned.LabelSelector", "v1.PodTemplateSpec"},
},
"v2alpha1.JobStatus": {
Schema: spec.Schema{
@ -18570,83 +18416,6 @@ var OpenAPIDefinitions *common.OpenAPIDefinitions = &common.OpenAPIDefinitions{
Dependencies: []string{
"v1.ObjectMeta", "v2alpha1.JobSpec"},
},
"v2alpha1.LabelSelector": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
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: map[string]spec.Schema{
"matchLabels": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"object"},
AdditionalProperties: &spec.SchemaOrBool{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
"matchExpressions": {
SchemaProps: spec.SchemaProps{
Description: "matchExpressions is a list of label selector requirements. The requirements are ANDed.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Ref: spec.MustCreateRef("#/definitions/v2alpha1.LabelSelectorRequirement"),
},
},
},
},
},
},
},
},
Dependencies: []string{
"v2alpha1.LabelSelectorRequirement"},
},
"v2alpha1.LabelSelectorRequirement": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{
Description: "A label selector requirement is a selector that contains values, a key, and an operator that relates the key and values.",
Properties: map[string]spec.Schema{
"key": {
SchemaProps: spec.SchemaProps{
Description: "key is the label key that the selector applies to.",
Type: []string{"string"},
Format: "",
},
},
"operator": {
SchemaProps: spec.SchemaProps{
Description: "operator represents a key's relationship to a set of values. Valid operators ard In, NotIn, Exists and DoesNotExist.",
Type: []string{"string"},
Format: "",
},
},
"values": {
SchemaProps: spec.SchemaProps{
Description: "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.",
Type: []string{"array"},
Items: &spec.SchemaOrArray{
Schema: &spec.Schema{
SchemaProps: spec.SchemaProps{
Type: []string{"string"},
Format: "",
},
},
},
},
},
},
Required: []string{"key", "operator"},
},
},
Dependencies: []string{},
},
"v2alpha1.ScheduledJob": {
Schema: spec.Schema{
SchemaProps: spec.SchemaProps{

View File

@ -23,6 +23,7 @@ import (
"k8s.io/kubernetes/federation/client/clientset_generated/federation_release_1_5"
fedutil "k8s.io/kubernetes/federation/pkg/federation-controller/util"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/kubernetes/pkg/api/v1"
"k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
"k8s.io/kubernetes/pkg/util/wait"
@ -194,7 +195,7 @@ func newReplicaSet(namespace string, name string, replicas int32) *v1beta1.Repli
},
Spec: v1beta1.ReplicaSetSpec{
Replicas: &replicas,
Selector: &v1beta1.LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: map[string]string{"name": "myrs"},
},
Template: v1.PodTemplateSpec{

View File

@ -12,29 +12,6 @@ load(
go_library(
name = "go_default_library",
srcs = [
"main.go",
":bindata",
],
)
genrule(
name = "bindata",
srcs = [
"//examples:sources",
"//test/images:sources",
"//test/fixtures:sources",
"//test/e2e/testing-manifests:sources",
],
outs = ["bindata.go"],
cmd = """
$(location //vendor:github.com/jteeuwen/go-bindata/go-bindata) \
-nometadata -o "$(OUTS)" -pkg generated \
-prefix $$(pwd) \
-ignore .jpg -ignore .png -ignore .md \
$(SRCS)
""",
tools = [
"//vendor:github.com/jteeuwen/go-bindata/go-bindata",
],
srcs = ["main.go"],
tags = ["automanaged"],
)

View File

@ -55,7 +55,7 @@ func newRS(name, namespace string, replicas int) *v1beta1.ReplicaSet {
Name: name,
},
Spec: v1beta1.ReplicaSetSpec{
Selector: &v1beta1.LabelSelector{
Selector: &unversioned.LabelSelector{
MatchLabels: testLabels(),
},
Replicas: &replicasCopy,