Commit Graph

2013 Commits

Author SHA1 Message Date
hzxuzhonghu b1214e07b3 fix typos
Kubernetes-commit: 5faf31054412520ed199a85405c26fbcac404b5e
2017-12-19 14:06:19 +08:00
hzxuzhonghu ea4a684350 Cacher stopLock should be unlocked
Kubernetes-commit: 42b01beaca349200cc5c8dbf20e70faa7ae2c27a
2017-12-19 11:18:15 +08:00
Wu Qiang 580a800cad Only support unix socket for kms gRPC, also add Version method
Kubernetes-commit: a6368bb04c1100d1dce1c6bf680056882835b395
2017-12-18 09:29:56 +00:00
Kubernetes Publisher 4e9b06a883 Merge pull request #56198 from dixudx/remove_FilterFunc_use_SelectionPredicate
Automatic merge from submit-queue (batch tested with PRs 55977, 56198, 57202, 57254, 57214). 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 FilterFunc and use SelectionPredicate everywhere

**What this PR does / why we need it**:
> // FilterFunc takes an API object and returns true if the object satisfies some requirements.
// TODO: We will remove this type and use SelectionPredicate everywhere.
type FilterFunc func(obj runtime.Object) bool

**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 @liggitt @wojtek-t
**Release note**:

```release-note
None
```

Kubernetes-commit: 402456991fbc85de6066f73eeeacc5e4030ad8d0
2017-12-17 19:49:03 +00:00
Kubernetes Publisher b235ad7a41 Merge pull request #57165 from tallclair/admit-metrics
Automatic merge from submit-queue (batch tested with PRs 56375, 56872, 57053, 57165, 57218). 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 admission metrics tests

Cleanup some typos in the admission metrics tests.

```release-note
NONE
```

Kubernetes-commit: f9cf0072132f3bf4260c36513e88011d85893a4e
2017-12-17 15:48:47 +00:00
Kubernetes Publisher fb9b60f0ad Merge pull request #57142 from nikhita/bump-jsoniter
Automatic merge from submit-queue (batch tested with PRs 57122, 57142, 57016, 56927, 56678). 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>.

bump(13f864): github.com/json-iterator/go: use ConfigCompatibleWithStandardLibrary

Jsoniter in `ConfigFastest` mode does not support escape characters in object keys, whereas `ConfigCompatibleWithStandardLibrary` does.

Fixes kubernetes/kubernetes#56018
Related kubernetes/kubernetes#56055

Benchmark results:

```
BenchmarkDecodeIntoJSON-4                                              	   30000	     48522 ns/op	    3792 B/op	      63 allocs/op
BenchmarkDecodeIntoJSONCodecGenConfigFast-4                            	  100000	     17409 ns/op	    4524 B/op	      96 allocs/op
BenchmarkDecodeIntoJSONCodecGenConfigCompatibleWithStandardLibrary-4   	  100000	     18617 ns/op	    4924 B/op	     121 allocs/op
```

/assign sttts thockin mfojtik

Kubernetes-commit: 135d58b3941fac99ae0426e18cbda266b83ca49e
2017-12-17 07:52:14 +00:00
Kubernetes Publisher 49b8a7ddb3 Merge pull request #57081 from liggitt/content-type-tests
Automatic merge from submit-queue (batch tested with PRs 56828, 55184, 56849, 57081, 56654). 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 tests for accept content-type fallback

Kubernetes-commit: 03a656f2344b945b0e6d1b2c0cb0d252bcc84167
2017-12-17 03:48:42 +00:00
Kubernetes Publisher c6d5f98b20 Merge pull request #56849 from hzxuzhonghu/lifecycle-admission
Automatic merge from submit-queue (batch tested with PRs 56828, 55184, 56849, 57081, 56654). 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 dead code in lifecycle admission

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

Kubernetes-commit: ee2425b1cbc97ea75502819f39c79d52ab886d39
2017-12-17 03:48:09 +00:00
Kubernetes Publisher 88c9c9d9be Merge pull request #55184 from sakshamsharma/envelope-service-to-bytearray
Automatic merge from submit-queue (batch tested with PRs 56828, 55184, 56849, 57081, 56654). 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 envelope.Service to use []byte in place of string.

In accordance to discussion with @lavalamp in [KMS Plugins API design doc](https://docs.google.com/document/d/1S_Wgn-psI0Z7SYGvp-83ePte5oUNMr4244uanGLYUmw/edit?usp=sharing).

Modifies envelope transformer introduced by #49350.

@lavalamp @destijl @kksriram

```release-note
NONE
```

Kubernetes-commit: 8856f6a1cd5e13a2db03732eb2f5fb8a3a976e3e
2017-12-17 03:48:08 +00:00
Kubernetes Publisher 4907e61b0a Merge pull request #56812 from dims/drop-using-cloud-provider-for-setting-host-address
Automatic merge from submit-queue (batch tested with PRs 56250, 56809, 56812, 56792, 56724). 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>.

Drop using cloud provider to set host address feature

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

Follow up to PR #54516, also see notice to -dev@ :
https://groups.google.com/forum/#!topic/kubernetes-dev/2NaxUCSbIw8

**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
kube-apiserver: The external hostname no longer longer use the cloud provider API to select a default. It can be set explicitly using --external-hostname, if needed.
```

Kubernetes-commit: b3cbfed4d80c330f2f49a9fa25501562bafec38d
2017-12-16 19:48:36 +00:00
Kubernetes Publisher cbbf2be019 Merge pull request #55296 from hzxuzhonghu/fix-1
Automatic merge from submit-queue (batch tested with PRs 56161, 56324, 55685, 56409, 55296). 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 typo

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

Kubernetes-commit: 2631039e9fb076c3034b243617810da26b6e6f6a
2017-12-15 15:49:24 +00:00
Kubernetes Publisher b77e344208 Merge pull request #56308 from yuexiao-wang/apiserver-vet
Automatic merge from submit-queue (batch tested with PRs 56308, 54304, 56364, 56388, 55853). 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 wrong number of args in apiserver/pkg

Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>

**What this PR does / why we need it**:
fix wrong number of args in apiserver/pkg

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

Kubernetes-commit: 1a455f6f2da6237dc025557763b2287271735447
2017-12-15 11:49:13 +00:00
Kubernetes Publisher f274fcca88 Merge pull request #56268 from yanxuean/miss-fmt-args
Automatic merge from submit-queue (batch tested with PRs 56217, 56268, 56263, 56328, 56200). 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>.

missing format args in apiserver/pkg/endpoints

Signed-off-by: yanxuean <yan.xuean@zte.com.cn>

**What this PR does / why we need it**:
missing format args in apiserver/pkg/endpoints

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

Kubernetes-commit: 5aa03d978d4647afef55a3d8038cd7b494bc6b11
2017-12-15 07:49:38 +00:00
Tim Allclair e9e963c6d2 Fix admission metrics tests
Kubernetes-commit: cca35ae141544e04cdf9e7c3ace201bc58091c5e
2017-12-13 15:45:24 -08:00
Joe Betz 998d0c9340 Fix build and test errors from etcd 3.2.13 upgrade
Kubernetes-commit: 6a0c69e971a8341149cf2ad45ce0c2d6cc55aa30
2017-12-13 15:12:11 -08:00
Joe Betz e71a428f83 Update staging deps for etcd 3.2.13 version bump
Kubernetes-commit: 71c5f8ab12edd7209deb3ea951a2de9fb9c156bd
2017-12-14 23:15:58 -08:00
Joe Betz f4797f11f5 Fix build and test errors from etcd 3.2.11 upgrade
Kubernetes-commit: 94f2ed6849b27a605a25f49da7f1c79e8c822b07
2017-12-13 15:12:11 -08:00
Joe Betz d918822787 Update staging deps for etcd 3.2.11 version bump
Kubernetes-commit: 9b9057564dca02c42424c4229dd2b6093e4832aa
2017-12-14 23:15:58 -08:00
Nikhita Raghunath 5c8c2314ab update staging godeps
Kubernetes-commit: a75aa0f41c51add6fa02c8bfc9362cfe9a5be8bc
2017-12-14 01:07:31 +05:30
Kubernetes Publisher fd36c51190 Merge pull request #50603 from shiywang/loop
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>.

Fix Content negotiation incorrect when Accept header uses type parame…

Fixes https://github.com/kubernetes/kubernetes/issues/50519
@smarterclayton @liggitt still wip,  I'll add some unit test soon, and simplify the logic

Kubernetes-commit: ee13444144e046a13824b5a92aa11fc16447b0c1
2017-12-12 09:30:55 +00:00
Jordan Liggitt d57da4670b Add tests for accept content-type fallback
Kubernetes-commit: 39721a2811045f93cf05822246ab3098d7d8ea59
2017-12-12 01:52:30 -05:00
Kubernetes Publisher 73f85001b5 Merge pull request #56444 from mikedanese/morebuckets
Automatic merge from submit-queue (batch tested with PRs 55360, 56444, 56687, 56791, 56802). 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>.

certs: add month buckets to expiration metric

7 days isn't enough warning for cert expiration alerting.

#56444

Kubernetes-commit: 3465aa93bf08fa435bd36b658e8839a3984cdd5e
2017-12-07 04:37:34 +00:00
Kubernetes Publisher ec7c680232 Merge pull request #52013 from FengyunPan/autoprobing-external-network
Automatic merge from submit-queue (batch tested with PRs 52013, 56719). 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>.

Support autoprobing floating-network-id for openstack cloud provider

Currently if user doesn't specify floatingnetwork-id and loadbalancer.openstack.org/floating-network-id annotation, openstack cloud provider can't create a external LoadBalancer service.
Actually we can get  floatingnetwork-id automatically.
If we get multiple  floatingnetwork-ids, then ask user to specify one, or we use the  floatingnetwork-id to create floatingip for external LoadBalancer service.

This is a part of #50726

**Special notes for your reviewer**:
/assign @dims

**Release note**:
```release-note
Support autoprobing floating-network-id for openstack cloud provider
```

Kubernetes-commit: 36ea6de4a0fd79b97768b9b58c634140f64fc73d
2017-12-07 04:37:06 +00:00
hzxuzhonghu d14a5efcb8 remove dead code in lifecycle admission
Kubernetes-commit: 22398f8d3c0d71db5869eace174f5721f8499224
2017-12-05 19:40:31 +08:00
Davanum Srinivas 30e6bc192e Drop using cloud provider to set host address feature
As part of the larger plan to drop --cloud-provider and --cloud-config
from kube-apiserver, we need to stop calling Cloud Provider API to
find the external ip address when one is not specified on the command
line.

When ExternalHost is not specified, we check if AdvertiseAddress is
specified and use that, if that is missing then we use os.Hostname().

When testing this feature, found a problem that when ExternalHost
is specified, the port was not added in the generated URL. So fixed
that as well.

Kubernetes-commit: 31332fa84a0928085200ba5a2e35118516ee2c48
2017-12-04 15:06:07 -05:00
Kubernetes Publisher 59486b811f Merge pull request #56638 from crassirostris/audit-webhook-make-configurable
Automatic merge from submit-queue (batch tested with PRs 56790, 56638). 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 audit batch webhook backend configurable

This PR adds an ability to configure key parameters for the most important audit backend at-scale, so that if the default parameters don't fit and audit events are lost/delayed, it's possible to adjust these parameters to fix the problem. In the future those parameters will stay, but will be used to populate the values for the generic buffering backend, both for webhook and log backends.

/cc @kubernetes/sig-auth-pr-reviews @sttts @tallclair @ericchiang

```release-note
Audit webhook batching parameters are now configurable via command-line flags in the apiserver.
```

ref #54551

Kubernetes-commit: 31375e30ba64b8f25499d7271809d0b74a38c37d
2017-12-04 09:53:13 -08:00
Kubernetes Publisher f461eda4a5 Merge pull request #55704 from soltysh/return_real_error
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>.

Return original error instead of negotiation one

**What this PR does / why we need it**:
When the requested type (eg. `text/html`) is not available and we're trying to hit an endpoint to which a user is for unauthorized we'll get 406, instead of 403. The reason for that is that, even if error happens we're trying to match the serializer, which fails and results in swallowing error, instead of returning raw json, for example.

This fix returns raw json for such situations.

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

Kubernetes-commit: 85f0a1ac42daac3fcd6e7a9431c0bcabc3c653a5
2017-12-07 04:36:37 +00:00
Kubernetes Publisher 155248fb28 Merge pull request #52910 from FengyunPan/volume-v3
Automatic merge from submit-queue (batch tested with PRs 56094, 52910, 55953, 56405, 56415). 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>.

Support VolumeV3 for OpenStack cloud Provider

Currently OpenStack supports Cinder v3 API, let Kubernetes support
it too.

Fix #52877

**Release note**:
```release-note
OpenStack cloud provider supports Cinder v3 API.
```

Kubernetes-commit: ba4b07a431a71f93d43cd7d58bcf9938a76fcb62
2017-12-07 04:36:37 +00:00
Kubernetes Publisher 922481fdd4 Merge pull request #56389 from jpbetz/metrics-memory-fix
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>.

Reduce memory footprint of admission metrics

Fix #56061

Remove `SummaryVec` from all but the top level metric and reduce buckets for the histogram from 7 to 5.

For a small test cluster, the `Individual Memory Usage: kube-system kube-apiserver-kubernetes-master` grafana metric suggests showed the memory footprint of apiserver at 655MB before this change and 415MB after, suggesting this accounts for the vast majority of the ~200MB of memory increase found in #56061.

```release-note
None
```

Kubernetes-commit: 02a7c12cbd0dd366eb0f6ab6a1f671943a51d0a8
2017-12-07 04:36:09 +00:00
Kubernetes Publisher 2dd507a878 Merge pull request #49112 from gmarek/eventAPI
Automatic merge from submit-queue (batch tested with PRs 55952, 49112, 55450, 56178, 56151). 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>.

New API group for Events.

Fix kubernetes/features#383

cc @shyamjvs

```release-note
Add events.k8s.io api group with v1beta1 API containing redesigned Event type.
```

Kubernetes-commit: 60c20901911c710491a57eb8b9c48850cdbab054
2017-12-07 04:36:09 +00:00
Kubernetes Publisher 97e1eeb6d9 Merge pull request #55148 from dixudx/controller_defaultGC_DeleteDependents
Automatic merge from submit-queue (batch tested with PRs 52767, 55065, 55148, 56228, 56221). 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>.

change DefaultGarbageCollectionPolicy to DeleteDependents for workloads controllers

**What this PR does / why we need it**:
As part of the apps/v1 GA effort (kubernetes/features#353) for v1.9. For core controllers, like `Deployment`, `DaemonSet`, `ReplicaSet`, and `StatefulSet`, changing the `DefaultGarbageCollectionPolicy` from `OrphanDependents` to `DeleteDependents` will make these objects consistent with the default behavior for all new objects.

For legacy API versions, the `DefaultGarbageCollectionPolicy` remains `OrphanDependents`.

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

**Special notes for your reviewer**:
/cc @enisoc @caesarxuchao @kow3ns
/assign @kubernetes/sig-apps-api-reviews

**Release note**:

```release-note
The default garbage collection policy for Deployment, DaemonSet, StatefulSet, and ReplicaSet has changed from OrphanDependents to DeleteDependents when the deletion is requested through an `apps/v1` endpoint. Clients using older endpoints will be unaffected. This change is only at the REST API level and is independent of the default behavior of particular clients (e.g. this does not affect the default for the kubectl `--cascade` flag).

If you upgrade your client-go libs and use the `AppsV1()` interface, please note that the default garbage collection behavior is changed.
```

Kubernetes-commit: 00b2d95c8665f9680f2c9cffb03cf5a457fdab98
2017-12-07 04:35:40 +00:00
Kubernetes Publisher cfc7b57cf2 Merge pull request #55976 from caesarxuchao/move-mutating-to-last
Automatic merge from submit-queue (batch tested with PRs 51321, 55969, 55039, 56183, 55976). 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>.

Move mutating to run last in the mutating admission plugin chain

ref: kubernetes/features#492

Follow up on #54892. (see https://github.com/kubernetes/kubernetes/pull/54892#discussion_r151333585)

Only the last commit is relevant.

The reasons are:
* Mutating webhooks are dynamic, they can always adjust according to the behavior of compiled-in admission plugins, but not the other-way around.
* We'll document that if user deploys mutating webhooks that over some built-in mutating plugins decision, user needs also to disable the built-in validating plugins, otherwise the cluster might block.

Kubernetes-commit: f8ffbd9d618324750a9f1bd9d0363fcef83786c1
2017-12-07 04:35:39 +00:00
Kubernetes Publisher a5cdb29c3c Merge pull request #51321 from mengqiy/kubectl_apply_openapi
Automatic merge from submit-queue (batch tested with PRs 51321, 55969, 55039, 56183, 55976). 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>.

Kubectl apply and strategic merge patch using openapi

- [x] support openapi in strategic merge patch
- [x] test openapi in strategic merge patch
- [x] kubectl apply use openapi to calculate diff be default. It will fall back to use baked-in types when openapi is not available.
- [x] test openapi in kubectl apply

Fixes: kubernetes/kubectl#55

```release-note
kubectl apply use openapi to calculate diff be default. It will fall back to use baked-in types when openapi is not available.
```

/assign @apelisse

Kubernetes-commit: e412ad5393b8c949474b904616fc411c3aa478a9
2017-12-07 04:35:39 +00:00
Kubernetes Publisher 21f96018e0 Merge pull request #56213 from deads2k/admission-18-validation
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>.

require webhook admission kubeconfigfile to be absolute

Minimal change to enforce absolute file paths when using webhook admission config.

Eventually we should resolve the local file paths relative to the original configuration file, but that requires fairly significant plumbing.

@caesarxuchao @sttts @liggitt

If this is not fixed, then inconsistent, seemingly random file resolution will happen and may pin this API to bad behavior that we will later have to break.

Kubernetes-commit: 65f5c1e8475c26dd503860ddb14356fe83c4e5a5
2017-12-07 04:35:11 +00:00
Kubernetes Publisher bcde3e688c Merge pull request #51498 from NickrenREN/pvc-resize-cinder
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>.

Implement volume resize for cinder

**What this PR does / why we need it**:
resize for cinder
xref: [resize proposal](https://github.com/kubernetes/community/pull/657)

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: xref https://github.com/kubernetes/community/pull/657
Follow up: #49727

**Special notes for your reviewer**:

**Release note**:
```release-note
Implement volume resize for cinder
```

wip, assign to myself first

/assign @NickrenREN

Kubernetes-commit: b18d86d5ccdb77c97425ba7fa451be7f250536d1
2017-12-07 04:35:11 +00:00
Kubernetes Submit Queue e16244b0bc Merge pull request #55812 from deads2k/admission-17-external
Automatic merge from submit-queue (batch tested with PRs 55812, 55752, 55447, 55848, 50984). 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 versioned types for webhook admission config

Versioned webhook admission config type as promised in https://github.com/kubernetes/kubernetes/pull/54414.

@kubernetes/sig-api-machinery-pr-reviews
@ericchiang as promised.  fyi.

```yaml
kind: AdmissionConfiguration
apiVersion: apiserver.k8s.io/v1alpha1
plugins:
- name: GenericAdmissionWebhook
  configuration:
    kind: WebhookAdmission
    apiVersion: apiserver.config.k8s.io/v1alpha1
    kubeConfigFile: /path/to/my/file
```

`ADMISSION_CONTROL_CONFIG_FILE=../foo.yaml hack/local-up-cluster.sh`

Kubernetes-commit: 25ebf875b4235cb8f43be2aec699d62e78339cec
2017-12-07 04:34:43 +00:00
Kubernetes Publisher ef87d82097 Merge pull request #56004 from caesarxuchao/admission-v1beta1
Automatic merge from submit-queue (batch tested with PRs 56128, 56004, 56083, 55833, 56042). 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>.

Graduate the admission and admissionregistration (webhook part) API to v1beta1

ref: kubernetes/features#492

Most changes are mechanical. Please take a look at the commit message to see if the commit is worth reviewing.

```release-note
Action required:
The `admission/v1alpha1` API has graduated to `v1beta1`. Please delete your existing webhooks before upgrading the cluster, and update your admission webhooks to use the latest API, because the API has backwards incompatible changes.
The webhook registration related part of the `admissionregistration` API has graduated to `v1beta1`. Please delete your existing configurations before upgrading the cluster, and update your configuration file to use the latest API.
```

Kubernetes-commit: 4cafc5459bf987d2476efd0a4c17158a158887a3
2017-12-07 04:34:42 +00:00
Kubernetes Publisher 3512a43e44 Merge pull request #55859 from hzxuzhonghu/listener-genericapiserver
Automatic merge from submit-queue (batch tested with PRs 56021, 55843, 55088, 56117, 55859). 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>.

apiserver:  pass a listener into genericapiserver bootstrapping

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

>At the moment we pass a port via the options into the config. A zero port does not work because the loopback clients created during apiserver initialization need to know the port before. Passing a listener into the server instead would allow us to use a zero port beforehand and bootstrapping order should be fine.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```

Kubernetes-commit: 5337ff8009d02fad613440912e540bb41e3a88b1
2017-12-07 04:34:15 +00:00
Kubernetes Publisher ea48a9ca18 Merge pull request #55938 from sttts/sttts-compositional-admission-metrics
Automatic merge from submit-queue (batch tested with PRs 55938, 56055, 53385, 55796, 55922). 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>.

admission: make admission metrics compositional

Metrics emission of admission plugins and the admission chain can be implemented compositionally, i.e. completely independently from the chain logic. This PR does that, moves the whole metrics code into a sub-package to contain complexity. The plumbing logic for the emitted metrics finally is cleanly done in the apiserver bootstrapping code, instead of being totally interleaved with the core admission logic.

Ratio:
- considerably less complexity
- admission plugins are compositional, including the chain. We cannot assume that there is only one chain at the outside of the admission plugin structure. Downstream projects might have more complex admission chains, i.e. multiple chain object nested.
- addition of metrics is plumbing and should be in the apiserver plumbing code. This makes it much easier to reason about the security critical admission chain.

Follow-up of #55183 and based on #55919.

Kubernetes-commit: aca386059d753f3014c96ef5240f005d73299ab9
2017-12-07 04:33:47 +00:00
Kubernetes Publisher 0d5eeff30b Merge pull request #54634 from CaoShuFeng/omit_stage
Automatic merge from submit-queue (batch tested with PRs 52322, 54634). 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>.

[advanced audit]add a policy wide omitStage

Related to: https://github.com/kubernetes/kubernetes/issues/54551
For example:
1. only log panic events
```
apiVersion: audit.k8s.io/v1beta1
kind: Policy
omitStages:
  - "RequestReceived"
  - "ResponseStarted"
  - "ResponseComplete"
rules:
  - level: Request
```

2. only log events inRequestReceived stage:
```
apiVersion: audit.k8s.io/v1beta1
kind: Policy
omitStages:
  - "ResponseStarted"
  - "ResponseComplete"
  - "Panic"
rules:
  - level: Request
```

**Release note**:
```
support a policy wide omitStage for advanced audit
```

Kubernetes-commit: 7b9affae660fda1c2e476eeb267c8543ddbab704
2017-12-07 04:33:47 +00:00
Kubernetes Publisher ebd588ca12 Merge pull request #56103 from caesarxuchao/validating-webhook-validator
Automatic merge from submit-queue (batch tested with PRs 54811, 54292, 56103). 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 the validating webhook plugin to implement the ValidatingInterface

ref: kubernetes/features#492

This makes sure the validating admission webhook runs in the validation phase.

Kubernetes-commit: 44f24d219f9d28121eb1f16863312f790e144882
2017-12-07 04:33:46 +00:00
Kubernetes Publisher 7f29011cb8 Merge pull request #55979 from lavalamp/wh-api
Automatic merge from submit-queue (batch tested with PRs 54824, 55911, 55730, 55979, 55961). 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 detail to flag help

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

The admission control flag is impossible to understand.

**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/features/issues/492

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```

Kubernetes-commit: f5b8c15799b5d2b00978353e0eea3146f6f17672
2017-12-07 04:33:46 +00:00
Kubernetes Publisher df0340422b Merge pull request #55790 from sttts/sttts-webhook-initializers
Automatic merge from submit-queue (batch tested with PRs 55963, 55790, 55670, 55931). 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>.

admission/webhook: move webhook initializer into plugin

Follow-up of https://github.com/kubernetes/kubernetes/pull/55132.

Non-generic plugin intitializers should go into the admission plugin itself. No need leak that into the generic apiserver. Keeping them contained in the webhook package makes it easier (it was already possible) for extension apiservers to provide one, but we don't need to leak it into the generic plugin initializer.

Kubernetes-commit: 7fd2b627766613829908fff4785c40f8f013577e
2017-12-07 04:33:45 +00:00
Kubernetes Publisher 3679c01a72 Merge pull request #55963 from sttts/sttts-drop-registrytester-scheme
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>.

apiserver: remove unneeded scheme from registry tester

Follow-up of https://github.com/kubernetes/kubernetes/pull/55622, removing an unused scheme.

Kubernetes-commit: bebb9c9175d808c2a5e856ca0e24ecf151cc1a73
2017-12-07 04:33:45 +00:00
Di Xu acf3570864 forbid unnamed context
Kubernetes-commit: 792a2299362ebadc9ca68c72347884330db23b2a
2017-12-04 14:39:05 +08:00
xuzhonghu 82b64e7264 add admission into RecommendedOption
Kubernetes-commit: 6149df089e2667fefb740e408ece883fd76dd40e
2017-12-01 11:07:28 +08:00
Mik Vyatskov 8977dcee4a Make audit batch webhook backend configurable
Signed-off-by: Mik Vyatskov <vmik@google.com>

Kubernetes-commit: 7e717ef3a6a57d31251ccee94d9e2dd29a70c27b
2017-11-30 18:47:48 +01:00
hzxuzhonghu 0f7253ee99 validate admission-control param
Kubernetes-commit: 64a7c60e00a1f6cf92710415e0e3dee133ebab7c
2017-11-30 14:34:36 +08:00
hzxuzhonghu bcf6d67e1c Update generated files
Kubernetes-commit: 4eb48436eb554a0731ddf5c4831a62151e7aa79e
2017-11-29 23:28:53 +08:00
Dr. Stefan Schimanski 584fe98b64 admission/webhook: fix panic from empty response in mutating webhooks
Kubernetes-commit: 10969e1b8dcb89cc97d591df63be7464cefb454b
2018-02-12 14:58:57 +01:00