Commit Graph

1901 Commits (d7659dffff3cad5bd0cbdc827570195169477dca)

Author SHA1 Message Date
Kubernetes Submit Queue 52b82eda20 Merge pull request #50444 from nikhita/fix-jsonpath-comment-typos
Automatic merge from submit-queue (batch tested with PRs 50386, 50374, 50444, 50382)

jsonpath: fix comments

Minor fix to the comments. And avoid a named return value.

**Release note**:

```release-note
NONE
```

/cc @sttts
2017-08-10 05:33:58 -07:00
Kubernetes Submit Queue 267d13a474 Merge pull request #50374 from p0lyn0mial/sample_server_wire_admission
Automatic merge from submit-queue (batch tested with PRs 50386, 50374, 50444, 50382)

wires ban flunder admission plugin to the sample server

**What this PR does / why we need it**:
this PR wires ban flunder admission plugin to the sample server.

**Release note**:

```
NONE
```
2017-08-10 05:33:56 -07:00
Nikhita Raghunath 77e347b8d0 jsonpath: fix comments
avoid named return errors

fix compile error
2017-08-10 15:04:28 +05:30
Kubernetes Submit Queue 85e2e5dd9a Merge pull request #49642 from liggitt/rbac-v1
Automatic merge from submit-queue (batch tested with PRs 49642, 50335, 50390, 49283, 46582)

Add rbac.authorization.k8s.io/v1

xref https://github.com/kubernetes/features/issues/2

Promotes the rbac.authorization.k8s.io/v1beta1 API to v1 with no changes

```release-note
The `rbac.authorization.k8s.io/v1beta1` API has been promoted to `rbac.authorization.k8s.io/v1` with no changes.
The `rbac.authorization.k8s.io/v1alpha1` version is deprecated and will be removed in a future release.
```
2017-08-10 00:53:17 -07:00
Kubernetes Submit Queue f6d90eaa45 Merge pull request #49321 from dgoodwin/export-wiring
Automatic merge from submit-queue (batch tested with PRs 49615, 49321, 49982, 49788, 50355)

Fix unused Secret export logic.

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

The strategy used for the secret store defined custom export logic, and
had accompanying unit tests. However the secret storage did not actually
wire this up by setting an ExportStrategy and thus the code was never
used in the real world.

This change fixes the missing assignment and adds testing at a higher
level to ensure any uses of the generic registry.Store that we expect to
have an ExportStrategy do, and no others.

Several other strategies in the RBAC package also appeared to have
unwired Export logic, however their implementations were all empty
leading me to believe that these are not considered exportable. The
empty methods have now been removed.

**Which issue this PR fixes**: fixes #49042

**Release note**:

```release-note
```
2017-08-09 23:56:00 -07:00
Kubernetes Submit Queue 9466dbb4ab Merge pull request #50328 from shiywang/selflink
Automatic merge from submit-queue (batch tested with PRs 50300, 50328, 50368, 50370, 50372)

Add unit tests for GenerateLink

Fixes https://github.com/kubernetes/kubernetes/issues/48321
cc @lavalamp 

```release-note
NONE
```
2017-08-09 22:58:23 -07:00
Kenneth Owens 8fb609ba78 generated code 2017-08-09 15:19:47 -07:00
Kenneth Owens 509af53cbd Adds v1.Service.PublishUnreadyAddresses and deprecates service.alpha.kubernetes.io/tolerate-unready-endpoints 2017-08-09 15:17:56 -07:00
Kubernetes Submit Queue 458cc04330 Merge pull request #46254 from mtaufen/dkcfg
Automatic merge from submit-queue (batch tested with PRs 50016, 49583, 49930, 46254, 50337)

Alpha Dynamic Kubelet Configuration

Feature: https://github.com/kubernetes/features/issues/281

This proposal contains the alpha implementation of the Dynamic Kubelet Configuration feature proposed in ~#29459~ [community/contributors/design-proposals/dynamic-kubelet-configuration.md](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/dynamic-kubelet-configuration.md). 

Please note:
- ~The proposal doc is not yet up to date with this implementation, there are some subtle differences and some more significant ones. I will update the proposal doc to match by tomorrow afternoon.~
- ~This obviously needs more tests. I plan to write several O(soon). Since it's alpha and feature-gated, I'm decoupling this review from the review of the tests.~ I've beefed up the unit tests, though there is still plenty of testing to be done.
- ~I'm temporarily holding off on updating the generated docs, api specs, etc, for the sake of my reviewers 😄~ these files now live in a separate commit; the first commit is the one to review.

/cc @dchen1107 @vishh @bgrant0607 @thockin @derekwaynecarr 

```release-note
Adds (alpha feature) the ability to dynamically configure Kubelets by enabling the DynamicKubeletConfig feature gate, posting a ConfigMap to the API server, and setting the spec.configSource field on Node objects. See the proposal at https://github.com/kubernetes/community/blob/master/contributors/design-proposals/dynamic-kubelet-configuration.md for details.
```
2017-08-09 14:14:32 -07:00
Kubernetes Submit Queue 212928ad14 Merge pull request #49930 from soltysh/remove_scheduledjobs
Automatic merge from submit-queue (batch tested with PRs 50016, 49583, 49930, 46254, 50337)

Remove scheduledjobs

This is a prerequisite for promoting CronJobs to beta.

**Release note**:
```release-note
Remove deprecated ScheduledJobs endpoints, use CronJobs instead.
```
2017-08-09 14:14:30 -07:00
Jordan Liggitt 06c49423ed
Generated files 2017-08-09 17:04:54 -04:00
Jordan Liggitt dd7be70a4a
Add rbac.authorization.k8s.io/v1 2017-08-09 17:04:54 -04:00
Kubernetes Submit Queue da549596c4 Merge pull request #49534 from smarterclayton/separate_proxy
Automatic merge from submit-queue

Support exec/attach/portforward in `kubectl proxy`

Use the UpgradeAwareProxy shared code in kubectl proxy. Provide a separate transport for those requests that does not have HTTP/2 enabled. Refactor the code to be a bit cleaner in places and to better separate changes.

Fixes #32026

```release-note
`kubectl proxy` will now correctly handle the `exec`, `attach`, and `portforward` commands.  You must pass `--disable-filter` to the command in order to allow these endpoints.
```
2017-08-09 09:53:35 -07:00
p0lyn0mial 760f9d1c0b wires ban flunder admission plugin to the sample server 2017-08-09 16:35:39 +02:00
Devan Goodwin 855a1c1713 Fix unused Secret export logic.
The strategy used for the secret store defined custom export logic, and
had accompanying unit tests. However the secret storage did not actually
wire this up by setting an ExportStrategy and thus the code was never
used in the real world.

This change fixes the missing assignment and adds testing at a higher
level to ensure any uses of the generic registry.Store that we expect to
have an ExportStrategy do, and no others.

Several other strategies in the RBAC package also appeared to have
unwired Export logic, however their implementations were all empty
leading me to believe that these are not considered exportable. The
empty methods have now been removed.
2017-08-09 11:07:51 -03:00
Kubernetes Submit Queue 3d91ba577d Merge pull request #50175 from foxish/update-strategies
Automatic merge from submit-queue

Change default update strategy to rolling update

Fixes https://github.com/kubernetes/kubernetes/issues/49604
Change default update strategy to rolling update for daemonset and statefulset in v1beta2

cc @kubernetes/sig-apps-pr-reviews @lukaszo @kargakis 

**Release note**:

```release-note
Make rolling update the default update strategy for v1beta2.DaemonSet and v1beta2.StatefulSet
```
2017-08-09 00:00:21 -07:00
Kubernetes Submit Queue 2bd2127390 Merge pull request #49340 from janetkuo/apps-v1beta2-dep-rollback
Automatic merge from submit-queue

Deprecate Deployment .spec.rollbackTo field 

~Depends on #48746~ (merged)
xref: #46934, #49135

1. Deprecate Deployment field `.spec.rollbackTo` in `extensions/v1beta1` and `apps/v1beta1`, and remove the same field and `/rollback` endpoint from `apps/v1beta2` Deployment. 
1. Add an annotation `deprecated.deployment.rollback.to` in `apps/v1beta2` for conversion to/from other versions. 

Note: `apps/v1beta2` is new in 1.8 (and WIP), so it is okay to make breaking changes to it. 

```release-note
Deprecate Deployment .spec.rollbackTo field 
```
2017-08-08 18:15:38 -07:00
Anirudh 37091c3744 Autogenerated 2017-08-08 15:24:12 -07:00
Anirudh 27e6ceed88 Change default update strategy to rolling update 2017-08-08 15:24:09 -07:00
Kubernetes Submit Queue 9b6e6f5327 Merge pull request #50291 from liggitt/restmapper-flake
Automatic merge from submit-queue

Change test to work around restmapper pluralization bug

Fixes https://github.com/kubernetes/kubernetes/issues/50022

Works around the pluralization bug to unblock the queue.
Once the restmapper bug is fixed in https://github.com/kubernetes/kubernetes/pull/50012, we should add tests specifically for unconventional singular/plural word endings.
2017-08-08 14:46:39 -07:00
Michael Taufen 378544362c core generated files 2017-08-08 12:21:37 -07:00
Michael Taufen 6f0bd47fd8 additional generated files 2017-08-08 12:21:37 -07:00
Michael Taufen 443d58e40a Dynamic Kubelet Configuration
Alpha implementation of the Dynamic Kubelet Configuration feature.
See the proposal doc in #29459.
2017-08-08 12:21:37 -07:00
Shiyang Wang a835d5bdd2 Add unittests for GenerateLink 2017-08-09 00:47:40 +08:00
Maciej Szulik e465962bf7
Remove ScheduledJobs support 2017-08-08 15:22:26 +02:00
Kubernetes Submit Queue f6cb2fce00 Merge pull request #49587 from ryanmcnamara/rm/improve-error-message
Automatic merge from submit-queue (batch tested with PRs 48068, 49587)

DNS name error message improvement

**What this PR does / why we need it**:
Small error message fix. The error message misled me slightly / would have saved time if correct

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
n/a
**Special notes for your reviewer**:
n/a
**Release note**:

n/a
2017-08-08 05:29:51 -07:00
Kubernetes Submit Queue b80ce17b40 Merge pull request #48063 from zouyee/obc
Automatic merge from submit-queue

complete and correct code comment

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

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-08-08 04:03:19 -07:00
Kubernetes Submit Queue 187e6ab0bc Merge pull request #50254 from liggitt/revert-disk-cache
Automatic merge from submit-queue (batch tested with PRs 50254, 50174, 50179)

Revert "Merge pull request #47353 from apelisse/http-cache"

Some issues were discovered with the caching merged in #47353:
* uses a disk-based cache that is not safe between processes (does not use atomic fs operations)
* writes get/list responses to disk that should not be cached (like `kubectl get secrets`)
* is vulnerable to partially written cache responses being used as responses to future requests
* breaks uses of the client transport that make use of websockets
* defaults to enabling the cache for any client builder using RecommendedConfigOverrideFlags or DefaultClientConfig which affects more components than just kubectl

This reverts commit fc89743dca, reversing changes made to 29ab38e898.
2017-08-08 04:02:51 -07:00
Kubernetes Submit Queue 243e655161 Merge pull request #48986 from timoreimann/relax-env-var-naming-restrictions
Automatic merge from submit-queue (batch tested with PRs 50208, 50259, 49702, 50267, 48986)

Relax restrictions on environment variable names.

Fixes #2707

The POSIX standard restricts environment variable names to uppercase letters, digits, and the underscore character in shell contexts only. For generic application usage, it is stated that all other characters shall be tolerated. (Reference [here](http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap08.html), my prose reasoning [here](https://github.com/kubernetes/kubernetes/issues/2707#issuecomment-285309156).)

This change relaxes the rules to some degree. Namely, we stop requiring environment variable names to be strict `C_IDENTIFIERS` and start permitting lowercase, dot, and dash characters.

Public container images using environment variable names beyond the shell-only context can benefit from this relaxation. Elasticsearch is one popular example.
2017-08-08 01:53:08 -07:00
Jordan Liggitt b10df4e221
Change test to work around restmapper pluralization bug 2017-08-08 01:20:30 -04:00
Kubernetes Submit Queue 3900e36d62 Merge pull request #50124 from k82cn/k8s_49103
Automatic merge from submit-queue

Removed un-used InodePressure condition.

**What this PR does / why we need it**:
Removed un-used InodePressure condition; kubelet did not report it anymore, so remove it.

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

**Release note**:

```release-note
The node condition 'NodeInodePressure' was removed, as kubelet did not report it.
```
2017-08-07 21:36:48 -07:00
Janet Kuo e245fbc2b2 Autogen 2017-08-07 19:11:39 -07:00
Janet Kuo 5473d56373 Remove some apps/v1beta2 generated files so that codegen works 2017-08-07 19:11:39 -07:00
Janet Kuo 0d239605a9 Conversion code for apps/v1beta2 Deployment
Need to convert deprecated .spec.rollbackTo field into
an annotation in apps/v1beta2 Deployment for roundTrip
2017-08-07 19:11:39 -07:00
Janet Kuo e7930520e4 Deprecate Deployment rollbackTo field and remove rollback endpoint
1. Deprecate `.spec.rollbackTo` field in extensions/v1beta1 and
   apps/v1beta1 Deployments
2. Remove the same field from apps/v1beta2 Deployment, and remove
   its rollback subresource and endpoint
2017-08-07 18:35:49 -07:00
Kubernetes Submit Queue 96064570d2 Merge pull request #49834 from guoshimin/fixprematurerturn
Automatic merge from submit-queue

Fix premature return

**What this PR does / why we need it**: Fixes a bug where the loop is prematurely terminated.

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

**Special notes for your reviewer**:

**Release note**: 

NONE
2017-08-07 18:26:29 -07:00
Kubernetes Submit Queue 4e2b905916 Merge pull request #50166 from DirectXMan12/bug/fix-aggregator-with-no-openapi
Automatic merge from submit-queue (batch tested with PRs 49524, 46760, 50206, 50166, 49603)

Handle missing OpenAPI specs on aggregated servers

Previously, the aggregator would fail to actually set up the aggregator
proxy for an API server that was missing an OpenAPI spec.  It would show
up in discovery, but the actual proxying would fail to occur.

Now, we simply log an error if we can't fetch an OpenAPI spec for a
particular aggregated server, and continue on.

Fixes #50165

```release-note
NONE
```
2017-08-07 13:52:03 -07:00
Jordan Liggitt 4ee72eb300
Revert "Merge pull request #47353 from apelisse/http-cache"
This reverts commit fc89743dca, reversing
changes made to 29ab38e898.
2017-08-07 16:20:34 -04:00
Kubernetes Submit Queue 59b8fa32f1 Merge pull request #39587 from zhouhaibing089/openstack-auth-provider
Automatic merge from submit-queue (batch tested with PRs 50087, 39587, 50042, 50241, 49914)

plugin/pkg/client/auth: add openstack auth provider

This is an implementation of auth provider for OpenStack world, just like python-openstackclient, we read the environment variables of a list `OS_*`, and client will cache a token to interact with each components, we can do the same here, the client side can cache a token locally at the first time, and rotate automatically when it expires.

This requires an implementation of token authenticator at server side, refer:

1.  [made by me] https://github.com/kubernetes/kubernetes/pull/25536, I can carry this on when it is fine to go.
2.  [made by @kfox1111] https://github.com/kubernetes/kubernetes/pull/25391

The reason why I want to add this is due to the `client-side` nature, it will be confusing to implement it downstream, we would like to add this support here, and customers can get `kubectl` like they usually do(`brew install kubernetes-cli`), and it will just work.

When this is done, we can deprecate the password keystone authenticator as the following reasons:

1.  as mentioned at some other places, the `domain` is another parameters which should be provided.
2.  in case the user supplies `apikey` and `secrets`, we might want to fill the `UserInfo` with the real name which is not implemented for now.

cc @erictune @liggitt 

```
add openstack auth provider
```
2017-08-07 10:58:57 -07:00
Solly Ross 17eb58131a Handle missing OpenAPI specs on aggregated servers
Previously, the aggregator would fail to actually set up the aggregator
proxy for an API server that was missing an OpenAPI spec.  It would show
up in discovery, but the actual proxying would fail to occur.

Now, we simply log an error if we can't fetch an OpenAPI spec for a
particular aggregated server, and continue on.
2017-08-07 11:04:41 -04:00
Kubernetes Submit Queue 654de23cbf Merge pull request #50145 from gmarek/micro-equality
Automatic merge from submit-queue (batch tested with PRs 49868, 50143, 49377, 50141, 50145)

Add MicroTime to DeepEquals overrides
2017-08-07 04:05:02 -07:00
Kubernetes Submit Queue a0826e1d89 Merge pull request #49377 from CaoShuFeng/audit_id_http_response_header
Automatic merge from submit-queue (batch tested with PRs 49868, 50143, 49377, 50141, 50145)

Return Audit-Id http response header for trouble shooting

Users can use Audit-Id http response header to grep the audit events in log.
This provides a fast way to find the events in audit.
**Release note**:

```
Audit-Id HTTP header is included in the apiserver responses for audited requests, except some cases when it's not possible, e.g. pods/exec.
```
@sttts @tallclair
2017-08-07 04:04:57 -07:00
Shiyang Wang 2eda19da7b Fix NotFound errors do not line up with API endpoint's group version 2017-08-07 16:30:40 +08:00
Kubernetes Submit Queue c75d3028dd Merge pull request #50159 from liggitt/includeObject
Automatic merge from submit-queue

Fix includeObject parameter parsing

Fixes #50149
2017-08-06 22:49:09 -07:00
Dr. Stefan Schimanski 3b310d8989 Update generated code 2017-08-06 15:32:28 +02:00
Dr. Stefan Schimanski 1910b5a1dd Fix code implicitly casting clientsets to getters 2017-08-06 15:30:13 +02:00
Dr. Stefan Schimanski 25f2b0a2c1 client-gen: stop embedding of GroupVersion client intfs 2017-08-06 15:30:13 +02:00
zhouhaibing089 a0cebcb559 plugin/pkg/client/auth: add openstack auth provider 2017-08-05 21:24:14 -07:00
Kubernetes Submit Queue f75f49e7a0 Merge pull request #49915 from caesarxuchao/controller-ignore-initialize-timeout
Automatic merge from submit-queue (batch tested with PRs 49855, 49915)

Let controllers ignore initialization timeout when creating pods

Partially address https://github.com/kubernetes/kubernetes/issues/48893#issuecomment-318540129.

This only updates the controllers that create pods with `GenerateName`.

The controllers ignore the timeout error when creating the pods, depending on how the initialization progress:
* If the initialization is successful in less than 5 mins, the controller will observe the creation via the informer. All is good.
* If the initialization fails, server will delete the pod, but the controller won't receive any event. The controller will not create new pod until the Creation expectation expires in 5 min.
* If the initialization takes too long (> 5 mins), the Creation expectation expires and the controller will create extra pods.

I'll send follow-up PRs to fix the latter two cases, e.g., by refactoring the sharedInformer.
2017-08-05 19:07:53 -07:00
Kubernetes Submit Queue 8d6bbaa85f Merge pull request #49678 from smarterclayton/429_metric
Automatic merge from submit-queue

Timeout and Max-in-flight don't report non-resource URLs correctly.

Unify error reporting for 429 and 504 to be correct for timeout and max in flight and eviction. Add better messages to eviction (removing a todo). Return the correct body content for timeouts (reason and code should be correct).

This potentially increases cardinality of 429, but because non-api urls may be under the max-inflight budget we need to report them somewhere (if something breaks and starts fetching API versions endlessly).

```release-note
The 504 timeout error was returning a JSON error body that indicated it was a 500.  The body contents now correctly report a 500 error.
```
2017-08-05 01:28:00 -07:00