Commit Graph

4832 Commits

Author SHA1 Message Date
Dr. Stefan Schimanski
b01699b9f7 apiextensions: unify multi- and mono-versioned test helpers 2018-05-24 11:39:36 +02:00
Dr. Stefan Schimanski
4471d0321f apimachinery: remove unused UnstructuredObjectConverter 2018-05-24 11:05:29 +02:00
xuzhonghu
6f76247eb6 replace __internal with runtime.APIVersionInternal 2018-05-24 16:57:44 +08:00
Kubernetes Submit Queue
74bcefc8b2 Merge pull request #64063 from roycaihw/support-get-status
Automatic merge from submit-queue (batch tested with PRs 62756, 63862, 61419, 64015, 64063). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

apiservices/status and certificatesigningrequests/status support get+update+patch

**What this PR does / why we need it**:
Fix the remaining `/status` subresources that return 405 on GET and PATCH

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
ref https://github.com/kubernetes/kubernetes/pull/63619

**Release note**:

```release-note
apiservices/status and certificatesigningrequests/status now support GET and PATCH
```
2018-05-23 18:14:20 -07:00
David Ashpole
fd1f19fc42 add metadata to kubelet eviction event annotations 2018-05-23 16:12:54 -07:00
Dr. Stefan Schimanski
e341803d4f apiextensions: reduce verbose logs in removeDeadStorage
We don't need one log line per version.
2018-05-23 21:42:08 +02:00
Dr. Stefan Schimanski
818147d6fb apiextensions: make CreateNewCustomResourceDefinition return created CRD 2018-05-23 21:41:55 +02:00
David Eads
7288e8828f prevent zero for leader election timeouts 2018-05-23 15:00:37 -04:00
Mehdy Bohlool
e73475311c Update generated files 2018-05-23 11:12:50 -07:00
Mehdy Bohlool
54970ea1cc Add clarification for GA in Version Priority sorting 2018-05-23 11:07:35 -07:00
Dr. Stefan Schimanski
9d6e7254a1 apiextensions: extract orthortogonal behaviour from nopConverter
This is preparation for adding more CR converters.
2018-05-23 17:25:00 +02:00
Kubernetes Submit Queue
9716f585c5 Merge pull request #64150 from wojtek-t/fix_list_resource_version
Automatic merge from submit-queue (batch tested with PRs 64102, 63303, 64150, 63841). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Fix incorrectly set resource version in List

Fix : https://github.com/kubernetes/kubernetes/issues/64147
2018-05-23 04:53:21 -07:00
Kubernetes Submit Queue
45c94a1cb4 Merge pull request #63830 from mbohlool/crd_versioning_nop
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Crd versioning with nop Conversion

Implements Custom Resource Definition versioning according to[ design doc](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/customresources-versioning.md).

Note: I recreated this PR instead of #63518. Huge number of comments there broke github. 

@sttts @nikhita @deads2k @liggitt @lavalamp 

```release-note
Add CRD Versioning with NOP converter
```
2018-05-22 23:11:55 -07:00
wojtekt
a3578c864e Fix incorrectly set resource version in List 2018-05-23 08:06:36 +02:00
Kubernetes Submit Queue
c4d7987a62 Merge pull request #64126 from mtaufen/remove-old-todos
Automatic merge from submit-queue (batch tested with PRs 63283, 64032, 64159, 64126, 64098). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Remove some completed TODOs

This PR removes some old TODOs that were recently completed.
```release-note
NONE
```
2018-05-22 22:14:13 -07:00
Jordan Liggitt
43551e8208 Correctly identify types served in the kube-apiserver openapi doc 2018-05-22 20:57:18 -04:00
Mehdy Bohlool
c25514a1ee Generated files 2018-05-22 13:54:34 -07:00
Mehdy Bohlool
0f6d98a056 CRD versioning with no-op converter 2018-05-22 13:54:33 -07:00
Mehdy Bohlool
531041ce94 Do not bypass same version unstructed conversion if it is a list
This give the converter a chance to convert list items to the requested version.
2018-05-22 13:54:33 -07:00
Mehdy Bohlool
8a39e5381c CRD versioning validation and defaulting 2018-05-22 13:54:32 -07:00
Mehdy Bohlool
10c48ae510 CRD versioning - types change 2018-05-22 13:54:32 -07:00
Michael Taufen
62a1532d51 Remove some completed TODOs 2018-05-22 11:02:57 -07:00
Gregory Man
a29a1cbb95 Added unit tests to sample-controller
Added unit tests.

Changed NewController function to accept informers and not informers
factory. This make code more testable and align it with other
controllers.
2018-05-22 12:43:31 +03:00
Haowei Cai
a14f423ebb generated 2018-05-21 18:04:54 -07:00
Haowei Cai
2acbe87156 mark ServerAddressByClientCIDRs as optional 2018-05-21 17:47:25 -07:00
Kubernetes Submit Queue
6d510f52f2 Merge pull request #63409 from mtaufen/kc-validation-feature-gates
Automatic merge from submit-queue (batch tested with PRs 63881, 64046, 63409, 63402, 63221). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Kubelet config: Validate new config against future feature gates

This fixes an issue with KubeletConfiguration validation, where the             
feature gates set by the new config were not taken into account.                
                                                                                
Also fixes a validation issue with dynamic Kubelet config, where flag           
precedence was not enforced prior to dynamic config validation in the           
controller; this prevented rejection of dynamic configs that don't merge        
well with values set via legacy flags. 

Fixes #63305 

```release-note
NONE
```
2018-05-21 17:05:34 -07:00
Kubernetes Submit Queue
f5fb740f06 Merge pull request #59414 from mbohlool/test_cycle
Automatic merge from submit-queue (batch tested with PRs 59414, 64096). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Fix cyclic dependency of apiserver test for OpenAPI test

Fixes #41748

```release-note
NONE
```
2018-05-21 12:14:07 -07:00
Kubernetes Submit Queue
5c7add3c75 Merge pull request #64069 from ibrasho-forks/fix-error-message
Automatic merge from submit-queue (batch tested with PRs 64069, 64087). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Fix error message

**What this PR does / why we need it**:
This PR fixes a minor mistake in an error message in `Equalities.DeepEqual`. I've tried to trace this mistake but could not find out where it originated.

**Release note**:
```release-note
NONE
```
2018-05-21 10:48:14 -07:00
mbohlool
9e94cf72a8 Update bazel 2018-05-20 22:19:06 -07:00
mbohlool
e979b16987 Fix cyclic dependency of apiserver test for OpenAPI test 2018-05-20 22:19:06 -07:00
Kubernetes Submit Queue
b87105aebd Merge pull request #64004 from mbohlool/apiservice_order
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Sort API Services by Kube-Version order

Sort API services based on kube-version format. If the version does not have kube-version format.

kube-version format: `v[MajorVersion]((alpha|beta)[minorVersion])?`
e.g. v1alpha1, v4, v21beta12

Sort base on:
Version type first: GA>Beta>Alpha
Major version then Minor version (if exists).

```release-note
APIServices with kube-like versions (e.g. v1, v2beta1, etc.) will be sorted appropriately within each group. 
```
2018-05-20 20:43:24 -07:00
Michael Taufen
647e90341c Kubelet config: Validate new config against future feature gates
This fixes an issue with KubeletConfiguration validation, where the
feature gates set by the new config were not taken into account.

Also fixes a validation issue with dynamic Kubelet config, where flag
precedence was not enforced prior to dynamic config validation in the
controller; this prevented rejection of dynamic configs that don't merge
well with values set via legacy flags.
2018-05-20 13:15:59 -07:00
Mehdy Bohlool
cc87ba3a12 Generated files 2018-05-20 01:40:05 -07:00
Mehdy Bohlool
97ada15fbe Sort API Services by Kube-Version order 2018-05-20 01:40:04 -07:00
Ibrahim AshShohail
73f4cd89af Fix error message in Equalities.DeepEqual
Signed-off-by: Ibrahim AshShohail <me@ibrasho.com>
2018-05-20 02:22:09 +03:00
Kubernetes Submit Queue
7909712ca5 Merge pull request #60464 from roycaihw/loadconfig
Automatic merge from submit-queue (batch tested with PRs 63598, 63913, 63459, 63963, 60464). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Client-go raises error on duplicated name in kubeconfig

(for NamedCluster, NamedContext, NamedUser, NamedExtension)



**What this PR does / why we need it**:
Client should detect duplicated name when loading `name-value` based lists in kubeconfig: `users`, `clusters`, `contexts`. Currently if there are multiple value with same name, `client-python` will pick the first one, while `client-go` will pick the last.

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
ref: kubernetes-client/python#445, kubernetes-client/python-base#47

**Special notes for your reviewer**:

**Release note**:

```release-note
kubectl and client-go now detects duplicated name for user, cluster and context when loading kubeconfig and reports error 
```

/sig api-machinery

cc @brendandburns @mbohlool
2018-05-19 06:49:27 -07:00
Kubernetes Submit Queue
4810b9ba67 Merge pull request #63913 from deads2k/controller-10-event
Automatic merge from submit-queue (batch tested with PRs 63598, 63913, 63459, 63963, 60464). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

fix event ref determination for apigroups

The event ref determination was never updated to handle apigroups so it has been returning only a group (not a version).

@kubernetes/sig-apps-bugs 

```release-note
event object references with apiversion will now report an apiversion.
```
2018-05-19 06:49:16 -07:00
Kubernetes Submit Queue
4b0b91ae31 Merge pull request #63598 from nikhita/subresources-to-beta
Automatic merge from submit-queue (batch tested with PRs 63598, 63913, 63459, 63963, 60464). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

apiextensions: promote CustomResourcesSubresources to beta

Fixes #62786

This PR promotes the CustomResourcesSubResources feature to beta and makes it enabled by default.

**Release note**:

```release-note
Subresources for custom resources is now beta and enabled by default. With this, updates to the `/status` subresource will disallow updates to all fields other than `.status` (not just `.spec` and `.metadata` as before). Also, `required` can be used at the root of the CRD OpenAPI validation schema when the `/status` subresource is enabled.
```

/assign sttts deads2k 
/sig api-machinery
/area custom-resources
2018-05-19 06:49:12 -07:00
Haowei Cai
4e114fd65b generated 2018-05-18 18:42:39 -07:00
Haowei Cai
cd13c41dde Add GET PATCH support for two /status:
apiservices/status under apiregistration.k8s.io
certificatesigningrequests/status under certificates.k8s.io
2018-05-18 18:31:27 -07:00
Haowei Cai
e9454a383b Raise error on duplicate name in kubeconfig
for NamedCluster, NamedContext, NamedUser, NamedExtension
2018-05-18 17:56:46 -07:00
Mikhail Mazurskiy
5e8e570dbd Use Dial with context 2018-05-19 08:14:37 +10:00
David Eads
b2be8953b1 fix event ref determination for apigroups 2018-05-18 11:36:57 -04:00
Kubernetes Submit Queue
23d3b6fc79 Merge pull request #63716 from JacobTanenbaum/healthz
Automatic merge from submit-queue (batch tested with PRs 63920, 63716, 63928, 60553, 63946). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Add InstallPathHandler which allows for more then one path to be associated with health checking.

Currently it is only possible to have one group of checks which must all pass for the handler to report success.
Allowing multiple paths for these checks allows use of the same machinery for other kinds of checks, i.e. readiness.



**What this PR does / why we need it**:

**Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
Fixes #

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2018-05-18 01:07:14 -07:00
Kubernetes Submit Queue
c13bd2bec2 Merge pull request #63957 from hzxuzhonghu/rm-UID-ctx
Automatic merge from submit-queue (batch tested with PRs 63871, 63927, 63966, 63957, 63844). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

remove UID mutation from request.context

**What this PR does / why we need it**:

remove UID mutation from request.context, which is no use currently.

Fixes #59775

**Special notes for your reviewer**:

**Release note**:

```release-note
Remove UID mutation from request.context.
```
2018-05-17 13:40:25 -07:00
Kubernetes Submit Queue
b3837d004a Merge pull request #63469 from wojtek-t/allow_list_and_watch_secrets
Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

Allow for listing & watching individual secrets from nodes

This PR:
- propagates value of `metadata.name` field from fieldSelector to `name` field in RequestInfo (for list and watch requests)
- authorizes list/watch for requests for single secrets/configmaps coming from nodes

As an example:
```
/api/v1/secrets/namespaces/ns?fieldSelector=metadata.name=foo =>
  requestInfo.Name = "foo",
  requestInfo.Verb = "list"
/api/v1/secrets/namespaces/ns?fieldSelector=metadata.name=foo&watch=true =>
  requestInfo.Name = "foo",
  requestInfo.Verb = "list"
```

```release-note
list/watch API requests with a fieldSelector that specifies `metadata.name` can now be authorized as requests for an individual named resource
```
2018-05-17 07:09:43 -07:00
xuzhonghu
84678b2882 update bazel 2018-05-17 11:58:26 +08:00
xuzhonghu
7ea612db16 remove request context.WithUID 2018-05-17 11:58:26 +08:00
Andrew Lytvynov
85a61ff3aa Extract connection rotating dialer into a package
This will be re-used for exec auth plugin to rotate connections on
credential change.
2018-05-16 10:30:53 -07:00
Kubernetes Submit Queue
baad3d4159 Merge pull request #63875 from deads2k/client-10-timeout
Automatic merge from submit-queue (batch tested with PRs 63875, 63817). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.

make TestGetServerGroupsWithTimeout more reliable

Stops overriding a global variable in a test and tolerates a different kind of timeout message you can see.

/assign @soltysh
2018-05-16 08:26:12 -07:00