Commit Graph

1867 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
ece4124e17 Merge pull request #45355 from p0lyn0mial/admission_options_spits_out_admission_control
Automatic merge from submit-queue (batch tested with PRs 45408, 45355, 45528)

Admission options spits out admission control

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

This PR adds ApplyTo method to AdmissionOptions struct. The method creates and initialises admission control to the server configuration.

**Release note**:

```
NONE
```
2017-05-16 09:11:54 -07:00
Salvatore Dario Minonne
3c5cb228b9 apiextesions-server integration tests: de-registering and registering 2017-05-16 16:47:18 +02:00
Cosmin Cojocar
682d5ec01f Add client auth plugin for Azure Active Directory
This plugin acquires a fresh access token for apiserver from Azure Active
Directory using the device code flow. The access token is saved in the
configuration in order to be reused for upcomming accesses to appiserver.
In additon the access token is automatically refreshed when expired.
2017-05-16 16:42:30 +02:00
deads2k
f88c7725b4 add mutation cache filter 2017-05-16 10:39:34 -04:00
Kubernetes Submit Queue
278b1e56c2 Merge pull request #45823 from deads2k/tpr-13-selflink
Automatic merge from submit-queue (batch tested with PRs 43696, 45823)

Handle self links on customresources

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

I started from https://github.com/kubernetes/kubernetes/pull/45777 and wrote the code to make it work properly.

@sdminonne  ptal
2017-05-16 06:59:48 -07:00
Kubernetes Submit Queue
294c6362bd Merge pull request #43696 from CaoShuFeng/asgroups
Automatic merge from submit-queue

add --as-group option to cli

The usecase of this change:
When a super user grant some RBAC permissions to a group, he can use
--as--group to test whether the group get the permissions.
Note that now we support as-groups, as-user-extra in kubeconfig file after this change.

**Release note**:

```NONE
```
@liggitt
2017-05-16 06:47:10 -07:00
deads2k
ed1ce003ef support selflink from customresources 2017-05-16 07:57:11 -04:00
Salvatore Dario Minonne
7341b4ff13 apiextension-test: instantiated custom resource self link test 2017-05-16 07:55:31 -04:00
Kubernetes Submit Queue
b996c8b997 Merge pull request #45875 from YuPengZTE/devGetForObject
Automatic merge from submit-queue

fix missing argument for Errorf(%v): format reads arg 1, have only 0 args

Signed-off-by: yupengzte <yu.peng36@zte.com.cn>



**What this PR does / why we need it**:
add the missing code of "len(res.Items)"
**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-05-16 03:15:35 -07:00
Kubernetes Submit Queue
3948a2d6ce Merge pull request #45873 from YuPengZTE/devValidateUpdate
Automatic merge from submit-queue

delete the code after "return"

Signed-off-by: yupengzte <yu.peng36@zte.com.cn>



**What this PR does / why we need it**:
After return, the code is unreachable, delete 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-05-16 01:48:23 -07:00
Kubernetes Submit Queue
a4c4cfe9de Merge pull request #45862 from timstclair/audit-api-internal
Automatic merge from submit-queue

Internal audit API

Forked from https://github.com/kubernetes/kubernetes/pull/45315

I pulled out only the internal audit API types and would like to merge this to unblock the audit implementation work while we figure out the versioned types and code generation.

I will continue to iterate on https://github.com/kubernetes/kubernetes/pull/45315, but lets get this internal type submitted.

/cc @ericchiang @ihmccreery
2017-05-16 00:59:39 -07:00
yupengzte
fd6992c450 missing argument for Errorf(%v): format reads
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-05-16 15:02:54 +08:00
yupengzte
25c2f6211f delete the code after return
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-05-16 14:51:32 +08:00
yupengzte
d69b67f71a delete the useless gv
Signed-off-by: yupengzte <yu.peng36@zte.com.cn>
2017-05-16 13:56:33 +08:00
Kubernetes Submit Queue
7cd32aba17 Merge pull request #45775 from liggitt/mirror-pod-validation
Automatic merge from submit-queue (batch tested with PRs 44337, 45775, 45832, 45574, 45758)

Tighten validation of mirror pod annotations

Tightens validation for pods with a mirror pod annotation:
1. spec.nodeName must be set
2. makes the mirror pod annotation immutable
3. starts validating pod-specific annotations during pod status update

None of these changes affect usage of the mirror pod annotation by kubelets, which only set it on pod creation (verified this is true back to 1.5.x)

the second commit updates the pod validation tests to look for specific error messages (best reviewed ignoring whitespace changes)

This is the validation portion of https://github.com/kubernetes/community/blob/master/contributors/design-proposals/kubelet-authorizer.md and https://github.com/kubernetes/features/issues/279

```release-note
Mirror pods must now indicate the nodeName they are bound to on creation. The mirror pod annotation is now treated as immutable and cannot be added to an existing pod, removed from a pod, or modified.
```
2017-05-15 18:39:13 -07:00
Tim St. Clair
951aa18225 hack/update-bazel.sh 2017-05-15 17:44:42 -07:00
Tim St. Clair
ce2d57802f Internal audit API 2017-05-15 17:03:00 -07:00
mbohlool
103c1bfc1e Update generated files 2017-05-15 15:34:33 -07:00
mbohlool
e2f20a3539 Promote apiregistration from v1alpha1 to v1beta1 2017-05-15 15:34:33 -07:00
p0lyn0mial
7b0950b298 bazel update 2017-05-16 00:18:38 +02:00
Kubernetes Submit Queue
c57c95252b Merge pull request #45822 from deads2k/tpr-12-rename
Automatic merge from submit-queue (batch tested with PRs 45171, 43947, 45788, 45822, 45808)

rename to CustomResourceDefinition

Related to https://github.com/kubernetes/kubernetes/issues/45277

This does a straight rename of `CustomResource` to `CustomResourceDefinition` in response to https://github.com/kubernetes/kubernetes/issues/45277 to avoid confusion.

It'll be a little painful on tests in progress, but it's easier now than later.
2017-05-15 14:24:49 -07:00
Ahmet Alp Balkan
c4fd478958 Autogenerated files
Signed-off-by: Ahmet Alp Balkan <ahmetb@google.com>
2017-05-15 14:18:09 -07:00
Kubernetes Submit Queue
a4307eb7a2 Merge pull request #45600 from nikhiljindal/waitForDel
Automatic merge from submit-queue (batch tested with PRs 41331, 45591, 45600, 45176, 45658)

Updating generic registry to return UID of the deleted resource

Ref https://github.com/kubernetes/kubernetes/issues/42594

cc @kubernetes/sig-api-machinery-pr-reviews @smarterclayton 

```release-note
Updating apiserver to return UID of the deleted resource. Clients can use this UID to verify that the resource was deleted or waiting for finalizers.
```
2017-05-15 13:25:47 -07:00
Kubernetes Submit Queue
f6bcd28cd7 Merge pull request #41331 from dshulyak/import_remotecommand
Automatic merge from submit-queue (batch tested with PRs 41331, 45591, 45600, 45176, 45658)

Move client/unversioned/remotecommand to client-go

Module remotecommand originally part of kubernetes/pkg/client/unversioned was moved
to client-go/tools, and will be used as authoritative in kubectl, e2e and other places.

Module remotecommand relies on util/exec module which was copied to client-go/pkg/util
2017-05-15 13:25:42 -07:00
deads2k
0304ef60a2 rename to CustomResourceDefinition 2017-05-15 11:10:31 -04:00
Clayton Coleman
9a457c2bae generated: Protobuf for v1alpha1 2017-05-15 10:50:49 -04:00
Clayton Coleman
c299a8049c Add Table to meta.k8s.io/v1alpha1
Table is a generic tabular output that can be returned by servers to
enable clients to display data simply.
2017-05-15 10:50:49 -04:00
Clayton Coleman
2413fe15ee Add interface{} to openapi basic types 2017-05-15 10:50:49 -04:00
Kubernetes Submit Queue
958bbaaa44 Merge pull request #45732 from sdminonne/apiextension-test
Automatic merge from submit-queue (batch tested with PRs 45070, 45821, 45732, 45494, 45789)

apiextesions-server integration tests: test multiple registration

**What this PR does / why we need it**:
Add integration test for Multiple registrations XREF: #45511

**Special notes for your reviewer**:
@deads2k my first plan was to submit one single PR for both tests but I'm facing one issue with resources deregistration. Get in touch via slack
2017-05-15 07:49:54 -07:00
Kubernetes Submit Queue
9590b94f7c Merge pull request #45070 from alindeman/container-heap
Automatic merge from submit-queue

Uses container/heap for DelayingQueue

The current implementation of DelayingQueue doesn't perform very well when a large number of items (at random delays) are inserted. The original authors seemed to be aware of this and noted it in a `TODO` comment. This is my attempt at switching the implementation to use a priority queue based on `container/heap`.

Benchmarks from before the change:
```
╰─ go test -bench=. -benchmem | tee /tmp/before.txt
BenchmarkDelayingQueue_AddAfter-8         300000            256824 ns/op             520 B/op          3 allocs/op
PASS
ok      k8s.io/kubernetes/staging/src/k8s.io/client-go/util/workqueue   77.237s
```

After:
```
╰─ go test -bench=. -benchmem | tee /tmp/after.txt
BenchmarkDelayingQueue_AddAfter-8         500000              3519 ns/op             406 B/op          4 allocs/op
PASS
ok      k8s.io/kubernetes/staging/src/k8s.io/client-go/util/workqueue   2.969s
```

Comparison:
```
╰─ benchcmp /tmp/before.txt /tmp/after.txt
benchmark                             old ns/op     new ns/op     delta
BenchmarkDelayingQueue_AddAfter-8     256824        3519          -98.63%

benchmark                             old allocs     new allocs     delta
BenchmarkDelayingQueue_AddAfter-8     3              4              +33.33%

benchmark                             old bytes     new bytes     delta
BenchmarkDelayingQueue_AddAfter-8     520           406           -21.92%
```

I also find the `container/heap`-based code a bit more easy to understand. The implementation of the PriorityQueue is based on the documentation for `container/heap`.

Feedback definitely welcomed. This is one of my first contributions.

```release-note
NONE
```
2017-05-15 07:06:03 -07:00
Dmitry Shulyak
a713604b24 Use streaming constants from pkg/api/v1 instead of pkg/api 2017-05-15 17:00:14 +03:00
Dmitry Shulyak
64d98c2d92 Add remotecommand to client-go/pkg/api visibility rules 2017-05-15 16:28:56 +03:00
Dmitry Shulyak
8574bc564f Add exec module to client-go/util only with required code
client-go/pkt/util was removed in favor of client-go util, which consists
only from CodeExitError and ExitError interface
2017-05-15 16:28:56 +03:00
Dmitry Shulyak
2612e0c78a Move client/unversioned/remotecommand to client-go
Module remotecommand originally part of kubernetes/pkg/client/unversioned was moved
to client-go/tools, and will be used as authoritative in kubectl, e2e and other places.

Module remotecommand relies on util/exec module which will be copied to client-go/pkg/util
2017-05-15 16:28:56 +03:00
Kubernetes Submit Queue
5a1ec9bf6f Merge pull request #45804 from nilebox/nilebox/apiextensions-delegate-handler
Automatic merge from submit-queue

kube-apiextensions-server: Fix potential SEGV with null delegate handler

**What this PR does / why we need it**:
In the kube-apiextensions-server there is a fallback value for `null` delegate to `http.NotFoundHandler()` in handling group and versions discovery, but no fallback for custom resources endpoint.
It leads to SEGV when running with `genericapiserver.EmptyDelegate`.
2017-05-15 06:20:45 -07:00
Salvatore Dario Minonne
992544a30c apiextesions-server integration tests: test multiple registration 2017-05-15 13:50:59 +02:00
nikhiljindal
4c828eeaab Autogenerated swagger changes 2017-05-14 23:11:02 -07:00
nikhiljindal
a1ffc8c487 Autogenerated proto changes 2017-05-14 23:09:47 -07:00
nikhiljindal
44fc88cecd Updating generic registry to return UID while deleting the object 2017-05-14 23:09:47 -07:00
Nail Islamov
0e79b7c91b Fix potential SEGV with null delegate handler 2017-05-15 13:36:51 +10:00
Nikhita Raghunath
738c6f0d3f Add plural name for CustomResources example 2017-05-14 23:13:40 +05:30
p0lyn0mial
8cea69aa98 This PR implements AdmissionOptions.ApplyTo
ApplyTo adds the admission chain to the server configuration the method lazily initializes a generic plugin
that is appended to the list of pluginInitializers.

apiserver.Config will hold an instance of SharedInformerFactory to ensure we only have once instance.
The field will be initialized in apisever.SecureServingOptions
2017-05-14 10:30:19 +02:00
Cao Shufeng
e541defd49 add --as-group option to cli
The usecase of this change:
When a super user grant some RBAC permissions to a group, he can use
--as-group to test whether the group get the permissions.
Note that now we support as-groups, as-user-extra in kubeconfig file
after this change.
2017-05-14 16:21:05 +08:00
Jordan Liggitt
cd3a1187a1 Require nodeName for mirror pods, make mirror pod annotation immutable 2017-05-13 22:34:41 -04:00
Andy Lindeman
dad64459a9 Uses container/heap 2017-05-13 21:21:11 +00:00
Andy Lindeman
21ca6c498a Adds benchmark test 2017-05-13 20:35:35 +00:00
Kubernetes Submit Queue
abaffb243e Merge pull request #45692 from caesarxuchao/limit-client-go-package-import-2
Automatic merge from submit-queue (batch tested with PRs 44748, 45692)

Limiting client go packages visibility, round 3

Continue the work in the merged PR https://github.com/kubernetes/kubernetes/pull/45258

These packages in client-go will be gone after #44065 is fixed:
pkg/api/helper, pkg/api/util, internal version of api groups, API install packages. 

This PR removes the dependency on these packages and add bazel visibility rules to prevent relapse.
2017-05-12 16:04:37 -07:00
Kubernetes Submit Queue
35eba22cc7 Merge pull request #41162 from MrHohn/esipp-ga
Automatic merge from submit-queue (batch tested with PRs 45623, 45241, 45460, 41162)

Promotes Source IP preservation for Virtual IPs from Beta to GA

Fixes #33625. Feature issue: kubernetes/features#27.

Bullet points:
- Declare 2 fields (ExternalTraffic and HealthCheckNodePort) that mirror the ESIPP annotations.
- ESIPP alpha annotations will be ignored.
- Existing ESIPP beta annotations will still be fully supported.
- Allow promoting beta annotations to first class fields or reversely.
- Disallow setting invalid ExternalTraffic and HealthCheckNodePort on services. Default ExternalTraffic field for nodePort or loadBalancer type service to "Global" if not set.

**Release note**:

```release-note
Promotes Source IP preservation for Virtual IPs to GA.

Two api fields are defined correspondingly:
- Service.Spec.ExternalTrafficPolicy <- 'service.beta.kubernetes.io/external-traffic' annotation.
- Service.Spec.HealthCheckNodePort <- 'service.beta.kubernetes.io/healthcheck-nodeport' annotation.
```
2017-05-12 15:00:46 -07:00
Kubernetes Submit Queue
dbcfa96c60 Merge pull request #45460 from nilebox/nilebox-pod-preset-renaming
Automatic merge from submit-queue (batch tested with PRs 45623, 45241, 45460, 41162)

Replacing “Pod Injection Policy” with “Pod Preset” in the code documentation

**What this PR does / why we need it**:
Replacing the leftovers of the old term "Pod Injection Policy" with "Pod Preset" in the code documentation.
2017-05-12 15:00:43 -07:00
Lee Verberne
01c6f898bc Update staging README to reflect multiple repos
This directory no longer contains only client-go
2017-05-12 13:19:50 -07:00