Commit Graph

602 Commits

Author SHA1 Message Date
Kubernetes Publisher 2c66dfcbee Merge pull request #49195 from huangjiuyuan/fix-typo
Automatic merge from submit-queue

fix typo in staging/src/k8s.io/apiserver/pkg/server/config.go

**What this PR does / why we need it**: Fix a typo `It's members are sorted roughly in order of importance for composers.` in `staging/src/k8s.io/apiserver/pkg/server/config.go`.

**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**:

`NONE`

Kubernetes-commit: 2bd0b3dd2616e5c4a6ef79d08dfb8bc8f5959ced
2017-08-29 13:13:50 +00:00
Kubernetes Publisher 06ea0476f0 Merge pull request #49300 from tklauser/syscall-to-x-sys-unix
Automatic merge from submit-queue

Switch from package syscall to golang.org/x/sys/unix

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

The syscall package is locked down and the comment in https://github.com/golang/go/blob/master/src/syscall/syscall.go#L21-L24 advises to switch code to use the corresponding package from golang.org/x/sys. This PR does so and replaces usage of package syscall with package golang.org/x/sys/unix where applicable. This will also allow to get updates and fixes
without having to use a new go version.

In order to get the latest functionality, golang.org/x/sys/ is re-vendored. This also allows to use Eventfd() from this package instead of calling the eventfd() C function.

**Special notes for your reviewer**:

This follows previous works in other Go projects, see e.g. moby/moby#33399, cilium/cilium#588

**Release note**:

```release-note
NONE
```

Kubernetes-commit: 5d24a2c19923d6da46110b827619f4b21cf689ac
2017-08-29 13:13:50 +00:00
huangjiuyuan c229fe60e4 fix typo in staging/src/k8s.io/apiserver/pkg/server/config.go
Kubernetes-commit: 1382d2f6e8baa2342e2b117b527d4b74d3b539ee
2017-08-29 13:13:50 +00:00
Kubernetes Publisher fa9e59055b Merge pull request #49302 from sttts/sttts-missing-codecs
Automatic merge from submit-queue

Add missing ugorji codecs for auth/v1, settings/v1alphav1 and storage/v1

Kubernetes-commit: f8affc7dcc9e227b5d883d2322105be779d22125
2017-08-29 13:13:07 +00:00
Tobias Klauser 98556d38c2 bump(golang.org/x/sys): 7a4fde3fda8ef580a89dbae8138c26041be14299
Kubernetes-commit: 1fd18181ab38a6d65cda26f53b7e4d95f6009878
2017-08-29 13:13:07 +00:00
Dr. Stefan Schimanski 4f763bd819 Add missing ugorji codecs for auth/v1, settings/v1alphav1 and storage/v1
Kubernetes-commit: 51df7cf59de2a7fbaad61e4a1a13598668028de5
2017-08-29 13:13:07 +00:00
Kubernetes Publisher 29ed962d0a sync: reset Godeps/Godeps.json 2017-08-29 13:13:07 +00:00
Kubernetes Publisher 81d0a552d0 Merge pull request #49972 from deads2k/server-37-log
Automatic merge from submit-queue

remove dead log handler and increase verbosity

We had a handler that no one was using and this bumps the verbosity slightly (2->3) to reduce noise at 2.

Kubernetes-commit: 804ec9457a78f03bbb2c78da94ea163dbff9329f
2017-08-02 20:58:39 -07:00
deads2k 0ee5e1006e remove dead log handler and increase verbosity
Kubernetes-commit: 9e263af7dacafe590cc585f0c37123310a2a9a4f
2017-08-29 13:13:06 +00:00
Kubernetes Publisher e057ae1d55 Merge pull request #49656 from deads2k/server-36-admit-error
Automatic merge from submit-queue (batch tested with PRs 49237, 49656, 49980, 49841, 49899)

make admission tolerate object without objectmeta for errors

Not all object have ObjectMeta (see SARs for instance).  Admission should tolerate this condition without giving meaningless errors.

@derekwaynecarr ptal
@php-coder fyi

Kubernetes-commit: 093883433bb2199654b6341f47e10e7166d22214
2017-08-02 19:11:11 -07:00
deads2k f3aa141adb make admission tolerate object without objectmeta for errors
Kubernetes-commit: 62272a221c5c77cbc2c3e7d0dd56f0064ac2d00c
2017-08-29 13:13:06 +00:00
Kubernetes Publisher 719e9e372f Merge pull request #49412 from bjhaid/etcd_healthz_endpoint
Automatic merge from submit-queue (batch tested with PRs 49989, 49806, 49649, 49412, 49512)

This adds an etcd health check endpoint to kube-apiserver

addressing https://github.com/kubernetes/kubernetes/issues/48215.

**What this PR does / why we need it**:
This ensures kube-apiserver `/healthz` endpoint fails whenever connectivity cannot be established to etcd, also ensures the etcd preflight checks works with unix sockets

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

**Special notes for your reviewer**:
This PR does not use the etcd client directly as the client object is wrapped behind the storage interface and not exposed directly for use, so I decided to reuse what's being done in the preflight. So this will only check fail for connectivity and not etcd auth related problems. I did not write tests for the endpoint because I couldn't find examples that I could follow for writing tests for healthz related endpoints, I'll be willing to write those tests if someone can point me at a relevant one.

**Release note**:
```release-note
Add etcd connectivity endpoint to healthz
```

@deads2k please help review, thanks!

Kubernetes-commit: 22af024093efc75dc2d9f732dbb3f41db945b575
2017-08-02 17:06:02 -07:00
bjhaid 7dfcb9c56f This adds an etcd health check endpoint to kube-apiserver
addressing https://github.com/kubernetes/kubernetes/issues/48215.

Kubernetes-commit: 47d748c5dc989ea46142569bf42636c622fe128a
2017-08-29 13:13:05 +00:00
Kubernetes Publisher c377b37cda Merge pull request #50013 from deads2k/tpr-20-remove-bad-discovery
Automatic merge from submit-queue

cleanup dead installer code

cleans up some installer code that was dead and reorders a little of the flow to reduce complexity.

@kubernetes/sig-api-machinery-misc

Kubernetes-commit: e3c24829591b7a2097fc9cd85f9d109b5d9ca416
2017-08-02 13:35:35 -07:00
Kubernetes Publisher a1940c88e1 Merge pull request #49782 from supereagle/update-generated-deepcopy
Automatic merge from submit-queue (batch tested with PRs 50029, 48517, 49739, 49866, 49782)

Update generated deepcopy code

**What this PR does / why we need it**:
In generated deepcopy code, the method names in comments do not match the real method names.

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

**Special notes for your reviewer**:
/assign @sttts @caesarxuchao

**Release note**:
```release-note
NONE
```

Kubernetes-commit: 84e0326eb1f108f0d7aa2e9e48fb0c4a8edb4bd5
2017-08-29 13:13:05 +00:00
deads2k be2b87fdb8 cleanup dead installer code
Kubernetes-commit: c2874941620c264813b6bfa42913f95fd0cc2317
2017-08-29 13:13:05 +00:00
Kubernetes Publisher 713755562e Merge pull request #48861 from mbohlool/openapi_aggr
Automatic merge from submit-queue (batch tested with PRs 49992, 48861, 49267, 49356, 49886)

Reintegrate aggregation support for OpenAPI

Reintegrating changes of #46734

Changes summary:

- Extracted all OpenAPI specs to new repo `kube-openapi`
- Make OpenAPI spec aggregator to copy and rename any non-requal model (even with documentation change only).
- Load specs when adding APIServices and retry on failure until successful spec retrieval or a 404.
- Assumes all Specs except aggregator's Spec are static
- A re-register of any APIService will result in updating the spec for that service (Suggestion for TPR: they should be registered to aggregator API Server, Open for discussion if any more changes needed for another PR.)

fixes #48548

Kubernetes-commit: 9067d359511890b893794c2e0a93bff88ed7d697
2017-08-29 13:13:04 +00:00
supereagle 2faadf8c85 update generated deepcopy code
Kubernetes-commit: a1c880ece3574a2c7170e0d040489d56dd912e08
2017-08-29 13:13:04 +00:00
mbohlool f26c819f3d Update Bazel
Kubernetes-commit: 1806609596aa05f3ee2d941fd26978451b946383
2017-08-29 13:13:04 +00:00
mbohlool e671fe20d7 Update main repo references to new kube-openapi repo
Kubernetes-commit: 400b77b48f972b1e10854980586559d5852088c7
2017-08-29 13:13:04 +00:00
mbohlool 72a8a7817c Revert "Separate Build and Serving parts of OpenAPI spec handler"
This reverts commit 0a886ffaf8b9de97ef8134a4182b719ba2c6f22f.

Kubernetes-commit: 56fd5853b347e985b4fd02e251ee8da4ae6e35a2
2017-08-29 13:13:04 +00:00
mbohlool 2de4d08b67 Revert "Aggregate OpenAPI specs"
This reverts commit 1a1d9a0394cbdb1d1e2412ae8f0157799eb5329c.

Kubernetes-commit: 88868402b863b1f59a339d3a218bf62c264721ee
2017-08-29 13:13:04 +00:00
Kubernetes Publisher 473678e36a Merge pull request #49992 from liggitt/debug-flake
Automatic merge from submit-queue (batch tested with PRs 49992, 48861, 49267, 49356, 49886)

Correctly handle empty watch event cache

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

Introduced by ada60236f7 which did not adjust the oldest available resourceVersion for an empty watch event cache.

Exposed by 74b9ba3b4d, which allowed controllers to get list results from etcd before the watch cache is ready (normally they list with resourceVersion=0 which serves the list request from the watch cache, blocking until it is ready)

When the watch cache had an empty cache of watch events, it currently allows establishing a watch as if it can deliver a watch event for its currently synced resourceVersion. This results in an off-by-one error which can result in a missed watch event.

Scenario:

bob:
1. creates object at resourceVersion=11

sally:
1. does a list API request, gets a list resourceVersion of 10 (just before bob creates the object)
2. starts watch handled by watch cache at resourceVersion=10

Watch cache:
1. initial list gets resourceVersion=11, including the item created by bob
2. when determining the initial watch events to send to sally's watch, there are no watch events in the cache, so no initial watch events are sent.
3. the cache listerwatcher watches etcd starting at resourceVersion=11, so future events are fed into the event cache and to sally's watch

The watch cache should have dropped sally's watch from resourceVersion=10 with a "gone" error, since it can't deliver the watch event for resourceVersion=11. This would force sally to relist (where she would get a list at resourceVersion=11) and rewatch (from resourceVersion=11)

This particularly affects tests that create CRD/TPRs and establish watches on the new types as the storage layer's watch cache is also populating for that type.

```release-note
Fix a bug in watch cache sometimes causing missing events after watch cache initialization.
```

Kubernetes-commit: 35c3a51e2cdc555cf5edf2b09f03e7ed17fd3377
2017-08-02 05:15:55 -07:00
Kubernetes Publisher 8fcacc09b4 Merge pull request #49858 from smarterclayton/openapi_perf
Automatic merge from submit-queue (batch tested with PRs 49871, 49422, 49092, 49858, 48999)

bump(github.com/googleapis/gnostic):0c5108395e2de

Pick up performance improvements to OpenAPI serialization.

Fixes #49776

Kubernetes-commit: ba118b408b50da2dd7c76e7f3e5dfa595781bf47
2017-08-29 13:13:03 +00:00
Jordan Liggitt d986f949fd Correctly handle empty watch event cache
Kubernetes-commit: 0df769f54061aaa1796e2ef496265b3711e6826a
2017-08-29 13:13:03 +00:00
Clayton Coleman 0d1444d543 bump(github.com/googleapis/gnostic):0c5108395e2de
Pick up performance improvements to OpenAPI serialization.

Kubernetes-commit: 7a458730d7d3eca8ee66ee6ce299aa978f2f09a4
2017-08-29 13:12:15 +00:00
Kubernetes Publisher d48bd1314b sync: reset Godeps/Godeps.json 2017-08-29 13:12:14 +00:00
Kubernetes Publisher a4f08bb016 sync: remove kubernetes-sha 2017-08-29 13:11:06 +00:00
Kubernetes Publisher 149fc22286 sync: resync vendor folder 2017-08-01 23:57:28 +00:00
Kubernetes Publisher 3668b0db3c sync(k8s.io/kubernetes) 68a32c06b4d69970ac2489ff5177d5703ca604cd 2017-08-01 23:56:39 +00:00
Saksham Sharma fe5fc30248 Add cloudprovidedkms provider support
Kubernetes-commit: 68a32c06b4d69970ac2489ff5177d5703ca604cd
2017-08-01 23:56:38 +00:00
Saksham Sharma 55fe632ce2 Add unit tests for KMS transformer initialization
Kubernetes-commit: b76c63a9f086d978532c5b7ca565cb3ccd90b32e
2017-08-01 23:56:38 +00:00
Saksham Sharma c75b59c1cd Add KMS plugin registry
Kubernetes-commit: 49989439d7dab525d22b73936d533ae736b50491
2017-08-01 23:56:38 +00:00
Kubernetes Publisher 5d751e6c43 sync: resync vendor folder 2017-07-29 13:56:00 +00:00
Kubernetes Publisher e0e84c5c9d sync(k8s.io/kubernetes) 0f6a64453cb78afdc190dd4fee0949ec3f8c5182 2017-07-29 13:55:24 +00:00
Wojciech Tyczynski 741f2c78f4 Don't use cacher if uninitialized
Kubernetes-commit: 74b9ba3b4d7c6f0a116464ac01a5f98b915d4586
2017-07-29 13:55:24 +00:00
Shyam Jeedigunta d156370a82 Add apiserver metric for response sizes split by namespace scope
Kubernetes-commit: 5facb62806a7f5d442bff8f77418b53cd58544f9
2017-07-29 13:55:24 +00:00
Kubernetes Publisher 4269e55801 sync: resync vendor folder 2017-07-28 13:56:57 +00:00
Kubernetes Publisher 1013088fdb sync(k8s.io/kubernetes) e87f809da079164dc1c4792b13b63048b73ee355 2017-07-28 13:56:12 +00:00
Timothy St. Clair bd580877ac Updates godep for etcd-client to 3.1.10.
Kubernetes-commit: a8b2146ef3d024137244a4d7197e344001d7fb58
2017-07-28 13:56:11 +00:00
John Millikin 431caeab63 Use case-insensitive header keys for `--requestheader-group-headers`.
This flag is documented as being case-insensitive, but the code was
doing a case-sensitive map lookup.

Kubernetes-commit: 0acdc0cdb369372e06c202aea162bce04410f643
2017-07-28 13:56:11 +00:00
deads2k 6f848a98cb add reflector metrics
Kubernetes-commit: 151d39682e62b288c247d8174a5f7fb139ee7bd1
2017-07-28 13:56:11 +00:00
Di Xu bb78a51058 update json-patch to fix nil value issue when creating mergepatch
Kubernetes-commit: 8447cee0e0de612703a2fe3c5de0a2345e9bd0c5
2017-07-28 13:56:11 +00:00
Saksham Sharma c51b2a76ca Add benchmarks for envelope transformer
Kubernetes-commit: 449e811ebe3135a35d04afc84c2e9c9481d637fe
2017-07-28 13:56:11 +00:00
Saksham Sharma 8ca16e584a Add unit tests for envelope transformer
Kubernetes-commit: d23a1f135d694ef315f23299f095fd4b85421670
2017-07-28 13:56:11 +00:00
Saksham Sharma 03bcff8111 Implement Envelope encryption Transformer
Kubernetes-commit: 1a92a8aeb3da1df618396f633ec66678ca1ac3a9
2017-07-28 13:56:11 +00:00
mbohlool b6648b369b Fix Operation names for subresources
Kubernetes-commit: 61ba8ca0bc072035a5fd15301854b23eabec1e70
2017-07-28 13:56:11 +00:00
jianglingxia 0167d09496 squash the commits into one
Kubernetes-commit: fa6b60120b5d54b5f9c13b76973283e68d053f8a
2017-07-28 13:56:11 +00:00
deads2k 7f0ff974d5 rate limiting should not affect system masters
Kubernetes-commit: 8a3b4d81e6c3a74fa1afa5fd17d3bf42ba1e856d
2017-07-28 13:56:11 +00:00
Nikhita Raghunath 9e00357e52 fuzzer: remove unreachable code
Kubernetes-commit: 365abedff55108ce9f96b5e186622b91a415cba2
2017-07-28 13:56:11 +00:00