Commit Graph

4805 Commits

Author SHA1 Message Date
hangaoshuai
378855e8f4 add an OWNERS file 2018-08-05 11:33:28 +08:00
hangaoshuai
b7ce1f8208 add generated code files 2018-08-05 11:33:28 +08:00
hangaoshuai
ad1f3e659e move componentconfig ClientConnectionConfiguration to k8s.io/apimachinery/pkg/apis/config 2018-08-05 11:33:28 +08:00
Antoine Pelisse
b5258a5380 storage: Move precondition check as a method of preconditions 2018-08-03 14:30:50 -07:00
Antoine Pelisse
68937c4934 dry-run: Use dry-runnable structure 2018-08-03 14:30:50 -07:00
David Eads
8a1eae451b stop adding internal types to external schemes 2018-08-03 09:47:04 -04:00
Kubernetes Submit Queue
5b82745caf Merge pull request #65983 from sttts/sttts-crd-object-count
Automatic merge from submit-queue (batch tested with PRs 66822, 65983). 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-apiserver: enable etcd_object_count metrics for CustomResources

~~This leaks one go routine per CRD that is deleted~~ The stop channel is wired already. We should not have the leak of the go routine:
d10e08fc89/staging/src/k8s.io/apiserver/pkg/registry/generic/registry/store.go (L1379)

```release-note
Added etcd_object_count metrics for CustomResources.
```
2018-08-03 00:08:58 -07:00
Kubernetes Submit Queue
a2223e9a92 Merge pull request #66837 from deads2k/client-02-panic
Automatic merge from submit-queue (batch tested with PRs 66870, 66929, 66837). 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 panic fake SAR client expansion

if the object is nil, the type assertion fails.

@kubernetes/sig-api-machinery-bugs 

```release-note
NONE
```
2018-08-02 17:03:08 -07:00
Kubernetes Submit Queue
99f96511fd Merge pull request #66929 from deads2k/client-03-wrapping-log
Automatic merge from submit-queue (batch tested with PRs 66870, 66929, 66837). 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 logging to find offending transports

When a transport can't be cancelled, we're notified, but we don't which transport is missing the ability.  This adds logging to give us a target type.

@kubernetes/sig-api-machinery-bugs 
/assign @juanvallejo 

since you hit it.

```release-note
NONE
```
2018-08-02 17:03:05 -07:00
David Eads
8b61c5a088 add logging to find offending transports 2018-08-02 15:14:27 -04:00
Antoine Pelisse
71970d6475 dry-run: Update DynamicClient to pass Create/Update options 2018-08-02 10:38:31 -07:00
W. Trevor King
e42aab6430 client-go/rest: Fix "segments segment" comment typo
The typo landed with SubResource in adb75e1f (generated staging area,
2016-08-06, kubernetes/kubernetes#29147).
2018-08-02 08:30:44 -07:00
David Eads
efb160c945 generated 2018-08-01 15:31:12 -04:00
David Eads
d3bd0eb1d5 make package name match all the import aliases 2018-08-01 15:31:12 -04:00
David Eads
1f703d33f5 add methods to apimachinery to easy unit testing 2018-08-01 15:31:12 -04:00
Emil Nikolov
9b980fc6a0 Fix a typo: coverting -> converting 2018-08-01 12:27:23 +01:00
Ibrahim AshShohail
23996b25c9 change TRUNCATED to DATA+OMITTED in kubectl config view
Signed-off-by: Ibrahim AshShohail <me@ibrasho.com>
2018-08-01 03:39:50 +03:00
Kubernetes Submit Queue
f49708bd49 Merge pull request #66643 from smarterclayton/improve_events
Automatic merge from submit-queue (batch tested with PRs 66445, 66643, 60551). 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>.

Improve the output of `kubectl get events`

Events have long shown the most data of the core objects in their output, but that data is of varying use to a user. Following the principle that events are intended for the system to communicate information back to the user, and that Message is the primary human readable field, this commit alters the default columns to ensure event is shown with the most width given to the message, and all other fields organized by their relevance to the message.

1. Events are no longer sorted in the printer (this was a bug and was broken with paging and server side rendering)
2. Only the last seen, type, reason, kind, and message fields are shown by default, which makes the message prominent
3. Source, subobject, count, and first seen are only shown under `-o wide`
4. The duration fields were changed to be the more precise output introduced for job duration (2-3 sig figs)
5. Prioritized the column order for scanning - when, how important, what kind of error, what kind of object, and the message.
6. Trim trailing newlines on the message.

```release-note
Improved the output of `kubectl get events` to prioritize showing the message, and move some fields to `-o wide`.
```

```
$ kubectl get events --sort-by lastTimestamp
LAST SEEN TYPE      REASON                   KIND                    MESSAGE
16m       Normal    SawCompletedJob          CronJob                 Saw completed job: image-mirror-origin-v3.11-quay-1532581200
16m       Normal    SuccessfulDelete         CronJob                 Deleted job image-mirror-origin-v3.11-quay-1532577600
14m       Normal    Scheduled                Pod                     Successfully assigned 50c42204-9091-11e8-b2a1-0a58ac101869 to origin-ci-ig-n-fqfh
14m       Normal    Pulling                  Pod                     pulling image "docker-registry.default.svc:5000/ci/commenter:latest"
14m       Normal    Created                  Pod                     Created container
14m       Normal    Pulled                   Pod                     Successfully pulled image "docker-registry.default.svc:5000/ci/commenter:latest"
14m       Normal    Started                  Pod                     Started container
14m       Normal    SandboxChanged           Pod                     Pod sandbox changed, it will be killed and re-created.
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m14s     Normal    ScaleDown                Pod                     deleting pod for node scale down
4m13s     Normal    SuccessfulCreate         ReplicationController   Created pod: tide-30-hmncf
4m13s     Normal    Scheduled                Pod                     Successfully assigned tide-30-hmncf to origin-ci-ig-n-x64l
4m12s     Normal    SuccessfulCreate         ReplicationController   Created pod: console-jenkins-operator-16-dd5k8
4m12s     Normal    SuccessfulCreate         ReplicationController   Created pod: sinker-23-scfmt
```
2018-07-31 15:56:07 -07:00
David Eads
13db7c77c9 fix panic fake SAR client expansion 2018-07-31 16:17:36 -04:00
Kubernetes Submit Queue
259e0743f1 Merge pull request #66581 from janetkuo/deploy-progress
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>.

 Default extensions/v1beta1 Deployment's ProgressDeadlineSeconds to MaxInt32

**What this PR does / why we need it**: Default values should be set in all API versions, because defaulting happens whenever a serialized version is read. When we switched to `apps/v1` as the storage version in `1.10` (#58854), `extensions/v1beta1` `DeploymentSpec.ProgressDeadlineSeconds` gets `apps/v1` default value (`600`) instead of being unset. 

**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 #66135 

**Special notes for your reviewer**: We need to cherrypick this fix to 1.10 and 1.11. Note that this fix will only help people who haven't upgraded to 1.10 or 1.11 when the storage version is changed. 

@kubernetes/sig-apps-bugs 

**Release note**:

```release-note
NONE
```
2018-07-31 09:30:59 -07:00
Cao Shufeng
716dc87a10 use Audit v1 api and add it to some unit tests 2018-07-30 15:56:39 +08:00
Cao Shufeng
15b800fdf7 run "make update" 2018-07-30 15:56:39 +08:00
Cao Shufeng
6d2c2ef169 upgrade advanced Audit to stable 2018-07-30 15:56:39 +08:00
Kubernetes Submit Queue
6715f13929 Merge pull request #65799 from dekkagaijin/fix-headers
Automatic merge from submit-queue (batch tested with PRs 66225, 66648, 65799, 66630, 66619). 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>.

Percent-encode illegal characters in user.Info.Extra keys

This percent-encodes characters in `X-Remote-Extra-` and `Impersonate-Extra-` keys which aren't valid for header names per [RFC 7230](https://tools.ietf.org/html/rfc7230#section-3.2.6) (plus "%" to avoid breaking keys which contain them). The API server then blindly unescapes these keys.

Reviewer note:
Old clients sending keys which were `%`-escaped by the user will have their values unescaped by new API servers. New clients sending keys containing illegal characters (or "%") to old API servers will not have their values unescaped. This version skew incompatibility is a compromise discussed in #63682.

Fixes #63682

PTAL @mikedanese 

**Release note**:
```release-note
action required: the API server and client-go libraries have been fixed to support additional non-alpha-numeric characters in UserInfo "extra" data keys. Both should be updated in order to properly support extra data containing "/" characters or other characters disallowed in HTTP headers.
```
2018-07-27 16:42:11 -07:00
Kubernetes Submit Queue
c2cbe86f7d Merge pull request #66648 from feiskyer/azure-sdk-update
Automatic merge from submit-queue (batch tested with PRs 66225, 66648, 65799, 66630, 66619). 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>.

Update Azure Go SDK to v19.0.0 and get availability zone for VirtualMachineScaleSetVM

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

Continue of #66242. This PR updates Azure Go SDK to v19.0.0 (with compute API 2018-04-01) and gets availability zones for VirtualMachineScaleSetVM.

**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
Azure Go SDK has been upgraded to v19.0.0 and VirtualMachineScaleSetVM now supports availability zones.
```

/sig azure
/assign @brendandburns @khenidak @andyzhangx
2018-07-27 16:42:08 -07:00
Janet Kuo
4dadbb531a Autogen
1. hack/update-generated-protobuf.sh
2. hack/update-generated-swagger-docs.sh
3. hack/update-swagger-spec.sh
4. hack/update-openapi-spec.sh
5. hack/update-api-reference-docs.sh
2018-07-27 10:10:30 -07:00
Janet Kuo
849c08d1ed Update API doc of ProgressDeadlineSeconds 2018-07-27 10:10:30 -07:00
Kubernetes Submit Queue
090cafadec Merge pull request #66616 from smarterclayton/timeout_error
Automatic merge from submit-queue (batch tested with PRs 66554, 66616, 66695, 66681). 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 the timeout error more specific so users can find it
2018-07-27 10:09:08 -07:00
Kubernetes Submit Queue
630c780f37 Merge pull request #66333 from hzxuzhonghu/audit
Automatic merge from submit-queue (batch tested with PRs 66333, 65542). 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 String method to audit.Backend interface

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

Add `String()` method to `audit.Backend` interface.  Should enforce backend to implement this method.
Because https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apiserver/pkg/audit/union.go#L65

We encountered this issue when we upgrade recently and we implemented our private backend.

**Release note**:

```release-note
NONE
```
2018-07-27 07:24:02 -07:00
Pengfei Ni
4457947e11 Update staging Godeps 2018-07-27 10:13:56 +08:00
Clayton Coleman
2f275b72b2 Improve the output of kubectl get events
Events have long shown the most data of the core objects in their output, but that data is of varying use
to a user. Following the principle that events are intended for the system to communicate information back
to the user, and that Message is the primary human readable field, this commit alters the default columns
to ensure event is shown with the most width.

1. Events are no longer sorted in the printer (this was a bug and was broken with paging and server side
   rendering)
2. Only the last seen, type, reason, kind, and message fields are shown by default, which makes the
   message prominent
3. Source, subobject, count, and first seen are only shown under `-o wide`
4. The duration fields were changed to be the more precise output introduced for job duration (2-3 sig figs)
2018-07-26 16:12:32 -04:00
Kubernetes Submit Queue
cef2d325ee Merge pull request #66395 from awly/fix-kubelet-exec-plugin-startup
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>.

Update http.Transport if it already exists in ExecProvider

**What this PR does / why we need it**:
This unbreaks ExecPlugin. Without the change, we hit this error
https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/client-go/transport/transport.go#L32

**Release note**:
```release-note
Fix kubelet startup failure when using ExecPlugin in kubeconfig
```
2018-07-26 10:47:05 -07:00
Clayton Coleman
8a2d037bc5 Make the timeout error more specific so users can find it
This makes the error consistent with the timeout filter and also helps
the user understand that they requested a specific timeout.
2018-07-26 00:53:31 -04:00
Andrew Lytvynov
3357b5ecf4 Set connrotation dialer via restclient.Config.Dialer
Instead of Transport. This fixes ExecPlugin, which fails if
restclient.Config.Transport is set.
2018-07-25 16:23:57 -07:00
Kubernetes Submit Queue
b6bffa83c0 Merge pull request #64681 from CaoShuFeng/webhook_validating_test_case
Automatic merge from submit-queue (batch tested with PRs 64681, 65907). 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 a TODO in ValidatingAdmissionWebhook

Tests still passes without this filter.


**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**:
/assign @sttts 

**Release note**:

```release-note
NONE
```
2018-07-24 16:28:08 -07:00
jennybuckley
37c10e2e05 Skip building openapi for ignored paths 2018-07-24 16:11:42 -07:00
Kubernetes Submit Queue
4e5c781b7d Merge pull request #66411 from DirectXMan12/bug/allow-setting-openapi-version-with-sec
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>.

Autoset OpenAPI version w/o SecurityDefinitions

There's code to automatically populate OpenAPI info based on existing
generic apiserver config, but it only fires if securitydefinitions are
present.  This doesn't make much sense, since this info is both required
and independent of security definitions, and there's no easy, generic
way to generate security definitions for an aggregated API server.

**Release note**:
```release-note
Properly autopopulate OpenAPI version field without needing other OpenAPI fields present in generic API server code.
```
2018-07-24 02:05:59 -07:00
Kubernetes Submit Queue
6764a79586 Merge pull request #66518 from deads2k/dynamic-02-ordie
Automatic merge from submit-queue (batch tested with PRs 66252, 66518). 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 missing OrDie variant for dynamic client construction

Generated clients have it and it is very handy for test cases.

```release-note
NONE
```

@kubernetes/sig-api-machinery-pr-reviews
2018-07-24 00:49:07 -07:00
yue9944882
a6b781935e cleaning up 2018-07-24 15:04:28 +08:00
Antoine Pelisse
623370f603 dry-run: Run generated commands 2018-07-23 14:07:19 -07:00
David Eads
75e28b0dd4 add missing OrDie variant for dynamic client construction 2018-07-23 16:29:35 -04:00
Antoine Pelisse
e99651b34b dry-run: Add DryRunTrue value 2018-07-23 13:15:22 -07:00
Lee Verberne
3acade424f Generated code for ShareProcessNamespace beta 2018-07-23 17:13:59 +02:00
Lee Verberne
85a2f92f5b Promote ShareProcessNamespace to beta 2018-07-23 17:13:59 +02:00
Kubernetes Submit Queue
819604e2ed Merge pull request #65558 from apelisse/dry-run-feature-gate
Automatic merge from submit-queue (batch tested with PRs 66410, 66398, 66061, 66397, 65558). 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>.

dry-run: Create feature-gate flag

Creates a feature gate flag for dry-run. Currently, dry-run query parameter is completely blocking all requests, once the feature is implemented, the flag will allow the parameter to pass if enabled.

cc @jennybuckley @deads2k @liggitt @lavalamp 

**Release note**:

```release-note
NONE
```
2018-07-20 18:51:14 -07:00
Kubernetes Submit Queue
b914542b9c Merge pull request #66264 from joejulian/workaround_for_slow_arm64_math
Automatic merge from submit-queue (batch tested with PRs 66341, 66405, 66403, 66264, 66447). 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>.

extend timeout to workaround slow arm64 math

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

The math/big functions are slow on arm64. There is improvement coming
with go1.11 but until such time as that version can be used to build releases, 
if a server uses rsa certificates on arm64, the math load for the multitude
of watches over-taxes the ability of the processor and the TLS connections
time out. Retries will also not succeed and serve to exacerbate the problem.

By extending the timeout, the TLS connections will eventually be
successful and the load will drop.

**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 #64649

**Special notes for your reviewer**:
This was tested on a Raspberry Pi 3

**Release note**:
```release-note
Extend TLS timeouts to work around slow arm64 math/big
```
2018-07-20 16:02:14 -07:00
Kubernetes Submit Queue
267dd6b6a2 Merge pull request #66403 from deads2k/api-03-panic-track
Automatic merge from submit-queue (batch tested with PRs 66341, 66405, 66403, 66264, 66447). 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>.

indicate which scheme has conflicting data

An oversight when adding scheme origination to error messages.  There are a couple state dependent panics which are useful to gain info on.

@sttts 
@kubernetes/sig-api-machinery-misc 

```release-note
NONE
```
2018-07-20 16:02:11 -07:00
Kubernetes Submit Queue
6c500be080 Merge pull request #66218 from atlassian/handle-errors
Automatic merge from submit-queue (batch tested with PRs 66152, 66406, 66218, 66278, 65660). 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>.

Handle errors

**What this PR does / why we need it**:
This is a followup PR for https://github.com/kubernetes/kubernetes/pull/64664 to handle errors returned from `.AddToScheme()` in places where they are not handled.

**Release note**:
```release-note
NONE
```
/kind cleanup
/sig api-machinery
/cc @sttts
2018-07-20 12:12:15 -07:00
Antoine Pelisse
9e7b140450 dry-run: Create feature-gate flag 2018-07-20 11:40:06 -07:00
Solly Ross
ef73bb684b Autoset OpenAPI version w/o SecurityDefinitions
There's code to automatically populate OpenAPI info based on existing
generic apiserver config, but it only fires if securitydefinitions are
present.  This doesn't make much sense, since this info is both required
and independent of security definitions, and there's no easy, generic
way to generate security definitions for an aggregated API server.
2018-07-20 10:27:41 -04:00