Commit Graph

23882 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
fe365b88e3 Merge pull request #49610 from NickrenREN/local-isolation
Automatic merge from submit-queue (batch tested with PRs 50932, 49610, 51312, 51415, 50705)

Add local storage support in Quota

Add local storage(scratch, overlay) support in quota

**Release note**:
```release-note
Add local ephemeral storage support to Quota
```

/cc @ddysher  @jingxu97
2017-08-29 01:17:34 -07:00
Kubernetes Submit Queue
c27cdb11a9 Merge pull request #50932 from yguo0905/stats-cadvisor
Automatic merge from submit-queue (batch tested with PRs 50932, 49610, 51312, 51415, 50705)

Implement StatsProvider interface using cadvisor

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

- This PR changes the `StatsProvider` interface in `pkg/kubelet/server/stats` so that it can provide container stats from either cadvisor or CRI, and the summary API can consume the stats without knowing how they are provided.
- The `StatsProvider` struct in the newly added package `pkg/kubelet/stats` implements part of the `StatsProvider` interface in `pkg/kubelet/server/stats`.
- In `pkg/kubelet/stats`,
    - `stats_provider.go`: implements the node level stats and provides the entry point for this package.
    - `cadvisor_stats_provider.go`: implements the container level stats using cadvisor.
    - `cri_stats_provider.go`: implements the container level stats using CRI.
    - `helper.go`: utility functions shared by the above three components.
- There should be no user visible behaviors change in this PR.
- A follow up PR will implement the StatsProvider interface using CRI.

**Release note**:
```
None
```

/assign @yujuhong 
/assign @WIZARD-CXY
2017-08-29 01:17:29 -07:00
Jan Safranek
195d5c1546 Fix handling of APIserver errors when saving provisioned PVs.
When API server crashes *after* saving a provisioned PV and before sending
200 OK, the controller tries to save the PV again. In this case, it gets
AlreadyExists error, which should be interpreted as success and not as error.

Especially, a volume that corresponds to the PV should not be deleted in the
underlying storage.
2017-08-29 09:47:32 +02:00
Maciej Szulik
2de214b044
Enable batch/v1beta1.CronJobs by default 2017-08-29 09:31:39 +02:00
Saksham Sharma
3e11baf702 Add Google Cloud KMS plugin for encryption 2017-08-29 11:15:27 +05:30
Yu-Ju Hong
f33c37e102 e2e: Add tests for network tiers in GCE 2017-08-28 18:40:20 -07:00
Yu-Ju Hong
22b2da2378 update bazel 2017-08-28 18:40:20 -07:00
Yu-Ju Hong
46eb7d8a55 GCE: Add annotations and helper functions for network tiers
These functions will be consumed in the follow-up changes.
2017-08-28 18:40:20 -07:00
Pengfei Ni
fc8736fd97 Admit NoNewPrivs for remote and rkt runtimes 2017-08-29 08:48:30 +08:00
Cheng Xing
8618e28194 Refactoring for filesystem mock move 2017-08-28 16:17:15 -07:00
Chao Xu
c33de9f204 unify the validation rules on initializer name 2017-08-28 16:17:05 -07:00
Chao Xu
65308d68c5 generated 2017-08-28 15:24:50 -07:00
Chao Xu
b642c9afbb remove failure policy from intializer configuration 2017-08-28 15:24:50 -07:00
Michael Taufen
503a6a8eec Add --append-hash flag to kubectl create configmap/secret
Specifying this new flag will automatically hash the configmap/secret
contents with sha256 and append the first 40 hex-encoded bits of the
hash to the name of the configmap/secret. This is especially useful for
workflows that generate configmaps/secrets from files (e.g.
--from-file).

Note that vowels and vowel-like characters in the hash are remapped to
consonants to make it more difficult to accidentally form bad words.

See this Google doc for more background:
https://docs.google.com/document/d/1x1fJ3pGRx20ujR-Y89HUAw8glUL8-ygaztLkkmQeCdU/edit
2017-08-28 14:17:47 -07:00
Joe Betz
cb764756c6 Add --request-timeout to allow the global request timeout of 60 seconds to be configured. 2017-08-28 13:42:43 -07:00
Bryan Boreham
c193bbc7c2 Make Prometheus cAdvisor metrics labels consistent
Prometheus requires that all metrics in the same family have the same
labels, so we arrange to supply blank strings for missing labels

See https://github.com/google/cadvisor/issues/1704
2017-08-28 19:53:18 +00:00
Kubernetes Submit Queue
7100d00491 Merge pull request #51342 from wongma7/flex-nil
Automatic merge from submit-queue

Set flexvolumeplugin.host so that it's not nil

@TerraTech @MikaelCluseau  @chakri-nelluri @verult

I assume this line was removed inadvertently, without plugin.host set the flexvolume silently fails at Mount/Attach* time. https://github.com/kubernetes/kubernetes/pull/50843

https://github.com/kubernetes/kubernetes/issues/51123

Please review, thanks!

```release-note
NONE
```
2017-08-28 12:07:18 -07:00
Cheng Xing
fde9541c80 Moving filesystem mock to pkg/util, and added some functionality 2017-08-28 11:33:26 -07:00
Matthew Wong
9e37133a1f Generated PV.Spec.MountOptions code 2017-08-28 14:20:48 -04:00
Matthew Wong
0855f6a089 Add MountOptions field to PV spec 2017-08-28 14:18:34 -04:00
Nick Sardo
a48fe406be Consume new config value for network project id 2017-08-28 11:11:05 -07:00
Kubernetes Submit Queue
b8fde17fc2 Merge pull request #48589 from yiqinguo/yiqinguo_add_event
Automatic merge from submit-queue

When faild create pod sandbox record event.

I created pods because of the failure to create a sandbox, but there was no clear message telling me what was the failure, so I wanted to record an event when the sandbox was created.

**Release note**:
```release-note
NONE
```
2017-08-28 10:59:53 -07:00
Kubernetes Submit Queue
c17d70c240 Merge pull request #47044 from kubermatic/kubelet-update-default-labels
Automatic merge from submit-queue

Always check if default labels on node need to be updated in kubelet

**What this PR does / why we need it**:
Nodes join again but maybe OS/Arch/Instance-Type has changed in the meantime.
In this case the kubelet needs to check if the default labels are still correct and if not it needs to update them.

```release-note
Kubelet updates default labels if those are deprecated
```
2017-08-28 08:20:19 -07:00
Jordan Liggitt
658956f063
Feature gate initializers field 2017-08-28 11:11:48 -04:00
zhengjiajin
991238bf6f add long description for --list aware user 2017-08-28 21:56:30 +08:00
Kubernetes Submit Queue
9ccb55e012 Merge pull request #51460 from bskiba/cp
Automatic merge from submit-queue (batch tested with PRs 51441, 51356, 51460)

Autodetect kubemark Cloud Provider

**What this PR does / why we need it**:
This is needed for CloudProviderId to be properly
filled for Hollow Nodes.

**Release note**:
```
NONE
```
2017-08-28 06:41:27 -07:00
Kubernetes Submit Queue
520eab779e Merge pull request #51356 from wongma7/pv-cap-resize
Automatic merge from submit-queue (batch tested with PRs 51441, 51356, 51460)

Don't update pvc.status.capacity if pvc is already Bound

As discussed here https://github.com/kubernetes/community/pull/657#discussion_r128008128, in order for `pvc.status.Capacity < pv.Spec.Capcity` to be the mechanism for volume filesystem* resize, the pv controller should stop updating pvc.status.Capacity every resync period.

/assign @jsafrane
/sig storage
```release-note
NONE
```
2017-08-28 06:41:25 -07:00
Kubernetes Submit Queue
169de991c9 Merge pull request #51441 from wackxu/fixbadcomt
Automatic merge from submit-queue (batch tested with PRs 51441, 51356, 51460)

fix the bad position of code comment

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

The position of code comment is wrong and move it to the right position

**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
```
2017-08-28 06:41:22 -07:00
Kubernetes Submit Queue
2a2f499455 Merge pull request #50036 from wongma7/metrics
Automatic merge from submit-queue

Add volume operation metrics to operation executor and PV controller

This PR implements the proposal for high level volume metrics https://github.com/kubernetes/community/pull/809

**Special notes for your reviewer**:

~Differences from proposal:~ all resolved

~"verify_volume" is now "verify_volumes_are_attached" + "verify_volumes_are_attached_per_node" + "verify_controller_attached_volume." Which of them do we want?~

~There is no "mount_device" metric because the MountVolume operation combines MountDevice and mount (plugin.Setup). Do we want to extract the mount_device metric or is it okay to keep mountvolume as one? For attachable volumes, MountDevice is the actual mount and Setup is a bindmount + setvolumeownership. For unattachable, mountDevice does not occur and Setup is an actual mount + setvolumeownership.~

~PV controller metrics I did not implement following the proposal at all. I did not change goroutinemap nor scheduleOperation. Because provisionClaimOperation does not return an error, so it's impossible for the caller to know if there is actually a failure worth reporting. So I manually create a new metric inside the function according to some conditions.~

@gnufied 

I have tested the operationexecutor metrics but not provision & delete. Sample: 
![screen shot 2017-08-02 at 15 01 08](https://user-images.githubusercontent.com/13111288/28889980-a7093526-7793-11e7-9aa9-ad7158be76fa.png)


**Release note**:

```release-note
Add error count and time-taken metrics for storage operations such as mount and attach, per-volume-plugin.
```
2017-08-28 04:20:49 -07:00
Jan Safranek
1ea7fa84fc AWS: check validity of KSM key before creating a new encrypted disk.
AWS CreateVolume call does not check if referenced encryption key actually
exists and returns a valid new AWS EBS volume even though an invalid key
was specified. Later on it removes the EBS silently when its encryption fails.

To work around this buggy behavior we manually check that the key exists
before calling CreateVolume.
2017-08-28 12:52:57 +02:00
Beata Skiba
59c888f8a4 Autodetect kubemark Cloud Provider
This is needed for CloudProviderId to be properly
filled for Hollow Nodes.
2017-08-28 12:13:53 +02:00
Robert Rati
53856420e8 Replicate the persistent volume label admission plugin in a controller in
the cloud-controller-manager
2017-08-28 03:12:18 -04:00
Kubernetes Submit Queue
3b2417a7f8 Merge pull request #51305 from hzxuzhonghu/validation-fix
Automatic merge from submit-queue (batch tested with PRs 49861, 50933, 51380, 50688, 51305)

fix v1 validation return error

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-27 22:20:57 -07:00
Kubernetes Submit Queue
855f3e78e8 Merge pull request #50688 from allencloud/refactor-code-in-volume-iscsi
Automatic merge from submit-queue (batch tested with PRs 49861, 50933, 51380, 50688, 51305)

refactor codes in volume iscsi to improve readability

Signed-off-by: allencloud <allen.sun@daocloud.io>



**What this PR does / why we need it**:
This PR refactors some codes in pkg/volume/iscsi. What is specific, this PR takes advantage of return fast to make codes indent less. As a result the readability of codes will improve a little bit.

What I did:
1.  refactor codes in volume iscsi to improve readability.
2.  change a keyword of `delete` into `deleteArgs` to reduce ambiguousness.
3.  make some variables camel case. 

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

**Special notes for your reviewer**:
NONE

**Release note**:

```release-note
NONE
```
2017-08-27 22:20:54 -07:00
Kubernetes Submit Queue
d5a811a1c8 Merge pull request #51380 from mtaufen/dkcfg-test-file-load
Automatic merge from submit-queue (batch tested with PRs 49861, 50933, 51380, 50688, 51305)

Test loading Kubelet config from a file

**What this PR does / why we need it**:
Adds a test for loading kubelet config from a file, part of improving https://github.com/kubernetes/kubernetes/issues/50217

**Release note**:
```release-note
NONE
```
2017-08-27 22:20:51 -07:00
Kubernetes Submit Queue
915b772f9b Merge pull request #50933 from mattmoyer/bootstrap-token-groups
Automatic merge from submit-queue (batch tested with PRs 49861, 50933, 51380, 50688, 51305)

Add configurable groups to bootstrap tokens.

**What this PR does / why we need it**:
This change adds support for authenticating bootstrap tokens into a configurable set of extra groups in addition to `system:bootstrappers`. Previously, bootstrap tokens could only ever authenticate to the `system:bootstrappers` group.

Groups are specified as a comma-separated list in the `auth-extra-groups` key of the `bootstrap.kubernetes.io/token` Secret, and must begin with the prefix `system:bootstrapper:` (and match a validation regex that checks against our normal convention). Whether or not any extra groups are configured, `system:bootstrappers` will still be added.

This also adds a `--groups` flag for `kubeadm token create`, which sets the `auth-extra-groups` key on the resulting Secret. The default is to not set the key.

`kubeadm token list` is also updated to include a `EXTRA GROUPS` output column.

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

**Special notes for your reviewer**: 
The use case for this is in https://github.com/kubernetes/kubernetes/issues/49306. Comments on the feature itself are probably better over there. It will be part of how HA/self-hosting kubeadm bootstraps new master nodes (post 1.8).

**Release note**:
```release-note
Add support for configurable groups for bootstrap token authentication.
```

cc @luxas @kubernetes/sig-cluster-lifecycle-api-reviews @kubernetes/sig-auth-api-reviews 

/kind feature
2017-08-27 22:20:48 -07:00
Kubernetes Submit Queue
ecd910ea6c Merge pull request #49861 from krmayankk/disrupt
Automatic merge from submit-queue

simplify disruption controller finder logic

**What this PR does / why we need it**:
Address some comments from https://github.com/kubernetes/kubernetes/pull/45003 and simplify the PDB controller logic as part of issue https://github.com/kubernetes/kubernetes/issues/42284

@enisoc @kargakis @caesarxuchao 

Also it feels like we can get rid of the finders all together since with controller ref, each pod has only controller. Let me know if i should remove that finders all together ?
2017-08-27 21:45:17 -07:00
wackxu
bd6a071345 fix the bad position of code comment 2017-08-28 10:49:05 +08:00
Lucas Käldström
e1cff67aa6
autogenerated code 2017-08-27 18:32:14 +03:00
Kubernetes Submit Queue
2009bbde28 Merge pull request #50953 from zjj2wry/get-pvc
Automatic merge from submit-queue

fix issue(#50937)Fix kubectl get pvc lose volume name

**What this PR does / why we need it**:
closes #50937 
**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**:
this should has volumename column.
```
NAME       STATUS    CAPACITY    ACCESS MODES   STORAGECLASS   AGE
myclaim    Bound     pv-gcepd2   5Gi            ROX            slow      35m
myclaim2   Bound     pv-gcepd    5Gi            ROX            slow      25m
```
**Release note**:

```release-note
NONE
```
2017-08-26 23:02:53 -07:00
allencloud
c8c7139d21 refactor codes in volume iscsi to improve readability
Signed-off-by: allencloud <allen.sun@daocloud.io>
2017-08-27 12:05:21 +08:00
NickrenREN
50c6fa9171 Remove previous local storage resource name 'scratch" and "overlay" 2017-08-27 12:03:31 +08:00
Kubernetes Submit Queue
496e71ef98 Merge pull request #50334 from mtanino/issue/48953
Automatic merge from submit-queue (batch tested with PRs 49849, 50334, 51414)

Support iscsi volume attach and detach

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

Support iSCSI volume attach and detach to enforce RWO access

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

**Special notes for your reviewer**:

**Release note**:

```
NONE
```
2017-08-26 18:09:30 -07:00
Kubernetes Submit Queue
cbe5f38ed2 Merge pull request #49849 from dixudx/stable_sort_volumesInUse
Automatic merge from submit-queue (batch tested with PRs 49849, 50334, 51414)

make volumesInUse sorted in node status updates

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

`volumesInUse` is not sent in a stable sort order. This will make node status patch requests larger than needed, and makes debugging nodes harder than necessary.

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

**Special notes for your reviewer**:

/cc @derekwaynecarr @jboyd01

**Release note**:

```release-note
make volumesInUse sorted in node status updates
```
2017-08-26 18:09:27 -07:00
Kubernetes Submit Queue
036456a892 Merge pull request #51366 from sbezverk/cross_platform_fix
Automatic merge from submit-queue

Fixes cross platform build failure
2017-08-26 14:29:09 -07:00
mtanino
e21b68b4ca Support iscsi volume attach and detach
Fixes #48953
2017-08-26 17:23:47 -04:00
mtanino
5ff9dc0b3b WaitForAttach refactoring for iSCSI attacher/detacher
This change is prerequisite for implementing iSCSI attacher
and detacher.

In order to use chap authentication at iSCSI plugin after
implementing attacher and detacher, secret is needed at
AttachDisk() which is called from WaitForAttach().
To obtain secret, pod information is required, but
WaitForAttach() doesn't pass pod information inside.

This patch adds 'pod' as an argument of WaitForAttach()
and adds changes to drivers who implements WaitForAttach().

Fixes #48953
2017-08-26 17:21:34 -04:00
Kubernetes Submit Queue
217513e27a Merge pull request #45294 from liggitt/proto-slices
Automatic merge from submit-queue

Remove null -> [] slice hack

Closes #44593

When 1.6 added protobuf storage, the storage layer lost the ability to persist slice fields with empty but non-null values.

As a workaround, we tried to convert empty slice fields to `[]`, rather than `null`. Compressing `null` -> `[]` was just as much of an API breakage as `[]` -> `null`, but was hoped to cause fewer problems in clients that don't do null checks.

Because of conversion optimizations around converting lists of objects, the `null` -> `[]` hack was discovered to only apply to individual get requests, not to a list of objects. 1.6 and 1.7 was released with this behavior, and the world didn't explode. 1.7 documented the breaking API change that `null` and `[]` should be considered equivalent, unless otherwise noted on a particular field.

This PR:

* Reverts the earlier attempt (https://github.com/kubernetes/kubernetes/pull/43422) at ensuring non-null json slice output in conversion
* Makes results of `get` consistent with the results of `list` (which helps naive clients that do deepequal comparisons of objects obtained via list/watch and get), and allows empty slice fields to be returned as `null`

```release-note
Protobuf serialization does not distinguish between `[]` and `null`.
API fields previously capable of storing and returning either `[]` and `null` via JSON API requests (for example, the Endpoints `subsets` field) can now store only `null` when created using the protobuf content-type or stored in etcd using protobuf serialization (the default in 1.6+). JSON API clients should tolerate `null` values for such fields, and treat `null` and `[]` as equivalent in meaning unless specifically documented otherwise for a particular field.
```
2017-08-26 13:35:29 -07:00
Michael Taufen
251e8f5f1f Test loading Kubelet config from a file 2017-08-26 12:53:59 -07:00
Kubernetes Submit Queue
4231308582 Merge pull request #51317 from FengyunPan/GetZoneByProviderID-openstack
Automatic merge from submit-queue

Implement GetZoneByProviderID and GetZoneByNodeName for openstack

This is part of #50926
cc @wlan0

**Release note**:
```release-note
NONE
```
2017-08-26 10:09:33 -07:00
Kubernetes Submit Queue
9188043c6e Merge pull request #49599 from tcharding/kubelet_test_mock
Automatic merge from submit-queue (batch tested with PRs 51391, 51338, 51340, 50773, 49599)

Remove duplicate code

This PR cleans up Kubelet test code. Adds a function enabling the removal of duplicate code for Mock chaining. Also adds a function to check the pod status, again enabling removal of duplicate code.

Fixes #22470

**Special notes for your reviewer**:

This is my first PR for the Kubernetes project. Keeping it simple.
2017-08-26 08:49:29 -07:00
Kubernetes Submit Queue
98fb8cacf9 Merge pull request #50773 from huzhengchuan/bug/50770
Automatic merge from submit-queue (batch tested with PRs 51391, 51338, 51340, 50773, 49599)

Delete "hugetlb" from whitelistControllers

**What this PR does / why we need it**:
Delete "hugetlb" from whitelistControllers

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

**Special notes for your reviewer**:

**Release note**:

```
NONE
```
2017-08-26 08:49:26 -07:00
Kubernetes Submit Queue
7579bc835c Merge pull request #51340 from yan234280533/patch-3
Automatic merge from submit-queue (batch tested with PRs 51391, 51338, 51340, 50773, 49599)

add an starting info log of namespace controller.

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

add an starting info log of namespace controller.

**Release note**:
NA
2017-08-26 08:49:23 -07:00
Kubernetes Submit Queue
223227eb59 Merge pull request #51391 from alrs/fix-iscsi-swallowed-error
Automatic merge from submit-queue

Fix swallowed error in iscsi package

**What this PR does / why we need it**: Fixes a swallowed error in the iscsi package.


```release-note NONE
```
2017-08-26 08:23:09 -07:00
Pengfei Ni
d88fe3c0ca run hack/update-bazel.sh 2017-08-26 22:55:49 +08:00
Pengfei Ni
9dd589c035 Use constants instead of magic string for runtime names 2017-08-26 22:44:27 +08:00
Kubernetes Submit Queue
f7eb492f0d Merge pull request #51390 from alrs/fix-photon-pd-swallowed-errors
Automatic merge from submit-queue

Fix swallowed errors in tests of photon_pd package

**What this PR does / why we need it**: Fixes swallowed errors in the tests of the photon_pd package.

```release-note NONE
```
2017-08-26 07:32:24 -07:00
huangjiuyuan
39c61b0967 adding validations on kubelet starting configurations 2017-08-26 22:28:14 +08:00
Serguei Bezverkhi
f2e89886a1 Fixes cross platform build failure
Closes #51358
2017-08-26 09:58:51 -04:00
Kubernetes Submit Queue
84d9778f22 Merge pull request #51388 from alrs/fix-scaleio-swallowed-error
Automatic merge from submit-queue (batch tested with PRs 51174, 51363, 51087, 51382, 51388)

Fix swallowed error in scaleio package tests

**What this PR does / why we need it**: Fixes a dropped error in the tests of the scaleio package.

**Release note**:
```release-note NONE
```
2017-08-26 06:43:36 -07:00
Kubernetes Submit Queue
4b7135513f Merge pull request #51382 from nicksardo/revert-51038-gce-netproj
Automatic merge from submit-queue (batch tested with PRs 51174, 51363, 51087, 51382, 51388)

Revert "GCE: Consume new config value for network project id"

Reverts kubernetes/kubernetes#51038

Broke GKE tests
2017-08-26 06:43:33 -07:00
Kubernetes Submit Queue
27fbb68f18 Merge pull request #51087 from oracle/for/upstream/master/ccm-instance-exists
Automatic merge from submit-queue (batch tested with PRs 51174, 51363, 51087, 51382, 51388)

Add InstanceExistsByProviderID to cloud provider interface for CCM

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

Currently, [`MonitorNode()`](02b520f0a4/pkg/controller/cloud/nodecontroller.go (L240)) in the node controller checks with the CCM if a node still exists by calling `ExternalID(nodeName)`. `ExternalID` is supposed to return the provider id of a node which is not supported on every cloud. This means that any clouds who cannot infer the provider id by the node name from a remote location will never remove nodes that no longer exist. 


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

**Special notes for your reviewer**:

We'll want to create a subsequent issue to track the implementation of these two new methods in the cloud providers.

**Release note**:

```release-note
Adds `InstanceExists` and `InstanceExistsByProviderID` to cloud provider interface for the cloud controller manager
```

/cc @wlan0 @thockin @andrewsykim @luxas @jhorwit2

/area cloudprovider
/sig cluster-lifecycle
2017-08-26 06:43:30 -07:00
Kubernetes Submit Queue
1e5d85a0bb Merge pull request #51174 from caesarxuchao/fix-resourcequota
Automatic merge from submit-queue

Let the quota evaluator handle mutating specs of pod & pvc

### Background
The final goal is to address https://github.com/kubernetes/kubernetes/issues/47837, which aims to allow more mutation for uninitialized objects.

To do that, we [decided](https://github.com/kubernetes/kubernetes/issues/47837#issuecomment-321462433) to let the admission controllers to handle mutation of uninitialized objects.

### Issue
#50399 attempted to fix all admission controllers so that can handle mutating uninitialized objects. It was incomplete. I didn't realize although the resourcequota admission plugin handles the update operation, the underlying evaluator didn't. This PR updated the evaluators to handle updates of uninitialized pods/pvc.

### TODO
We still miss another piece. The [quota replenish controller](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/resourcequota/replenishment_controller.go) uses the sharedinformer, which doesn't observe the deletion of uninitialized pods at the moment. So there is a quota leak if a pod is deleted before it's initialized. It will be addressed with https://github.com/kubernetes/kubernetes/issues/48893.
2017-08-26 06:07:29 -07:00
Kubernetes Submit Queue
d27da4133d Merge pull request #49439 from zhangxiaoyu-zidif/fix-err-message-for-pdb
Automatic merge from submit-queue

fix error message for pdb.go

**What this PR does / why we need it**:
fix error message for pdb.go

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

**Special notes for your reviewer**:
NONE

**Release note**:

```release-note
NONE
```
2017-08-26 03:24:31 -07:00
Kubernetes Submit Queue
c241cbe44d Merge pull request #51173 from liggitt/role-printers
Automatic merge from submit-queue (batch tested with PRs 51054, 51101, 50031, 51296, 51173)

Print multiple node roles, remove kubeadm-specific annotation from kubectl

related to #50010

Follow up to https://github.com/kubernetes/kubernetes/pull/50438 that removes the kubeadm-specific label, makes kubectl role-agnostic, and outputs multiple roles if present
2017-08-26 02:05:39 -07:00
Kubernetes Submit Queue
932e07af53 Merge pull request #50031 from verult/ConnectedProbe
Automatic merge from submit-queue (batch tested with PRs 51054, 51101, 50031, 51296, 51173)

Dynamic Flexvolume plugin discovery, probing with filesystem watch.

**What this PR does / why we need it**: Enables dynamic Flexvolume plugin discovery. This model uses a filesystem watch (fsnotify library), which notifies the system that a probe is necessary only if something changes in the Flexvolume plugin directory.

This PR uses the dependency injection model in https://github.com/kubernetes/kubernetes/pull/49668.

**Release Note**:
```release-note
Dynamic Flexvolume plugin discovery. Flexvolume plugins can now be discovered on the fly rather than only at system initialization time.
```

/sig-storage

/assign @jsafrane @saad-ali 
/cc @bassam @chakri-nelluri @kokhang @liggitt @thockin
2017-08-26 02:05:34 -07:00
Kubernetes Submit Queue
d660a41f36 Merge pull request #51101 from zhangxiaoyu-zidif/refactor-kubelet-kuberuntime-test
Automatic merge from submit-queue (batch tested with PRs 51054, 51101, 50031, 51296, 51173)

Refactor kuberuntime test case with sets.String

**What this PR does / why we need it**:
change to make got and want use sets.String instead, since that is both safe and more clearly shows the intent.

ref: https://github.com/kubernetes/kubernetes/pull/50554

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes https://github.com/kubernetes/kubernetes/issues/51396

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-26 02:05:29 -07:00
NickrenREN
bc393e3f8b Add feature gate for local storage quota 2017-08-26 14:14:26 +08:00
NickrenREN
a3c180e549 Add local storage support in Quota 2017-08-26 14:13:43 +08:00
Di Xu
789a95971d kubectl add global flag --include-uninitialized 2017-08-26 13:52:36 +08:00
Di Xu
884a4b1fa1 update related files due to api change 2017-08-26 13:52:36 +08:00
Di Xu
6b24fe2215 kubectl get show uninitialized resources 2017-08-26 13:52:36 +08:00
Kubernetes Submit Queue
6650bbe0dd Merge pull request #50582 from dixudx/support_fieldSelector_spec.schedulerName
Automatic merge from submit-queue (batch tested with PRs 50889, 51347, 50582, 51297, 51264)

support fieldSelector spec.schedulerName

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

**Special notes for your reviewer**:
/assign @davidopp  @bsalamat
/cc @lavalamp

**Release note**:

```release-note
add fieldSelector spec.schedulerName
```
2017-08-25 22:43:32 -07:00
Kubernetes Submit Queue
ea206bbe29 Merge pull request #51347 from Random-Liu/fix-no-new-privs
Automatic merge from submit-queue (batch tested with PRs 50889, 51347, 50582, 51297, 51264)

Fix NoNewPrivs and also allow remote runtime to provide the support.

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

This PR:
1) Let kubelet admit remote runtime for `NoNewPrivis` container runtime.
2) Fix a `NoNewPrivis` bug which checks wrong runtime type.

/cc @kubernetes/sig-node-bugs @jessfraz
2017-08-25 22:43:28 -07:00
Kubernetes Submit Queue
76c520cea3 Merge pull request #50889 from NickrenREN/local-storage-eviction
Automatic merge from submit-queue (batch tested with PRs 50889, 51347, 50582, 51297, 51264)

Change eviction manager to manage one single local storage resource

**What this PR does / why we need it**:
We decided to manage one single resource name, eviction policy should be modified too.

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

**Special notes for your reviewer**:

**Release note**:
```release-note
Change eviction manager to manage one single local ephemeral storage resource
```

/assign @jingxu97
2017-08-25 22:43:26 -07:00
NickrenREN
194418986f Add local storage to downwards API 2017-08-26 11:58:21 +08:00
Lars Lehtonen
47ee11437d
Fix swallowed error in iscsi package 2017-08-25 20:57:58 -07:00
Kubernetes Submit Queue
c112dbcab4 Merge pull request #51341 from mtaufen/fix-port-disable
Automatic merge from submit-queue (batch tested with PRs 49850, 47782, 50595, 50730, 51341)

fix ReadOnlyPort defaulting, CAdvisorPort documentation

The ReadOnlyPort defaulting prevented passing 0 to diable via
the KubeletConfiguraiton struct.

The HealthzPort defaulting prevented passing 0 to disable via the
KubeletConfiguration struct. The documentation also failed to mention
this, but the check is performed in code.

The CAdvisorPort documentation failed to mention that you can pass 0 to
disable.


fixes #51345
2017-08-25 20:43:40 -07:00
Kubernetes Submit Queue
21aa8cacc5 Merge pull request #50730 from andrewsykim/49836
Automatic merge from submit-queue (batch tested with PRs 49850, 47782, 50595, 50730, 51341)

Cloud Controller Manager now sets Node.Spec.ProviderID

**What this PR does / why we need it**:
Cloud Controller Manager now sets `Node.Spec.ProviderID`.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
https://github.com/kubernetes/kubernetes/issues/49836. 

**Special notes for your reviewer**:
* As part of an effort to move cloud controller manager into beta https://github.com/kubernetes/kubernetes/issues/48690.
2017-08-25 20:43:37 -07:00
Kubernetes Submit Queue
9e69d5b8f0 Merge pull request #50595 from k82cn/k8s_50594
Automatic merge from submit-queue (batch tested with PRs 49850, 47782, 50595, 50730, 51341)

NodeConditionPredicates should return NodeOutOfDisk error.

**What this PR does / why we need it**:
In https://github.com/kubernetes/kubernetes/pull/49932 , I moved node condition check into a predicates; but it return incorrect error :(. 

We also need to add more cases to `TestNodeShouldRunDaemonPod` which is key function of DaemonSet.

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

**Release note**:

```release-note
None
```
2017-08-25 20:43:35 -07:00
Kubernetes Submit Queue
b65f3cc8dd Merge pull request #49850 from m1093782566/service-session-timeout
Automatic merge from submit-queue (batch tested with PRs 49850, 47782, 50595, 50730, 51341)

Paramaterize `stickyMaxAgeMinutes` for service in API

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

Currently I find `stickyMaxAgeMinutes` for a session affinity type service is hard code to 180min. There is a TODO comment, see

https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/iptables/proxier.go#L205

I think the seesion sticky max time varies from service to service and users may not aware of it since it's hard coded in all proxier.go - iptables, userspace and winuserspace.

Once we parameterize it in API, users can set/get the values for their different services.

Perhaps, we can introduce a new field `api.ClientIPAffinityConfig` in `api.ServiceSpec`.

There is an initial discussion about it in sig-network group. See,

https://groups.google.com/forum/#!topic/kubernetes-sig-network/i-LkeHrjs80

**Which issue this PR fixes**: 

fixes #49831

**Special notes for your reviewer**:

**Release note**:

```release-note
Paramaterize session affinity timeout seconds in service API for Client IP based session affinity.
```
2017-08-25 20:43:30 -07:00
Lars Lehtonen
f77dd0ebac
Fix swallowed errors in tests of photon_pd package 2017-08-25 20:37:05 -07:00
Lars Lehtonen
7ee91d6d54
Fix swallowed error in scaleio package tests
Test log improvement
2017-08-25 20:18:44 -07:00
Kubernetes Submit Queue
85f963310e Merge pull request #50504 from yastij/fcVolume-handleFailedMount
Automatic merge from submit-queue (batch tested with PRs 51235, 50819, 51274, 50972, 50504)

handle failed mounts for fc volumes

**What this PR does / why we need it**: handles failed mounts for fc

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

**Special notes for your reviewer**: 

**Release note**:

```release-note
None
```
2017-08-25 19:40:38 -07:00
Kubernetes Submit Queue
c170f5bfa2 Merge pull request #50972 from FengyunPan/external-loadBalancerIP
Automatic merge from submit-queue (batch tested with PRs 51235, 50819, 51274, 50972, 50504)

Support for specifying external LoadBalancerIP on openstack

1. Support ServiceAnnotationLoadBalancerFloatingNetworkId for LB v1

2. Support for specifying external LoadBalancerIP on openstack
    Add ServiceAnnotationLoadBalancerInternal annotation to distinguish
    between internal LoadBalancerIP and external LoadBalancerIP.


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

**Release note**:
```release-note
NONE
```
2017-08-25 19:40:36 -07:00
Kubernetes Submit Queue
9d7bdb6a5f Merge pull request #51274 from yastij/clean-cinder-detachLogError
Automatic merge from submit-queue (batch tested with PRs 51235, 50819, 51274, 50972, 50504)

Clean cinder detachlogerror

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

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-08-25 19:40:32 -07:00
Josh Horwitz
fab6044a31 Allow PSP's to specify a whitelist of allowed paths for host volume
removed files not supposed to be there
2017-08-25 21:35:55 -04:00
Nick Sardo
0d55f6bdcb Revert "GCE: Consume new config value for network project id" 2017-08-25 18:02:10 -07:00
andrewsykim
fd86022714 add deprecation warnings for auto detecting cloud providers 2017-08-25 19:30:52 -04:00
Lantao Liu
a0ae7fac2b Implement stop function in streaming server.
Signed-off-by: Lantao Liu <lantaol@google.com>
2017-08-25 23:24:30 +00:00
Josh Horwitz
cf75c49883 change godoc based on feedback from luxas 2017-08-25 18:04:10 -04:00
Lantao Liu
b760fa95e5 Fix NoNewPrivs and also allow remote runtime to provide the support. 2017-08-25 21:32:33 +00:00
NickrenREN
9730e3d302 Change validation for local ephemeral storage 2017-08-26 05:15:16 +08:00
NickrenREN
27901ad5df Change eviction policy to manage one single local storage resource 2017-08-26 05:14:49 +08:00
Tim Hockin
e73b27cbce Add debugging to the codegen process 2017-08-25 14:08:42 -07:00
Matt Moyer
33e02aff60 Add extra group constants and validation to pkg/bootstrap/api.
This adds constants and validation for a new `auth-extra-groups` key on `bootstrap.kubernetes.io/token` secrets. This key allows a bootstrap token to authenticate to extra groups in addition to the `system:bootstrappers` group.

Extra groups are always applied in addition to the `system:bootstrappers` group, must begin with a `system:bootstrappers:` prefix, are limited in length, and are limited to a restricted set of characters (alphanumeric, colons, and dashes without a trailing colon/dash).
2017-08-25 16:04:53 -05:00
Yassine TIJANI
588fe268dc handle iscsi failed mounts 2017-08-25 22:32:13 +02:00
Josh Horwitz
82a69b2815 refactor method name as per comments 2017-08-25 16:25:19 -04:00
Josh Horwitz
3528ceb27f address test & doc comments 2017-08-25 16:15:55 -04:00
Michael Taufen
6918ab1d70 fix ReadOnlyPort, HealthzPort, CAdvisorPort defaulting/documentation
The ReadOnlyPort defaulting prevented passing 0 to diable via
the KubeletConfiguraiton struct.

The HealthzPort defaulting prevented passing 0 to disable via the
KubeletConfiguration struct. The documentation also failed to mention
this, but the check is performed in code.

The CAdvisorPort documentation failed to mention that you can pass 0 to
disable.
2017-08-25 13:15:36 -07:00
Yang Guo
f9767d2f71 Change StatsProvider interface to provide container stats from either cadvisor or CRI and implement this interface using cadvisor 2017-08-25 13:11:26 -07:00
Lars Lehtonen
d73b3d049d
Unshadow error in registrytest 2017-08-25 12:59:57 -07:00
Kubernetes Submit Queue
08c2071bec Merge pull request #47171 from xilabao/validate-nonResourceURL-in-create-clusterrole
Automatic merge from submit-queue (batch tested with PRs 51038, 50063, 51257, 47171, 51143)

validate nonResourceURL in create clusterrole

**Release note**:

```release-note
NONE
```
2017-08-25 12:31:07 -07:00
Kubernetes Submit Queue
cd908f3e59 Merge pull request #51257 from NickrenREN/validation-bugfix
Automatic merge from submit-queue (batch tested with PRs 51038, 50063, 51257, 47171, 51143)

Fix validation return value

Errors returned by some validation functions may be wrong

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


**Release note**:
```release-note
NONE
```
2017-08-25 12:31:05 -07:00
Kubernetes Submit Queue
c02afa6e39 Merge pull request #51038 from nicksardo/gce-netproj
Automatic merge from submit-queue

GCE: Consume new config value for network project id

This PR will allow users to specify the network's project ID in gce.conf. If it's not specified, it will be filled with `ProjectID`.  This means that `network-project-id` is a required field for building a cluster on a shared VPC network. However, this means the field does not need to be specified for GKE clusters on non-shared networks. 

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

**Special notes for your reviewer**:
/assign @bowei @freehan 

**Release note**:
```release-note
NONE
```
2017-08-25 12:25:50 -07:00
Matthew Wong
19ebaf2870 Don't update pvc.status.capacity if pvc is already Bound 2017-08-25 15:23:25 -04:00
Jordan Liggitt
c7defb806f
Generated files 2017-08-25 15:01:08 -04:00
Cheng Xing
396c3c7c6f Adding dynamic Flexvolume plugin discovery capability, using filesystem watch. 2017-08-25 11:42:32 -07:00
Kubernetes Submit Queue
c19785cfea Merge pull request #49674 from crimsonfaith91/rollout
Automatic merge from submit-queue (batch tested with PRs 50033, 49988, 51132, 49674, 51207)

StatefulSet kubectl rollout command

**What this PR does / why we need it**: This PR implements StatefulSet kubectl rollout command, covering `history`, `status`, and `undo`.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
kubectl rollout `history`, `status`, and `undo` subcommands now support StatefulSets.
```
2017-08-25 11:07:15 -07:00
Kubernetes Submit Queue
fe0c519f49 Merge pull request #51132 from ConnorDoyle/cpuset-helpers
Automatic merge from submit-queue (batch tested with PRs 50033, 49988, 51132, 49674, 51207)

Add cpuset helper library.

Blocker for CPU manager #49186 (1 of 6)

@sjenning @derekwaynecarr 

```release-note
NONE
```
2017-08-25 11:07:12 -07:00
Kubernetes Submit Queue
dfd1ca7728 Merge pull request #49988 from sbezverk/fsgroup_check
Automatic merge from submit-queue (batch tested with PRs 50033, 49988, 51132, 49674, 51207)

Adding fsGroup check before mounting a volume

fsGroup check will be enforcing that if a volume has already been
mounted by one pod and another pod wants to mount it but has a different
fsGroup value, this mount operation will not be allowed.

Closes #45053
2017-08-25 11:07:09 -07:00
Kubernetes Submit Queue
c04e516373 Merge pull request #50033 from cmluciano/cml/addnpcidrselector
Automatic merge from submit-queue (batch tested with PRs 50033, 49988, 51132, 49674, 51207)

Add IPBlock to Network Policy

**What this PR does / why we need it**:
 Add ipBlockRule to NetworkPolicyPeer.

**Which issue this PR fixes**
fixes #49978

**Special notes for your reviewer**:
- I added this directly as a field on the existing API per guidance from API-Machinery/lazy SIG-Network consensus.

Todo:
- [ ] Documentation comments to mention this is beta, unless we want to go straight to GA
- [ ] e2e tests

**Release note**:
```
Support ipBlock in NetworkPolicy
```
2017-08-25 11:07:07 -07:00
Matthew Wong
8b5b2e9927 Set flexvolumeplugin.host so that it's not nil 2017-08-25 13:36:17 -04:00
Kubernetes Submit Queue
cb6f32e8ba Merge pull request #50841 from zjj2wry/kubectl-set-image-ignoring
Automatic merge from submit-queue (batch tested with PRs 50872, 51103, 51220, 51285, 50841)

Fix issue(#49695)kubectl set image deployment is ignoring --selector

**What this PR does / why we need it**:
closes #49695

**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
NONE
```
2017-08-25 10:10:13 -07:00
Kubernetes Submit Queue
256113f7b4 Merge pull request #51103 from jsafrane/exec-scaleio
Automatic merge from submit-queue (batch tested with PRs 50872, 51103, 51220, 51285, 50841)

ScaleIO:  Use VolumeHost.GetExec() to execute stuff in volume plugins

This PR updates ScaleIO volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec` + to use a fresh `mounter` for every `SetUp` / `TearDown` calls, as they may be different each time.

This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

**Special notes for your reviewer**:

* I needed to pass `mount.Exec` interface from the place where it is available down to `SioClient` where it's needed to execute stuff.


@kubernetes/sig-storage-pr-reviews 
/assign @vladimirvivien @rootfs 

**Release note**:
```release-note
NONE
```
2017-08-25 10:10:06 -07:00
devinyan
8ab2110328 add an starting info log of namespace controller. 2017-08-26 00:25:37 +08:00
Yu-Ju Hong
91275d23e2 GCE: Add a fake forwarding rule service
Also add more methods to the address service.
2017-08-25 08:49:11 -07:00
Nick Sardo
0028385e20 Consume new config value for network project id 2017-08-25 08:42:28 -07:00
Antoine Pelisse
332b681bd1 Revert "Revert "Merge pull request #47353 from apelisse/http-cache""
This reverts commit 4ee72eb300.
2017-08-25 08:31:49 -07:00
FengyunPan
79d2b1dd4e Implement GetZoneByProviderID and GetZoneByNodeName for openstack
This is part of #50926
cc @wlan0
2017-08-25 23:08:00 +08:00
Kubernetes Submit Queue
6a3647a7e9 Merge pull request #50155 from lucab85/i18n-Italian
Automatic merge from submit-queue (batch tested with PRs 46986, 51214, 51169, 50155, 51261)

Add Italian translation for kubectl

**What this PR does / why we need it:**
This PR provides first attempt to translate kubectl in Italian (related to #40645, #45573,
#45562, #40591, #46559).

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

**Special notes for your reviewer:**
This PR requires Italian people to assist in the review. I'm native in Italian with BS in Computer Science.

```release-note
Adding Italian translation for kubectl
```
2017-08-25 07:58:11 -07:00
Kubernetes Submit Queue
2b28555c2e Merge pull request #51169 from MikaelCluseau/wip-flexvolume-caps
Automatic merge from submit-queue (batch tested with PRs 46986, 51214, 51169, 50155, 51261)

refactor(flexvolume): simplify capabilities handling

```release-note
Simplify capabilities handling in FlexVolume.
```
2017-08-25 07:58:09 -07:00
Kubernetes Submit Queue
26192e1be7 Merge pull request #51214 from sttts/sttts-cut-off-api-apiserver
Automatic merge from submit-queue (batch tested with PRs 46986, 51214, 51169, 50155, 51261)

admission api: cut off api from k8s.io/apiserver
2017-08-25 07:58:06 -07:00
Kubernetes Submit Queue
d7965e9331 Merge pull request #51197 from deads2k/api-02-field-default
Automatic merge from submit-queue (batch tested with PRs 51114, 51233, 51024, 51053, 51197)

default field selectors

We have a lot of code around field selectors that doesn't add much value. Every gettable resources probably wants name and namespace by default and since they all use metav1 (today), we can assign that as a default. If we think we'll always have metav1 style name and namespace, then this makes a reasonable default and you can always set something different.

This removes cruft and avoids the risk of accidentally forgetting a field selector.  

@kubernetes/sig-api-machinery-misc @smarterclayton
2017-08-25 06:22:20 -07:00
Kubernetes Submit Queue
4a4c194bbd Merge pull request #51024 from fisherxu/UTautoscaler
Automatic merge from submit-queue (batch tested with PRs 51114, 51233, 51024, 51053, 51197)

add UT for pkg/apis/autoscaling/v2alpha1/defaults.go

**What this PR does / why we need it**:
add UT for pkg/apis/autoscaling/v2alpha1/defaults.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**:

```release-note
None
```
2017-08-25 06:22:14 -07:00
Kubernetes Submit Queue
c025965db3 Merge pull request #51233 from bowei/add-alias
Automatic merge from submit-queue (batch tested with PRs 51114, 51233, 51024, 51053, 51197)

Add AddAliasToInstance() to gce cloud provider

- Adds AddAliasToInstance() to the GCE cloud provider.
- Adds field "secondary-range-name" to the gce.conf configuration file.

```release-note
NONE
```
2017-08-25 06:22:12 -07:00
Kubernetes Submit Queue
d3dc9cd9ba Merge pull request #51114 from jsafrane/exec-rbd
Automatic merge from submit-queue (batch tested with PRs 51114, 51233, 51024, 51053, 51197)

rbd: Use VolumeHost.GetExec() to execute stuff in volume plugins

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

This PR updates rbd volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-25 06:22:09 -07:00
Kubernetes Submit Queue
0f3f232b6f Merge pull request #51095 from cofyc/rbd_log
Automatic merge from submit-queue

RBD Plugin: Log RBD Attach/Mount/Unmout actions in addition to Detach

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

Currently, RBD Plugin can log a info message for a successful action of RBD Unmap, e.g.:

```
I0822 09:32:31.595162   15177 rbd_util.go:349] rbd: successfully unmap device /dev/rbd0
```

This PR adds logs for another three important actions: Attach, Mount and Unmount.

Logging these actions and associated info is *very* useful in diagnosing problems.

**Special notes for your reviewer**:

Example RBD Plugin logs of successful pod volume attaching and mounting:

```
I0822 09:30:27.512015   15177 rbd_util.go:148] lock list output "2017-08-22 09:30:27.493889 7fa4ae3c23c0 -1 auth: unable to find a keyring on /etc/ceph/ceph.client.kube.keyring,/etc/ceph/ceph.keyring,/etc/ceph/keyring,/etc/ceph/keyring.bin: (2) No such file or directory\n"
W0822 09:30:27.547513   15177 rbd_util.go:460] rbd: no watchers on kubernetes-dynamic-pvc-83bfd49e-871c-11e7-b88e-000c291fbe71
I0822 09:30:27.704703   15177 rbd_util.go:315] rbd: successfully map image kube/kubernetes-dynamic-pvc-83bfd49e-871c-11e7-b88e-000c291fbe71 to /dev/rbd0
I0822 09:30:27.965603   15177 rbd_util.go:322] rbd: successfully mount image kube/kubernetes-dynamic-pvc-83bfd49e-871c-11e7-b88e-000c291fbe71 at /var/lib/kubelet/plugins/kubernetes.io/rbd/rbd/kube-image-kubernetes-dynamic-pvc-83bfd49e-871c-11e7-b88e-000c291fbe71
```

Example RBD Plugin logs of successful pod volume detaching and unmouting:

```
I0822 09:32:31.380124   15177 rbd_util.go:334] rbd: successfully umount mountpoint /var/lib/kubelet/plugins/kubernetes.io/rbd/rbd/kube-image-kubernetes-dynamic-pvc-83bfd49e-871c-11e7-b88e-000c291fbe71
I0822 09:32:31.459867   15177 rbd_util.go:148] lock list output "2017-08-22 09:32:31.443643 7f2bb8ab53c0 -1 auth: unable to find a keyring on /etc/ceph/ceph.client.kube.keyring,/etc/ceph/ceph.keyring,/etc/ceph/keyring,/etc/ceph/keyring.bin: (2) No such file or directory\nThere is 1 exclusive lock on this image.\nLocker       ID                     Address                    \nclient.64117 kubelet_lock_magic_k8s 192.168.2.128:0/4124042516 \n"
I0822 09:32:31.595162   15177 rbd_util.go:349] rbd: successfully unmap device /dev/rbd0
```

It does not add too much logs, but admins/ops can know what RBD plugin are doing internally and exact time a RBD image is mapped, mounted or unmounted (in addition to unmapped).

**Release note**:

```release-note
NONE
```
2017-08-25 05:00:21 -07:00
zhengjiajin
357db0c39c Add kubectl set env command 2017-08-25 19:53:22 +08:00
Klaus Ma
e4c58a3c02 Added test case for Predicates. 2017-08-25 19:13:41 +08:00
Kubernetes Submit Queue
d7102a0f36 Merge pull request #49770 from FengyunPan/fix-GetInstanceIDFromProviderID
Automatic merge from submit-queue (batch tested with PRs 51244, 50559, 49770, 51194, 50901)

Fix the matching rule of instance ProviderID

Url.Parse() can't parse ProviderID which contains ':///'.
This PR use regexp to match ProviderID.

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

**Release note**:
```release-note
NONE
```
2017-08-25 04:11:10 -07:00
Kubernetes Submit Queue
69187e0651 Merge pull request #51244 from lichuqiang/fix_rollback
Automatic merge from submit-queue (batch tested with PRs 51244, 50559, 49770, 51194, 50901)

fix status in deployment_rollback response

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

fix status in deployment_rollback response

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
#51243
2017-08-25 04:11:05 -07:00
Dr. Stefan Schimanski
8e63473d9e admission api: cut off api from k8s.io/apiserver
This caused an import cycle: api -> apiserver -> api

Fixes https://github.com/kubernetes/kubernetes/issues/51212
2017-08-25 12:29:29 +02:00
m1093782566
ad73fe68a7 auto gen code 2017-08-25 18:28:14 +08:00
Kubernetes Submit Queue
59a63be022 Merge pull request #51213 from humblec/glusterfs-error
Automatic merge from submit-queue (batch tested with PRs 51229, 50131, 51074, 51167, 51213)

Avoid explicit mention of plugin name in error strings.
2017-08-25 03:16:11 -07:00
Kubernetes Submit Queue
7273a46630 Merge pull request #51167 from feiskyer/apparmor-validate
Automatic merge from submit-queue (batch tested with PRs 51229, 50131, 51074, 51167, 51213)

Allow remote runtimes to pass apparmor host validation

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

Allow remote runtimes to pass apparmor host validation.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-25 03:16:09 -07:00
Kubernetes Submit Queue
c358544e83 Merge pull request #51074 from m1093782566/util-port
Automatic merge from submit-queue (batch tested with PRs 51229, 50131, 51074, 51167, 51213)

[proxy] Clean up LocalPort related functions and structures in proxier.go

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

See, https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/iptables/proxier.go#L1694

I think RevertPorts() is independent from iptables, and would be used by other proxiers which needs to hold/close local port.

Perhaps we can move RevertPorts() from proxier.go to pkg/proxy/util package so that it can be consumed among different proxiers. And, reduce codes in proxier.go

**Which issue this PR fixes**:

fixes #51073 

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-25 03:16:06 -07:00
m1093782566
c355a2ac96 Paramaterize stickyMaxAgeMinutes for service in API 2017-08-25 17:44:47 +08:00
Kubernetes Submit Queue
ed6efbc0b5 Merge pull request #49502 from rootfs/cephfs-pv-ns
Automatic merge from submit-queue (batch tested with PRs 50213, 50707, 49502, 51230, 50848)

Refactor CephFS PV spec

**What this PR does / why we need it**:
refactor CephFS Volume Persistent Volume Spec so CephFS PV's SecretRef allows referencing a secret from a persistent volume in any namespace. This allows locating credentials for persistent volumes in namespaces other than the one containing the PVC.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes https://github.com/kubernetes-incubator/external-storage/issues/309

**Special notes for your reviewer**:
@kubernetes/sig-storage-api-reviews 

**Release note**:

```release-note
Allow CephFS PV to specify a namespace for secret
```
2017-08-25 01:10:33 -07:00
Kubernetes Submit Queue
1d5b365ed5 Merge pull request #50213 from zhangxiaoyu-zidif/fix-comment-cronjob-utils
Automatic merge from submit-queue (batch tested with PRs 50213, 50707, 49502, 51230, 50848)

Fix comment of cronjob utils.go

**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 https://github.com/kubernetes/kubernetes/issues/50951

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-25 01:10:28 -07:00
Yassine TIJANI
c02aeb7ec1 handle failed mounts for fc volumes 2017-08-25 09:59:42 +02:00
Kubernetes Submit Queue
0cf928f681 Merge pull request #51222 from yujuhong/fake-addr-svc
Automatic merge from submit-queue (batch tested with PRs 51224, 51191, 51158, 50669, 51222)

Change the FakeCloudAddressService to store Alpha objects internally

The change assumes the compute Alpha object is the superset of the v1
object. By storing the Alpha objects internally in the fake, we can
convert them to Beta and v1 to test different functions.
2017-08-24 22:59:38 -07:00
xiangpengzhao
8719b4a8ea Remove deprecated init-container in annotations 2017-08-25 13:39:29 +08:00
Kubernetes Submit Queue
74f4fda7be Merge pull request #51223 from apelisse/openapi-reference-first-class
Automatic merge from submit-queue (batch tested with PRs 51148, 50816, 49741, 50858, 51223)

openapi: Change references to be first-class

**What this PR does / why we need it**:
References in the openapi are currently completely hidden from the
model, and just passed through as we walk the tree. The problem is that
they can have a different description and more importantly, different
extensions.

Change them to be first-class citizen, and fully part of the model. It
means that visitors have to implement one more function and decide if
something specific should be done with references. Validation is updated
to just completely ignore them and passthrough (like it was done
before).

**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
NONE
```
2017-08-24 21:51:11 -07:00
Kubernetes Submit Queue
909a0984f1 Merge pull request #50858 from andrewsykim/49308
Automatic merge from submit-queue (batch tested with PRs 51148, 50816, 49741, 50858, 51223)

cloudprovider.Zones should support external cloud providers

**What this PR does / why we need it**:
Provides methods in cloudprovider.Zones that allows external cloud providers to set the correct zone labels to nodes. Part of https://github.com/kubernetes/kubernetes/issues/48690

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: 
fixes https://github.com/kubernetes/kubernetes/issues/49308

**Special notes for your reviewer**:
Should help with getting ccm/external cloud providers to beta. 

**Release note**:
```release-note
cloudprovider.Zones should support external cloud providers
```

cc @luxas @wlan0 @thockin
2017-08-24 21:51:08 -07:00
Kubernetes Submit Queue
4f19a8fd2a Merge pull request #49741 from smarterclayton/server_printer
Automatic merge from submit-queue (batch tested with PRs 51148, 50816, 49741, 50858, 51223)

Add tests around TableConvert and server side printing

Also wire in more table printers

@fabianofranz
2017-08-24 21:51:05 -07:00
Kubernetes Submit Queue
ca6348eeb7 Merge pull request #50816 from YuxiJin-tobeyjin/errdefine
Automatic merge from submit-queue (batch tested with PRs 51148, 50816, 49741, 50858, 51223)

Remove redundant err definition

**What this PR does / why we need it**:
Remove redundant err definition,err is defined by using "err :=" at line 107

**Release note**:
NONE
```release-note
```
2017-08-24 21:51:03 -07:00
andrewsykim
2cc3c33a4b Cloud Controller Manager now sets Node.Spec.ProviderID 2017-08-24 23:00:14 -04:00
Kubernetes Submit Queue
657db0eae7 Merge pull request #51258 from dixudx/fix_hostpath_fuzzer
Automatic merge from submit-queue

fix fuzzer for hostpath type that the path can be an empty string

**What this PR does / why we need it**:
It seems the path of `HostPath` generated by fuzzer can be an empty string. This is causing [pull-kubernetes-unit](https://k8s-gubernator.appspot.com/builds/kubernetes-jenkins/pr-logs/directory/pull-kubernetes-unit) failing.

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

**Special notes for your reviewer**:
/assign @thockin @luxas @ixdy 

**Release note**:

```release-note
None
```
2017-08-24 19:05:55 -07:00
hzxuzhonghu
2e0156ad83 fix validation return error 2017-08-25 10:01:21 +08:00
NickrenREN
a975ee1301 Fix validation return value 2017-08-25 09:25:43 +08:00
andrewsykim
bd3cc83110 cloudprovider.Zones should support external cloud providers 2017-08-24 21:05:49 -04:00
Josh Horwitz
2f1ea47c83 Add InstanceExists* methods to cloud provider interface for CCM 2017-08-24 20:41:28 -04:00
Clayton Coleman
8f41db8100
Allow bearer requests to be proxied by kubectl proxy
Use a fake transport to capture changes to the request and then surface
them back to the end user.
2017-08-24 20:16:59 -04:00
crimsonfaith91
ebdbafd2c5 statefulSet kubectl rollout command 2017-08-24 16:43:03 -07:00
Chao Xu
4928c8d1bf let resourcequota evaluator handle uninitialid pod and pvc 2017-08-24 14:50:03 -07:00
Serguei Bezverkhi
1be99dd78e Adding fsGroup check before mounting a volume
fsGroup check will be enforcing that if a volume has already been
mounted by one pod and another pod wants to mount it but has a different
fsGroup value, this mount operation will not be allowed.
2017-08-24 17:33:51 -04:00
Yassine TIJANI
d433ecd6cb cleaning dettach logic since it's not needed 2017-08-24 22:22:58 +02:00
Christopher M. Luciano
02735c3fb2
IPBlock generated code
Signed-off-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2017-08-24 16:20:15 -04:00
Christopher M. Luciano
54a058f792
Add networking fuzzer
Signed-off-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2017-08-24 16:20:13 -04:00
Christopher M. Luciano
b75dc93dd4
Add IPBlock to NetworkPolicy
Signed-off-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2017-08-24 16:20:04 -04:00
Huamin Chen
9f0aad32b0 generated files
Signed-off-by: Huamin Chen <hchen@redhat.com>
2017-08-24 18:59:08 +00:00
Huamin Chen
9e65623187 refactor CephFS PV spec to use SecretReference
Signed-off-by: Huamin Chen <hchen@redhat.com>
2017-08-24 18:49:05 +00:00
Kubernetes Submit Queue
432790df88 Merge pull request #51198 from mattmoyer/rename-experimental-bootstrap-token-auth
Automatic merge from submit-queue (batch tested with PRs 50713, 47660, 51198, 51159, 51195)

kubeapiserver: rename `--experimental-bootstrap-token-auth` to `--enable-bootstrap-token-auth`.

#**What this PR does / why we need it**:
This change renames the API server `--experimental-bootstrap-token-auth` flag to `--enable-bootstrap-token-auth`. The old flag is accepted but generates a warning.

In 1.9, we will drop support for `--experimental-bootstrap-token-auth` entirely.

#### Example of the warning log:
```
$ kube-apiserver --experimental-bootstrap-token-auth --etcd-servers https://127.0.0.1:1234 --service-cluster-ip-range 10.0.1.0/24
Flag --experimental-bootstrap-token-auth has been deprecated, use --enable-bootstrap-token-auth instead.
[...]
```

**Which issue this PR fixes** fixes https://github.com/kubernetes/kubernetes/issues/50613

**Release note**:
```release-note
Renamed the API server flag `--experimental-bootstrap-token-auth` to `--enable-bootstrap-token-auth`. The old value is accepted with a warning in 1.8 and will be removed in 1.9.
```

/sig cli
/sig cluster-lifecycle

cc @luxas
2017-08-24 11:17:09 -07:00
Yecheng Fu
c648505f76 RBD Plugin: Log RBD Attach/Mount/Unmout actions at logging level 3 2017-08-24 15:43:15 +00:00
Huamin Chen
8a38cf1b1b generated files
Signed-off-by: Huamin Chen <hchen@redhat.com>
2017-08-24 14:53:00 +00:00
Huamin Chen
4525446af2 azure file volume: add secret namespace api
Signed-off-by: Huamin Chen <hchen@redhat.com>
2017-08-24 14:49:58 +00:00
Yu-Ju Hong
359fc7a4f4 Change the FakeCloudAddressService to store Alpha objects internally
The change assumes the compute Alpha object is the superset of the v1
object. By storing the Alpha objects internally in the fake, we can
convert them to Beta and v1 to test different functions.
2017-08-24 07:43:29 -07:00
Kubernetes Submit Queue
2c214baefc Merge pull request #51208 from simo5/pshfatal
Automatic merge from submit-queue (batch tested with PRs 47115, 51196, 51204, 51208, 51206)

Add an OrDie version for AddPostStartHook

Simplifies usage and consolidate the error message so it is always
the same everywhere.

```release-note
NONE
```
2017-08-24 07:20:13 -07:00
Kubernetes Submit Queue
9537241702 Merge pull request #47115 from zhangxiaoyu-zidif/add-check-err-for-kubelet
Automatic merge from submit-queue (batch tested with PRs 47115, 51196, 51204, 51208, 51206)

Delete redundant err definition

**What this PR does / why we need it**:
Delete reduandant err definition
Line 307 has err definition and initialization.


**Release note**:

```release-note
NONE
```
2017-08-24 07:20:03 -07:00
Kubernetes Submit Queue
73a6ee1dcc Merge pull request #51146 from mtaufen/remove-crashloop-detection
Automatic merge from submit-queue

Remove crash loop "detection" from the dynamic kubelet config feature

**What this PR does / why we need it**:
The subfeature was a cool idea, but in the end it is very complex to
separate Kubelet restarts into crash-loops caused by config vs.
crash-loops caused by other phenomena, like admin-triggered node restarts,
kernel panics, and and process babysitter behavior. Dynamic kubelet config
will be better off without the potential for false positives here.

Removing this subfeature also simplifies dynamic configuration by
reducing persistent state:
- we no longer need to track bad config in a file
- we no longer need to track kubelet startups in a file

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

**Release note**:

```release-note
NONE
```
2017-08-24 05:34:32 -07:00
Kubernetes Submit Queue
0803d108be Merge pull request #51189 from humblec/iscsi-init-printer
Automatic merge from submit-queue (batch tested with PRs 51193, 51154, 42689, 51189, 51200)

Add initiatorname in iscsi describe printer.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>


```release-note-none
```
2017-08-24 04:38:10 -07:00
Mikaël Cluseau
22d5e4810b refactor(flexvolume): simplify capabilities handling 2017-08-24 22:18:58 +11:00
Kubernetes Submit Queue
5a76d7ab63 Merge pull request #50539 from brendandburns/svc
Automatic merge from submit-queue (batch tested with PRs 51108, 51035, 50539, 51160, 50947)

Delete load balancers if the UIDs for services don't match.

An attempt to fix https://github.com/kubernetes/kubernetes/issues/43730

@thockin @djsly
2017-08-24 02:32:09 -07:00
Kubernetes Submit Queue
737ded5aeb Merge pull request #51035 from mrogers950/sa-desc-event
Automatic merge from submit-queue (batch tested with PRs 51108, 51035, 50539, 51160, 50947)

Show events when describing service accounts

**What this PR does / why we need it**:
Any events associated with service accounts should appear in the describe output.

**Which issue this PR fixes**:

**Special notes for your reviewer**:

**Release note**:

```release-note
Show events when describing service accounts
```
2017-08-24 02:32:06 -07:00
Kubernetes Submit Queue
915371cfdc Merge pull request #51108 from jsafrane/exec-iscsi
Automatic merge from submit-queue (batch tested with PRs 51108, 51035, 50539, 51160, 50947)

iscsi: Use VolumeHost.GetExec() to execute stuff in volume plugins

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

This PR updates iSCSI volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

**Release note**:
```release-note
NONE
```
2017-08-24 02:32:04 -07:00
Di Xu
2fd25b6796 fix fuzzer for hostpath type that the path can be an empty string 2017-08-24 17:24:04 +08:00
lichuqiang
d5a937dc20 fix status in deployment_rollback response 2017-08-24 17:09:00 +08:00
Kubernetes Submit Queue
c041567b5a Merge pull request #46597 from dixudx/implement_proposal_34058
Automatic merge from submit-queue (batch tested with PRs 51113, 46597, 50397, 51052, 51166)

implement proposal 34058: hostPath volume type

**What this PR does / why we need it**:
implement proposal #34058

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

**Special notes for your reviewer**:
cc @thockin @luxas @euank PTAL
2017-08-23 23:16:27 -07:00
Bowei Du
1f4dc5559d Add AddAliasToInstance() to gce cloud provider
- Adds AddAliasToInstance() to the GCE cloud provider.
- Adds field "secondary-range-name" to the gce.conf configuration file.

```release-note
NONE
```
2017-08-23 23:10:20 -07:00
Kubernetes Submit Queue
3f78723427 Merge pull request #51113 from jsafrane/exec-quobyte
Automatic merge from submit-queue

quobyte: Use VolumeHost.GetExec() to execute stuff in volume plugins

**What this PR does / why we need it**:
This PR updates ~~nfs~~ quobyte volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-23 23:03:47 -07:00
Kubernetes Submit Queue
ef1b835220 Merge pull request #50646 from rickypai/rpai/hostalias_hostnetwork
Automatic merge from submit-queue

Support HostAlias for HostNetwork Pods

**What this PR does / why we need it**: Currently, HostAlias does not support HostNetwork pods because historically, kubelet only manages hosts file for non-HostNetwork pods. With the recent change in https://github.com/kubernetes/kubernetes/pull/49140, kubelet now manages hosts file for all Pods, which enables HostAlias support also.

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

**Special notes for your reviewer**: might be easier to review commit-by-commit

**Release note**:

```release-note
HostAlias is now supported for both non-HostNetwork Pods and HostNetwork Pods.
```

@yujuhong @hongchaodeng @thockin
2017-08-23 22:06:27 -07:00
Kubernetes Submit Queue
5cb1cccd40 Merge pull request #51138 from yujuhong/alpha-calls
Automatic merge from submit-queue

GCE: Add functions for Alpha address and forwarding rules
2017-08-23 21:17:07 -07:00
m1093782566
a7fd545d49 clean up LocalPort in proxier.go 2017-08-24 11:16:38 +08:00
Kubernetes Submit Queue
c23e5b604e Merge pull request #51022 from wackxu/fixcodeanno
Automatic merge from submit-queue (batch tested with PRs 50489, 51070, 51011, 51022, 51141)

Fixed code comments that were not updated

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

The comment of the args ‘KubeReserved’ is out of date and there is no consistent  with command line messages

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


**Release note**:

```
NONE
```
2017-08-23 19:54:30 -07:00
Kubernetes Submit Queue
9b8cb7510a Merge pull request #51070 from NickrenREN/ephemeral-storage-name
Automatic merge from submit-queue (batch tested with PRs 50489, 51070, 51011, 51022, 51141)

Add ephemeral local storage resource name first

Since finally decided the ephemeral local storage resource name, send this PR to add the resource name first, and then i will rebase all my PRs about local storage isolation

**Special notes for your reviewer**:
related to: #50818 

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

/assign @jingxu97
2017-08-23 19:54:25 -07:00
Kubernetes Submit Queue
aef39e6f47 Merge pull request #50489 from yujunzhang/Fix-the-typo-of-WithAnonymous
Automatic merge from submit-queue (batch tested with PRs 50489, 51070, 51011, 51022, 51141)

Fix the method name of BuiltInAuthenticationOptions.WithAnyonymous

change the BuiltInAuthenticationOptions.WithAnyonymous to
WithAnonymous would be better.



**What this PR does / why we need it**:
The BuiltInAuthenticationOptions.WithAnyonymous method name should be a meaningful name of  WithAnonymous

**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
None
```
2017-08-23 19:54:22 -07:00
Lars Lehtonen
a011a6d41e
Fix swallowed error in registrytest 2017-08-23 19:19:42 -07:00
Pengfei Ni
15b9871d50 Allow remote runtimes to pass apparmor host validation 2017-08-24 09:18:46 +08:00
Kubernetes Submit Queue
83e9cadc02 Merge pull request #50578 from pwittrock/depsutils
Automatic merge from submit-queue (batch tested with PRs 51047, 48573, 50764, 51092, 50578)

Library updates to better support removing kubectl deps on kubernetes/kubernetes

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

**Which issue this PR fixes**: kubernetes/kubectl#50

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-23 17:56:20 -07:00
Kubernetes Submit Queue
55c601b5d8 Merge pull request #51092 from humblec/gluster-validation
Automatic merge from submit-queue (batch tested with PRs 51047, 48573, 50764, 51092, 50578)

Replace validateGlusterfs() with validateGlusterfsVolumeSource() for consistency.
2017-08-23 17:56:17 -07:00
Kubernetes Submit Queue
6bb928a3df Merge pull request #50931 from jrperritt/fix-pool-panic
Automatic merge from submit-queue

cloudprovider/openstack bug fix: don't try to append pool id if pool doesn't exist

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

This fixes a bug in the OpenStack cloud provider that could cause a panic.

Consider what will happen in the current `LbaasV2.EnsureLoadBalancerDeleted` code if `nil, ErrNotFound` is returned by `getPoolByListenerID`.
2017-08-23 16:23:29 -07:00
Kubernetes Submit Queue
b973d65ccc Merge pull request #51211 from bgrant0607/api-approver
Automatic merge from submit-queue

Add liggitt as an API approver. 

@liggitt has been on the project since 2014, was a key participant of the evolution of the v1beta3 and v1 APIs, has performed many API reviews, has helped to develop the API conventions (most recently with the added guidance regarding alpha fields), and has demonstrated attention to detail and good taste. His efforts have helped keep the API sane and consistent.

Also note that bgrant0607 is an approver, but shouldn't be auto-assigned.

cc @kubernetes/api-approvers 

**Release note**:
```release-note
NONE
```
2017-08-23 14:32:39 -07:00
Kubernetes Submit Queue
b75d423979 Merge pull request #51066 from vmware/MultiAttachVolumeIssueVsphere
Automatic merge from submit-queue

Allow attach of volumes to multiple nodes for vSphere

This is a fix for issue #50944 which doesn't allow a volume to be attached to a new node after the node is powered off where the volume was previously attached.

Current behaviour:
One of the cluster worker nodes was powered off in vCenter.
Pods running on this node have been rescheduled on different nodes but got stuck in ContainerCreating. It failed to attach the volume on the new node with error "Multi-Attach error for volume pvc-xxx, Volume is already exclusively attached to one node and can't be attached to another" and hence the application running in the pod has no data available because the volume is not attached to the new node. Since the volume is still attached to powered off node, any attempt to attach the volume on the new node failed with error "Multi-Attach error". It's stuck for 6 minutes until attach/detach controller forcefully tried to detach the volume on the powered off node. After the end of 6 minutes when volume is detached on powered off node, the volume is now successfully attached on the new node and application has now the data available.

What is expected to happen:
I would want the attach/detach controller to go ahead with the attach of the volume on new node where the pod got provisioned instead of waiting for the volume to be detached on the powered off node. It is ok to eventually delete the volume on the powered off node after 6 minutes. This way the application downtime is low and pods are up as soon as possible.

The current fix ignore, vSphere volumes/persistent volume to check for multi-attach scenario in attach/detach controller.

@jingxu97 @saad-ali : Can you please take a look at it.

@tusharnt @divyenpatel @rohitjogvmw @luomiao 

```release-note
Allow attach of volumes to multiple nodes for vSphere
```
2017-08-23 14:32:31 -07:00
Antoine Pelisse
5ef3516780 openapi: Change reference to be first-class
References in the openapi are currently completely hidden from the
model, and just passed through as we walk the tree. The problem is that
they can have a different description and more importantly, different
extensions.

Change them to be first-class citizen, and fully part of the model. It
means that visitors have to implement one more function and decide if
something specific should be done with references. Validation is updated
to just completely ignore them and passthrough (like it was done
before).
2017-08-23 14:11:16 -07:00
Simo Sorce
15c54ffa77 Add an OrDie version for AddPostStartHook
Simplifies usage and consolidate the error message so it is always
the same everywhere.

Signed-off-by: Simo Sorce <simo@redhat.com>
2017-08-23 16:08:27 -04:00
Brian Grant
4c34358c5e Add liggitt as an API approver. Note that bgrant0607 is an approver, but
shouldn't be auto-assigned.
2017-08-23 11:32:05 -07:00
Matthew Wong
3ed34183d0 Add volume operation metrics to operation executor and PV controller 2017-08-23 14:27:47 -04:00
Humble Chirammal
19f8bde90b Avoid explicit mention of plugin name in error strings.
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2017-08-23 23:45:10 +05:30
Matt Moyer
9dad15e220 kubeapiserver: rename --experimental-bootstrap-token-auth to --enable-bootstrap-token-auth.
This change renames the `--experimental-bootstrap-token-auth` flag to `--enable-bootstrap-token-auth`. The old flag is accepted but generates a warning.

In 1.9, we will drop support for `--experimental-bootstrap-token-auth` entirely.
2017-08-23 11:04:54 -05:00
Kubernetes Submit Queue
2f00e6d72c Merge pull request #51116 from huzhengchuan/fix_comment_cm
Automatic merge from submit-queue (batch tested with PRs 38947, 50239, 51115, 51094, 51116)

Fix comment and typos in node_controller

**What this PR does / why we need it**: 
1. fix comment to more accurately
2. fix typos


**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
```
2017-08-23 08:41:13 -07:00
Kubernetes Submit Queue
4ec38dce7e Merge pull request #51115 from jsafrane/exec-storageos
Automatic merge from submit-queue (batch tested with PRs 38947, 50239, 51115, 51094, 51116)

StorageOS: Use VolumeHost.GetExec() to execute stuff in volume plugins

Use VolumeHost.GetExec() to execute stuff in volume plugins

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

This PR updates StorageOS volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-23 08:41:06 -07:00
Kubernetes Submit Queue
012e94b6be Merge pull request #50239 from FengyunPan/fix-no-exist-node
Automatic merge from submit-queue (batch tested with PRs 38947, 50239, 51115, 51094, 51116)

Mark the volumes as detached when node does not exist

If node does not exist, node's volumes will be detached
automatically and become available. So mark them detached and do not return err.

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

**Release note**:
```release-note
NONE
```
2017-08-23 08:41:04 -07:00
Kubernetes Submit Queue
7df5c63218 Merge pull request #38947 from xiangpengzhao/fix-testcase-errorf
Automatic merge from submit-queue (batch tested with PRs 38947, 50239, 51115, 51094, 51116)

Call Fatalf instead of Errorf when mounter/unmounter is nil in volume tests

If we get a nil mounter or unmounter, a panic will occur. Should call `Fatalf` instead of `Errorf`.
2017-08-23 08:41:01 -07:00
David Eads
9daf55e173 remove unnecessary field conversions 2017-08-23 10:52:22 -04:00
Jordan Liggitt
10687447cb
Print multiple node roles, remove kubeadm-specific annotation from kubectl 2017-08-23 09:34:41 -04:00
Jan Safranek
bc6ad1ad9f iscsi: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-23 14:56:51 +02:00
Kubernetes Submit Queue
6a4203eb4b Merge pull request #51107 from jsafrane/exec-gluster
Automatic merge from submit-queue (batch tested with PRs 51105, 51097, 51110, 50843, 51107)

gluster: Use VolumeHost.GetExec() to execute stuff in volume plugins

**What this PR does / why we need it**:
This PR updates GlusterFS volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

**Special notes for your reviewer**:

There are two commits:
* The first one removes unused `plugin.execCommand` (so we don't need to update it to `VolumeHost.GetExec`)
* The second one does the `VolumeHost.GetExec` trick described above.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-23 05:51:31 -07:00
Kubernetes Submit Queue
4fb6c2891c Merge pull request #50843 from TerraTech/fvs-selinuxRelabel-init-1.8.x
Automatic merge from submit-queue (batch tested with PRs 51105, 51097, 51110, 50843, 51107)

FlexVolume: Add ability to control 'SupportsSELinux' during driver's init phase

**What this PR does / why we need it**:
Adds the ability to disable FlexVolume SELinux relabeling for filesystems that don't support it, e.g. fuse

**Which issue this PR fixes**:
This was reported in: https://github.com/lizardfs/lizardfs/issues/581

This is a reworked solution as per feedback from #50548 
https://github.com/kubernetes/kubernetes/pull/50548#issuecomment-322328679

**Special notes for your reviewer**:
/assign @thockin 
/cc @chakri-nelluri @verult @saad-ali 

**Release note**:

```release-note
NONE
```
2017-08-23 05:51:28 -07:00
Kubernetes Submit Queue
fd31c3a5cf Merge pull request #51110 from jsafrane/exec-nfs
Automatic merge from submit-queue (batch tested with PRs 51105, 51097, 51110, 50843, 51107)

nfs: Use VolumeHost.GetExec() to execute stuff in volume plugins

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

This PR updates nfs volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where the utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-23 05:51:25 -07:00
Kubernetes Submit Queue
57b1ea8b1c Merge pull request #51097 from jsafrane/exec-azure
Automatic merge from submit-queue (batch tested with PRs 51105, 51097, 51110, 50843, 51107)

azure: Use VolumeHost.GetExec() to execute stuff in volume plugins

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

This PR updates Azure volume plugin to use `VolumeHost.GetExec()` to execute utilities like mkfs and lsblk instead of simple `os/exec`. This prepares the volume plugin to run these utilities in containers instead of running them on the host + makes the volume plugin more independent and less hardcoded.

See proposal in https://github.com/kubernetes/community/pull/589.

Note that this PR does **not** change place where utilities are executed - `VolumeHost.GetExec()` still leads directly to `os/exec`. It will be changed when the aforementioned proposal is merged and implemented.

To simplify testing, `/sys/bus/scsi/devices/*/model` and `.../vendor` are read using `ioutil.ReadFile` instead of `/bin/cat` in the first commit.

```release-note
NONE
```

@kubernetes/sig-storage-pr-reviews @kubernetes/sig-azure-misc
2017-08-23 05:51:21 -07:00
Kubernetes Submit Queue
ac2d24b46e Merge pull request #51105 from jsafrane/exec-fc
Automatic merge from submit-queue (batch tested with PRs 51105, 51097, 51110, 50843, 51107)

fibre channel: Remove unused exe interface

**What this PR does / why we need it**:
`execCommand` is not used anywhere, let's remove it and associated `exe` field from several structs.

@kubernetes/sig-storage-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-08-23 05:51:19 -07:00
Humble Chirammal
ddc99590a2 Add initiatorname in iscsi describe printer.
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2017-08-23 16:13:52 +05:30
Kubernetes Submit Queue
7e208befd1 Merge pull request #51084 from humblec/glusterfs-clean
Automatic merge from submit-queue (batch tested with PRs 50229, 50973, 50976, 51085, 51084)

Correct error strings in glusterfs
2017-08-23 03:36:14 -07:00
Kubernetes Submit Queue
33821862ce Merge pull request #50973 from FengyunPan/fix-legacy-floatingip
Automatic merge from submit-queue (batch tested with PRs 50229, 50973, 50976, 51085, 51084)

Fix legacy floatingip

Fix #50974
If user specify floating-network-id by annotation rather than cloud
provider file, openstack cloud provider don't delete floatingip when
deleting LoadBalancer service.

**Release note**:
```release-note
NONE
```
2017-08-23 03:36:05 -07:00
Kubernetes Submit Queue
9cecb3b358 Merge pull request #50229 from tcharding/kubectl-portforward
Automatic merge from submit-queue (batch tested with PRs 50229, 50973, 50976, 51085, 51084)

Remove duplicate command example

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

`kubectl port-forward --help` currently contains a duplicate example. This PR removes the duplicate.

```release-note
/release-note Remove duplicate command example from `kubectl port-forward --help`
```

/sig cli
/kind cleanup
/kind documentation
2017-08-23 03:36:03 -07:00
Kubernetes Submit Queue
d2af141105 Merge pull request #51077 from zjj2wry/log-selector
Automatic merge from submit-queue (batch tested with PRs 50257, 50247, 50665, 50554, 51077)

fix issue(51027)kubect logs --selector ignoring --tail=-1

**What this PR does / why we need it**:
closes issue #51027 

**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
Fix kubect logs --selector ignoring --tail=-1
```
2017-08-23 02:35:14 -07:00
Kubernetes Submit Queue
617dc79311 Merge pull request #50554 from zhangxiaoyu-zidif/refactor-factory-test
Automatic merge from submit-queue (batch tested with PRs 50257, 50247, 50665, 50554, 51077)

Refactor kubectl factory test case with sets.String

**What this PR does / why we need it**:
change to make got and want use sets.String instead, since that is both safe and more clearly shows the intent.

**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
NONE
```
2017-08-23 02:35:11 -07:00
Kubernetes Submit Queue
178a5ff314 Merge pull request #50665 from xiangpengzhao/hardcode-to-const
Automatic merge from submit-queue (batch tested with PRs 50257, 50247, 50665, 50554, 51077)

Replace hard-code "cpu" and "memory" to consts

**What this PR does / why we need it**:
There are many places using hard coded "cpu" and "memory" as resource name. This PR replace them to consts.

**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**:
/kind cleanup

**Release note**:

```release-note
NONE
```
2017-08-23 02:35:09 -07:00
Kubernetes Submit Queue
443f7e2af4 Merge pull request #50247 from tcharding/kubectl-explain
Automatic merge from submit-queue (batch tested with PRs 50257, 50247, 50665, 50554, 51077)

Add whitespace to improve error msg clarity

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

Currently when `kubectl explain` is called without a resource the error message is tacked onto the end of the list of valid resources. The error is clearer if there is a new line after the valid resource list, this also causes the error to be left aligned instead of indented level with the valid resource list.

```release-note
NONE
```

/sig cli
/kind cleanup
2017-08-23 02:35:06 -07:00
Di Xu
504f89e3ac auto-gen 2017-08-23 15:23:34 +08:00
Luca Berton
1044b0df00 Italian translation 2017-08-23 08:45:26 +02:00
Kubernetes Submit Queue
f354857bfb Merge pull request #51020 from dunjut/master
Automatic merge from submit-queue (batch tested with PRs 50980, 46902, 51051, 51062, 51020)

fix confusion in service_controller

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

Fix code and comment confusion in `service_controller`.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-08-22 23:14:07 -07:00
Kubernetes Submit Queue
57ab7c6a64 Merge pull request #51062 from alrs/fix-statefulset-test-swallowed-errors
Automatic merge from submit-queue (batch tested with PRs 50980, 46902, 51051, 51062, 51020)

Fix swallowed errors in statefulset tests

**What this PR does / why we need it**: Fixes errors that were being swallowed in the tests of the statefulset package.

```release-note NONE
```
2017-08-22 23:14:05 -07:00
Kubernetes Submit Queue
3a724ccdb3 Merge pull request #51051 from janetkuo/fix-sts-validation
Automatic merge from submit-queue (batch tested with PRs 50980, 46902, 51051, 51062, 51020)

Fix StatefulSet update validation

StatefulSet update validation did not allow change to number of containers in pod template. Fix this bug so that it's possible to make this kind of change. 

Found it when suggesting test-cmd changes in https://github.com/kubernetes/kubernetes/pull/49674.

@kubernetes/sig-apps-pr-reviews @smarterclayton 

/approve no-issue
2017-08-22 23:14:02 -07:00
Di Xu
021d4de36c run nsenter in host namespace for containerized kubelet 2017-08-23 14:05:21 +08:00
Di Xu
d0a4af133b set default HostPathType to empty 2017-08-23 14:05:21 +08:00
Di Xu
5c45db564f implement proposal 34058: hostPath volume type 2017-08-23 14:05:21 +08:00
Connor Doyle
515d86faa0 Add CPUSetBuilder, make CPUSet immutable. 2017-08-22 22:33:04 -07:00
Kubernetes Submit Queue
625eb9ab7a Merge pull request #51106 from jsafrane/humblec-approver
Automatic merge from submit-queue

Add Humble as GlusterFS approver.

@humblec has shown his commitment into GlusterFS by number of commits there
and by support on sig-storage slack channel.

@kubernetes/sig-storage-misc 

```release-note
NONE
```
2017-08-22 22:14:15 -07:00
Connor Doyle
e686ecb6ea Renamed CPUSet.AsSlice() => CPUSet.ToSlice() 2017-08-22 21:21:26 -07:00
Kubernetes Submit Queue
e2de110e26 Merge pull request #50467 from freehan/local-cloud-provider
Automatic merge from submit-queue (batch tested with PRs 51039, 50512, 50546, 50965, 50467)

add alpha api gate at gce cloud provider

**What this PR does / why we need it**:
Add a flag in gce.conf to gate alpha api. Related wrapper function can choose to examine corresponding gate. 
Currently, there is no new alpha api wrapper funciton being introduced. So there is no supported alpha api.


**Release note**:
```release-note
None
```

cc: @yujuhong @saad-ali @MrHohn
2017-08-22 21:16:16 -07:00
Kubernetes Submit Queue
49c36f4b33 Merge pull request #50546 from apelisse/plumb-openapi-validation
Automatic merge from submit-queue (batch tested with PRs 51039, 50512, 50546, 50965, 50467)

Kubectl: Plumb openapi validation (disabled by default)

**What this PR does / why we need it**: Creates a new flag '--openapi' and plumb in the validation code so that it can be used by default to validate objects against the openapi schema.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: partially https://github.com/kubernetes/kubectl/issues/49

**Special notes for your reviewer**:

This is not complete, the name of the variable must change for example.

**Release note**:
```release-note
Kubectl uses openapi for validation. If OpenAPI is not available on the server, it defaults back to the old Swagger.
```
2017-08-22 21:16:11 -07:00
Kubernetes Submit Queue
601b6d3e02 Merge pull request #50438 from dixudx/kubectl_show_node_roles
Automatic merge from submit-queue (batch tested with PRs 50806, 48789, 49922, 49935, 50438)

kubectl show node role if defined

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

**Special notes for your reviewer**:
/assign @justinsb @luxas @jbeda @philips
/cc @qrevel

**Release note**:

```release-note
kubectl show node role if defined
```
2017-08-22 19:45:37 -07:00
Kubernetes Submit Queue
d5ab597eb3 Merge pull request #49935 from xiangpengzhao/remove-dep-alias
Automatic merge from submit-queue (batch tested with PRs 50806, 48789, 49922, 49935, 50438)

Remove deprecated kubectl command aliases

**What this PR does / why we need it**:
These command aliases have been deprecated for more than two years. It's time to remove them.

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

**Special notes for your reviewer**:
/sig cli

**Release note**:

```release-note
Remove deprecated kubectl command aliases `apiversions, clusterinfo, resize, rollingupdate, run-container, update`
```
2017-08-22 19:45:34 -07:00
Kubernetes Submit Queue
43fd8eebf0 Merge pull request #49922 from riverzhang/volume-cephfs
Automatic merge from submit-queue (batch tested with PRs 50806, 48789, 49922, 49935, 50438)

Fix Getpath() description

Modify the description of the word error



**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-22 19:45:32 -07:00
Kubernetes Submit Queue
d235fa3f1c Merge pull request #48789 from mtanino/issue/47311
Automatic merge from submit-queue (batch tested with PRs 50806, 48789, 49922, 49935, 50438)

iSCSI volume plugin: iSCSI initiatorname support

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

This PR adds iSCSI initiatorname parameter to ISCSIVolumeSource to enable automatic configuration of initiator name per volume. This would allow for more fine grained configuration, and remove the need to configure the initiator name on the host by administrator.

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

**Special notes for your reviewer**:

/cc @rootfs @jsafrane @msau42

**Release note**:

```
iSCSI volume plugin: Support customization of iSCSI initiator name per volume
```
2017-08-22 19:45:29 -07:00
Kubernetes Submit Queue
70632276bb Merge pull request #50806 from verult/VolumeNotYetAttached
Automatic merge from submit-queue (batch tested with PRs 50806, 48789, 49922, 49935, 50438)

On AttachDetachController node status update, do not retry when node …

…doesn't exist but keep the node entry in cache.



**What this PR does / why we need it**: An alternative fix for https://github.com/kubernetes/kubernetes/issues/42438 which also fixes #50721.

Instead of removing the node entry entirely from the node status update cache (which prevents the node from ever being updated even when it recovers), here the node status updater does nothing, so that there won't be an update retry until the node is re-added, where the cache entry is set to true.

Will cherry pick to prior versions after this is merged.

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

**Release Note**:
``` release-note
On AttachDetachController node status update, do not retry when node doesn't exist but keep the node entry in cache.
```

/assign @jingxu97 
/cc @saad-ali 
/sig storage
/release-note
2017-08-22 19:45:27 -07:00
xiangpengzhao
35b45d60b2 Use Fatalf instead of Errorf when mounter/unmounter if nil in volume tests 2017-08-23 10:29:30 +08:00
Yu-Ju Hong
0d1efd5e78 GCE: add a new label "version" for metrics 2017-08-22 17:37:50 -07:00
Eric Paris
2b08d1e5a1 Merge pull request #51144 from joelsmith/skip-endpoints-update
Fix unready endpoints bug introduced in #50934
2017-08-22 19:56:17 -04:00
Yu-Ju Hong
84c9c25edf GCE: Add functions for Alpha address and forwarding rules 2017-08-22 16:37:36 -07:00
Joel Smith
d6aa7fb716 Fix unready endpoints bug introduced in #50934
A pod status change of unready -> ready results in a move from
the endpoint's unready endpoint addresses to its ready addresses
so if a pod update contains an unready -> ready status change,
the endpoint needs to be updated.
2017-08-22 13:46:11 -06:00
Michael Taufen
76c41a252c Remove crash loop detection from the dynamic kubelet config feature
The subfeature was a cool idea, but in the end it is very complex to
separate Kubelet restarts into crash-loops caused by config vs.
crash-loops caused by other phenomena, like admin-triggered node restarts,
kernel panics, and and process babysitter behavior. Dynamic kubelet config
will be better off without the potential for false positives here.

Removing this subfeature also simplifies dynamic configuration by
reducing persistent state:
- we no longer need to track bad config in a file
- we no longer need to track kubelet startups in a file
2017-08-22 12:37:22 -07:00
Kubernetes Submit Queue
336e38bd4d Merge pull request #51044 from kow3ns/sts-immutable-network-id
Automatic merge from submit-queue (batch tested with PRs 51102, 50712, 51037, 51044, 51059)

fix #51043

**What this PR does / why we need it**: The StatefulSet controller no longer attempts to mutate "hostname" or "subdomain" fields of the "pod.spec" to enforce the network identity of Pods in a StatefeulSet. Since these fields are set upon creation and immutable thereafter setting the annotations is no longer necessary. 
fixes: #51043
2017-08-22 12:28:06 -07:00
Kubernetes Submit Queue
09bb8d367a Merge pull request #50712 from dims/create-cadvisor-directory-if-necessary
Automatic merge from submit-queue (batch tested with PRs 51102, 50712, 51037, 51044, 51059)

Create the directory for cadvisor if needed

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

In 6c7245d464, code was added to
bail out if the directory that cadvisor monitored did not exist.

However, this breaks the earlier assumption that kubelet created
directories when needed in pkg/kubelet/kubelet.go's setupDataDirs()
method. setupDataDirs() happens much later, so basically kubelet
exits now.

So since cadvisor really needs this directory, let us just create
it

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

Fixes #50709

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-22 12:27:59 -07:00
Connor Doyle
8f38abb350 Add cpuset helper library. 2017-08-22 11:42:01 -07:00
Minhan Xia
c04ba4eab5 add alpha api gate at gce cloud provider 2017-08-22 11:05:06 -07:00
Kubernetes Submit Queue
c6980e7247 Merge pull request #51033 from mtaufen/revert-51008-revert-50789-fix-scheme
Automatic merge from submit-queue (batch tested with PRs 50967, 50505, 50706, 51033, 51028)

Revert "Merge pull request #51008 from kubernetes/revert-50789-fix-scheme"

I'm spinning up a cluster right now to test this fix, but I'm pretty sure this was the problem.
There doesn't seem to be a way to confirm from logs, because AFAICT the logs from the hollow kubelet containers are not collected as part of the kubemark test.

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

This reverts commit f4afdecef8, reversing
changes made to e633a1604f.

This also fixes a bug where Kubemark was still using the core api scheme
to manipulate the Kubelet's types, which was the cause of the initial
revert.

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

**Release note**:

```release-note
NONE
```

/cc @shyamjvs @wojtek-t
2017-08-22 10:48:21 -07:00
Kubernetes Submit Queue
e2685d800d Merge pull request #50706 from freehan/cloud-provider-op-v2
Automatic merge from submit-queue (batch tested with PRs 50967, 50505, 50706, 51033, 51028)

teach gce cloud to handle alpha/beta operations v2

Alternative to #50704 

This one feels cleaner. BUT, type assertion problems cannot be exposed at compile time. 

Please let me know what you think. This will set the precedence for consuming GCE alpha/beta API. 

cc: @thockin @yujuhong @saad-ali @MrHohn 

```release-note
NONE
```
2017-08-22 10:48:18 -07:00
zhengchuan hu
05f52c6f22 Fix comment to more accurately 2017-08-22 22:08:46 +08:00
Jan Safranek
bf296b3e31 StorageOS: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-22 15:57:08 +02:00
Jan Safranek
73b101c14b rbd: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-22 15:49:21 +02:00
Jan Safranek
3eb9b9dfee quobyte: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-22 15:24:20 +02:00
Jan Safranek
85495bd102 nfs: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-22 15:17:07 +02:00
Jan Safranek
3636c0a4e2 gluster: Use VolumeHost.GetExec() to execute stuff in volume plugins 2017-08-22 14:58:00 +02:00
Jan Safranek
51b33e8abe gluster: Remove unused exe interface 2017-08-22 14:53:25 +02:00
Jan Safranek
36cb25fbfc Add Humble as GlusterFS approver.
@humblec has shown his commitment into GlusterFS by number of commits there
and by support on sig-storage slack channel.
2017-08-22 14:41:51 +02:00
FengyunPan
9bdf2cc0e7 Support for specifying external LoadBalancerIP on openstack
Fix #50851
Add ServiceAnnotationLoadBalancerInternal annotation to distinguish
between internal LoadBalancerIP and external LoadBalancerIP.
2017-08-22 20:40:56 +08:00
Kubernetes Submit Queue
a4b719dcab Merge pull request #50640 from yujuhong/check-ips
Automatic merge from submit-queue (batch tested with PRs 50893, 50913, 50963, 50629, 50640)

gce external LB: add a function to verify the requested IP address

Factor out the logic for verifying the user-requested IP for better
readability and testing. Also rename a few variables for clarity.
2017-08-22 05:31:15 -07:00
Jan Safranek
f744b12ee9 fibre channel: Remove unused exe interface 2017-08-22 14:28:10 +02:00
du
c9941ff4d2 fix confusion in service_controller
remove worthless comment line
2017-08-22 20:14:18 +08:00
zhangxiaoyu-zidif
e4ac711dfc Refactor kuberuntime test case with sets.String 2017-08-22 19:43:18 +08:00
fisherxu
28880ee0eb add UT for pkg/apis/autoscaling/v2alpha1/defaults.go 2017-08-22 19:34:30 +08:00
Jan Safranek
158017cef7 ScaleIO: Use VolumeHost.GetExec() to execute utilities
This prepares volume plugins to run things in containers instead of running
them on the host.

As consequence, a mount.Exec interface needs to be passed from VolumeHost
down to SioClient.
2017-08-22 13:27:59 +02:00
Jan Safranek
dbaf41e92a ScaleIO: use a fresh mounter for every SetUp/TearDown
A volume plugin should not cache Mounter for a long time, it can get a
different one with each SetUp/TearDown call.
2017-08-22 13:25:09 +02:00
Henrik Schmidt
80156474cf Always check if default labels on node need to be updated in kubelet 2017-08-22 12:54:07 +02:00
core
07cfade1fc FlexVolume: Add capability to disable SELinux Relabeling during the driver's init phase
Reference:  https://github.com/lizardfs/lizardfs/issues/581  (SELinux relabeling support)
2017-08-22 03:31:34 -07:00
Humble Chirammal
55ce429620 Replace validateGlusterfs() with validateGlusterfsVolumeSource
for consistency.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2017-08-22 14:47:02 +05:30
Humble Chirammal
7755286f48 Correct error strings in glusterfs
Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2017-08-22 14:27:46 +05:30
Jan Safranek
96827de948 azure: Use VolumeHost.GetExec() to execute stuff in volume plugins
This prepares volume plugins to run things in containers instead of running
them on the host.
2017-08-22 10:21:44 +02:00
Jan Safranek
9484d243ab azure: Don't exec 'cat' to read files. 2017-08-22 10:01:33 +02:00
NickrenREN
82ce7eccba Add ephemeral local storage resource name first 2017-08-22 13:53:37 +08:00
zhengjiajin
28746831e1 fix issue(51027)kubect logs --selector ignoring --tail=-1 2017-08-22 12:26:38 +08:00
zhangxiaoyu-zidif
e83e799d1d fix-review 2017-08-22 10:57:48 +08:00
Kubernetes Submit Queue
bf00190037 Merge pull request #47698 from fabriziopandini/kubeadm308
Automatic merge from submit-queue (batch tested with PRs 46458, 50934, 50766, 50970, 47698)

kubeadm: Warn in preflight checks if KubernetesVersion is of a newer branch than kubeadm

**What this PR does / why we need it**:
see https://github.com/kubernetes/kubeadm/issues/307

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #
https://github.com/kubernetes/kubeadm/issues/307

**Special notes for your reviewer**:

**Release note**:
2017-08-21 18:11:28 -07:00
Kubernetes Submit Queue
aa41ff26d0 Merge pull request #50934 from joelsmith/skip-endpoints-update
Automatic merge from submit-queue (batch tested with PRs 46458, 50934, 50766, 50970, 47698)

Skip non-update endpoint updates

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

On large clusters, a large percentage of endpoint updates are actually non-updates that occur as a result of a change in an associated pod. This results in endpoint updates where the only field that has changed is the `TargetRef.ResourceVersion` in the endpoint address associated with the changed pod. Given enough of these non-updates, the endpoint controller's queue rate limit can be overwhelmed and legitimate updates can be delayed, resulting in (temporarily) broken services. We have clusters where we've seen endpoint updates take 9 minutes.

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

**Special notes for your reviewer**:
N/A

**Release note**:
```release-note
Prevent unneeded endpoint updates
```
2017-08-21 18:11:19 -07:00
Kubernetes Submit Queue
198e83588b Merge pull request #46458 from jsafrane/mount-prep
Automatic merge from submit-queue (batch tested with PRs 46458, 50934, 50766, 50970, 47698)

Prepare VolumeHost for running mount tools in containers

This is the first part of implementation of https://github.com/kubernetes/features/issues/278 - running mount utilities in containers.

It updates `VolumeHost` interface:

*  `GetMounter()` now requires volume plugin name, as it is going to return different mounter to different volume plugings, because mount utilities for these plugins can be on different places.
* New `GetExec()` method that should volume plugins use to execute any utilities. This new `Exec` interface will execute them on proper place.
* `SafeFormatAndMount` is updated to the new `Exec` interface.

This is just a preparation, `GetExec` right now leads to simple `os.Exec` and mount utilities are executed on the same place as before. Also, the volume plugins will be updated in subsequent PRs (split into separate PRs, some plugins required lot of changes).

```release-note
NONE
```

@kubernetes/sig-storage-pr-reviews 
@rootfs @gnufied
2017-08-21 18:11:16 -07:00
Balu Dontu
cfdff1ae46 Multi-Attach volume fix for vSphere 2017-08-21 18:06:29 -07:00
Lars Lehtonen
9f8d57a2d4
Fix swallowed errors in statefulset tests 2017-08-21 17:12:36 -07:00
Phillip Wittrock
bc94cd5807 More PR comments 2017-08-21 16:06:48 -07:00
Kubernetes Submit Queue
0f8eaa45dd Merge pull request #49976 from aveshagarwal/master-pod-affinities-topology-key
Automatic merge from submit-queue (batch tested with PRs 50531, 50853, 49976, 50939, 50607)

Do not allow empty topology key for pod affinities.

**What this PR does / why we need it**:
This PR do not allow empty topology key for all 4 pod affinities.

**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
Affinity in annotations alpha feature is no longer supported in 1.8. Anyone upgrading from 1.7 with AffinityInAnnotation feature enabled must ensure pods (specifically with pod anti-affinity PreferredDuringSchedulingIgnoredDuringExecution) with empty TopologyKey fields must be removed before upgrading to 1.8.
```
@kubernetes/sig-scheduling-bugs  @bsalamat @davidopp
2017-08-21 15:46:20 -07:00
Kubernetes Submit Queue
0b6bd601ae Merge pull request #50853 from dcbw/cni-conf
Automatic merge from submit-queue (batch tested with PRs 50531, 50853, 49976, 50939, 50607)

cni: print better error when a CNI .configlist is put into a .config

If the admin mistakenly puts a CNI configlist into a "conf" file, that's not correct, but kubelet will still read the config file and then fail to start the pod because "type=".  Be a bit smarter about that.  Should also be fixed in CNI, which I'm doing a PR for as well.

@squeed @thockin @freehan
2017-08-21 15:46:17 -07:00
Janet Kuo
ad0c6b66b5 Fix StatefulSet update validation 2017-08-21 15:28:08 -07:00
Jason Zhao
35777b2997 run go fmt 2017-08-21 15:24:44 -07:00
Kubernetes Submit Queue
990395d5ea Merge pull request #47506 from zhangxiaoyu-zidif/replace-sliceequal-by-deepequal
Automatic merge from submit-queue (batch tested with PRs 50693, 50831, 47506, 49119, 50871)

Use reflect.DeepEqual to replace slicesEqual

**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 https://github.com/kubernetes/kubernetes/issues/50952

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-21 14:30:00 -07:00
Kubernetes Submit Queue
aa31d19310 Merge pull request #50693 from allencloud/fix-typos-in-quobyte
Automatic merge from submit-queue (batch tested with PRs 50693, 50831, 47506, 49119, 50871)

fix two typos in quobyte error message

Signed-off-by: allencloud <allen.sun@daocloud.io>



**What this PR does / why we need it**:
fix two typos in quobyte error message

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

**Special notes for your reviewer**:
NONE

**Release note**:

```release-note
NONE
```
2017-08-21 14:29:55 -07:00
Jason Zhao
8b16c3dafb addressed comments 2017-08-21 14:21:02 -07:00
Kenneth Owens
a6473d82dc StatefulSet controller no longer attempts to mutate v1.PodSpec.Hostname or v1.PodSpec.Subdomain 2017-08-21 13:08:31 -07:00
fabriziopandini
35f6b12e79 adding version.Components(), .Major(), .Minor() .Patch() etc. 2017-08-21 22:04:32 +02:00
Michael Taufen
a90d81620b Revert "Merge pull request #51008 from kubernetes/revert-50789-fix-scheme"
This reverts commit f4afdecef8, reversing
changes made to e633a1604f.

This also fixes a bug where Kubemark was still using the core api scheme
to manipulate the Kubelet's types, which was the cause of the initial
revert.
2017-08-21 11:28:05 -07:00
Minhan Xia
25f8c946f5 teach gce cloud to handle alpha/beta operations 2017-08-21 10:58:10 -07:00
Matt Rogers
c42c43a13f Show events when describing service accounts
Signed-off-by: Matt Rogers <mrogers@redhat.com>
2017-08-21 13:54:12 -04:00
mtanino
b0d4664a27 Autogenerated files 2017-08-21 12:29:32 -04:00
Antoine Pelisse
37aacf30b5 openapi validation: Ignore unknown types
This follows the exact same logic as swagger.
2017-08-21 09:08:31 -07:00
Antoine Pelisse
a950afecdc openapi-validation: Handle List special case 2017-08-21 09:08:31 -07:00
Antoine Pelisse
4e87d2d572 openapi: Handle properly empty/null fileds 2017-08-21 09:08:31 -07:00
Antoine Pelisse
aa1c79f32b openapi: Use "group" to look for resources 2017-08-21 09:08:31 -07:00
Antoine Pelisse
b7b5457050 Validate against OpenAPI schema (if available) 2017-08-21 08:58:42 -07:00
Yu-Ju Hong
afcb948385 gce external LB: add a function to verify the requested IP address 2017-08-21 08:42:11 -07:00
Mitsuhiro Tanino
a6e523f2e7 iSCSI volume plugin: iSCSI initiatorname support
This PR adds iSCSI initiatorname parameter to ISCSIVolumeSource
to enable automatic configuration of initiator name per volume.
This would allow for more fine grained configuration, and remove
the need to configure the initiator name on the host by
administrator.

fixes: #47311
2017-08-21 11:26:56 -04:00
Kubernetes Submit Queue
f3c2324af3 Merge pull request #50620 from juanvallejo/jvallejo/update-kubectl-top-validation
Automatic merge from submit-queue (batch tested with PRs 47896, 50678, 50620, 50631, 51005)

allow heapster option defaults to be set - kubectl top node|pod

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

Allows downstream / outside consumers of `NewCmdTopNode` and `NewCmdTopPod` commands to set project or case-specific heapster option defaults.

Related downstream PR: https://github.com/openshift/origin/pull/15764

cc @fabianofranz
2017-08-21 08:26:23 -07:00
Kubernetes Submit Queue
5c351c282a Merge pull request #50678 from xiangpengzhao/remove-cm-flag
Automatic merge from submit-queue (batch tested with PRs 47896, 50678, 50620, 50631, 51005)

Remove deprecated lookup cache flags.

**What this PR does / why we need it**:
Remove deprecated lookup cache flags: `replication-controller-lookup-cache-size, replicaset-lookup-cache-size, daemonset-lookup-cache-size`

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

**Special notes for your reviewer**:
/cc @enisoc

**Release note**:

```release-note
The following deprecated flags have been removed from `kube-controller-manager`: `replication-controller-lookup-cache-size`, `replicaset-lookup-cache-size`, and `daemonset-lookup-cache-size`. Make sure you no longer attempt to set them.
```
2017-08-21 08:26:20 -07:00
xswack
7bc8411f62 Fixed code comments that were not updated 2017-08-21 20:19:59 +08:00
Shyam JVS
5591914d62 Revert "Don't register the kubeletconfig group with the default Scheme" 2017-08-21 11:15:27 +02:00
xswack
671c0560ae Replace the deprecated function with the suggest function 2017-08-21 10:50:52 +08:00
FengyunPan
e8fe9b65c5 Support ServiceAnnotationLoadBalancerFloatingNetworkId for LB v1 2017-08-21 07:48:07 +08:00
FengyunPan
e5b7f0e7ba Fix legacy floatingip
If user specify floating-network-id by annotation rather than cloud
provider file, openstack cloud provider don't delete floatingip when
deleting LoadBalancer service.
2017-08-21 07:45:52 +08:00
Seth Jennings
a06236dd72 Factor out endpoint address generation, skip unneeded endpoint updates
Also add unit tests for new endpoint helpers related to updatePod
2017-08-20 06:26:25 -06:00
Davanum Srinivas
ca2d5178aa Create the directory for cadvisor if needed
In 6c7245d464, code was added to
bail out if the directory that cadvisor monitored did not exist.

However, this breaks the earlier assumption that kubelet created
directories when needed in pkg/kubelet/kubelet.go's setupDataDirs()
method. setupDataDirs() happens much later, so basically kubelet
exits now.

So since cadvisor really needs this directory, let us just create
it

Fixes #50709
2017-08-19 20:42:50 -04:00
Kubernetes Submit Queue
e633a1604f Merge pull request #50789 from mtaufen/fix-scheme
Automatic merge from submit-queue

Don't register the kubeletconfig group with the default Scheme

See https://github.com/kubernetes/kubernetes/pull/49051#discussion_r132527078
2017-08-19 12:15:48 -07:00
Kubernetes Submit Queue
b59ad9cbff Merge pull request #50146 from gmarek/deepcopyinto
Automatic merge from submit-queue (batch tested with PRs 46512, 50146)

Make metav1.(Micro)?Time functions take pointers

Is there any reason for those functions not to be on pointers?
2017-08-19 11:28:15 -07:00
jrperritt
21ce3de326 don't try to add pool id if pool doesn't exist 2017-08-19 07:36:38 -05:00
zhengjiajin
1a1b940ecb fix issue(#50937)Fix kubectl get pvc lose volume name 2017-08-19 17:02:58 +08:00
Christoph Blecker
8163afddd2
Fix threshold notifier build tags
This was preventing cross builds from darwin
2017-08-18 15:54:31 -07:00
Kubernetes Submit Queue
2ab7ad14b4 Merge pull request #47991 from ncdc/fix-initial-exec-terminal-dimensions
Automatic merge from submit-queue

Fix initial exec terminal dimensions

**What this PR does / why we need it**:
Delay attempting to send a terminal resize request to docker until after
the exec has started; otherwise, the initial resize request will fail.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-18 14:47:11 -07:00
Christoph Blecker
0153f8de1a
Update help/example for kubectl completion 2017-08-18 14:29:42 -07:00
Christoph Blecker
70b942d663
Allow zsh completion to be autoloaded by compinit 2017-08-18 14:29:26 -07:00
Michael Taufen
0af9f756cd Don't register the kubeletconfig group with the default Scheme 2017-08-18 13:51:39 -07:00
Kubernetes Submit Queue
5cc3cda03d Merge pull request #50490 from liyinan926/master
Automatic merge from submit-queue

Use CollisionCount for collision avoidance in StatefulSet controller

**What this PR does / why we need it**:
This PR uses the newly added `CollisionCount` in `StatefulSetStatus` for name collision avoidance when the `StatefulSet` controller creates `ControllerRevision`s. The `CreateControllerRevision` method of the `ControllerHistory` interface was augmented to use a user-specified `collisionCount` instead of the internal probe that always starts with 0. The `StatefulSet` controller uses the `CreateControllerRevision` to create `ControllerRevision`s and when it calls it, it passes in the `CollisionCount` of the `StatefulSet` it manipulates. 
  
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #49909.

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

**Release note**:
```release-note
Use CollisionCount for collision avoidance when creating ControllerRevisions in StatefulSet controller
```
2017-08-18 11:14:08 -07:00
Kubernetes Submit Queue
9553e89a19 Merge pull request #50860 from wlan0/master
Automatic merge from submit-queue

Proposal to add @wlan0 to appropriate owner files

@thockin @luxas
2017-08-18 10:24:20 -07:00
Eric Chiang
1f8ee7fe13 oidc auth: make the OIDC claims prefix configurable
Add the following flags to control the prefixing of usernames and
groups authenticated using OpenID Connect tokens.

	--oidc-username-prefix
	--oidc-groups-prefix
2017-08-18 09:49:32 -07:00
Yinan Li
46c6aea1cf Use CollisionCount for collision avoidance in StatefulSet controller 2017-08-18 06:49:02 -07:00
David Eads
53348c0531 add diff details to pod validation error 2017-08-18 09:01:13 -04:00
Kubernetes Submit Queue
afabd09889 Merge pull request #50876 from enj/enj/f/owners_reviewer
Automatic merge from submit-queue

Add enj as reviewer to OWNERS

Adding myself as a reviewer for the following areas:

- API
- auth
- registry
- storage (etcd)

Signed-off-by: Monis Khan <mkhan@redhat.com>

**Release note**:

```release-note
NONE
```

@kubernetes/sig-api-machinery-pr-reviews
@kubernetes/sig-auth-pr-reviews
2017-08-18 05:42:07 -07:00
Kubernetes Submit Queue
c3a39f763e Merge pull request #48263 from CaoShuFeng/useless_argument
Automatic merge from submit-queue

remove useless argument "name"

**Release note**:

```
NONE
```
2017-08-18 05:41:45 -07:00
Kubernetes Submit Queue
c573d8192f Merge pull request #50255 from mattlandis/aws-duplicate-subnets
Automatic merge from submit-queue (batch tested with PRs 50255, 50885)

AWS: Arbitrarily choose first (lexicographically) subnet in AZ

When there is more than one subnet for an AZ on AWS choose arbitrarily
chose the first one lexicographically for consistency.



**What this PR does / why we need it**:
If two subnets were to be used appear in the same aws az which one is chosen is currently not consistent.  This could lead to difficulty in diagnosing issues.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-08-18 05:21:57 -07:00
Kubernetes Submit Queue
4e4168121a Merge pull request #50856 from shyamjvs/save-route-controller-memory
Automatic merge from submit-queue (batch tested with PRs 50303, 50856)

Make route-controller list only relevant routes instead of all of them

Ref https://github.com/kubernetes/kubernetes/issues/50854 (somewhat related issue)

IIUC from the code, route-controller memory is mainly being used in storing routes and nodes (also CIDRs, but that's not much).
This should help reduce that memory usage (particularly when running in a project with large no. of routes), by moving filtering to server-side.
For e.g in kubernetes-scale project we have ~5000 routes (each about 600B) => 3 MB of routes

This doesn't help with reducing time to list the routes as filtering is also linear.

cc @kubernetes/sig-scalability-misc @wojtek-t @gmarek
2017-08-18 03:37:53 -07:00
Kubernetes Submit Queue
2c6cb24e8a Merge pull request #50303 from zouyee/newb
Automatic merge from submit-queue

delete ineffectual assginment

**What this PR does / why we need it**:
delete ineffectual assignment
**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**:
2017-08-18 02:46:09 -07:00
Kubernetes Submit Queue
d543a7c7ce Merge pull request #50765 from sttts/sttts-kube-gen-rename
Automatic merge from submit-queue

Rename k8s.io/{kube-gen -> code-generator}
2017-08-18 01:06:45 -07:00
Kubernetes Submit Queue
e553d6eb5b Merge pull request #50575 from dixudx/CollisionCount_int64_to_int32
Automatic merge from submit-queue

CollisionCount should have type int32 across controllers that use it for collision avoidance

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

**Special notes for your reviewer**:
/cc @liyinan926
/assign @kow3ns @thockin @janetkuo 

**Release note**:

```release-note
Change CollisionCount from int64 to int32 across controllers
```
2017-08-17 23:21:11 -07:00
Kubernetes Submit Queue
4564f3d810 Merge pull request #49993 from mathspanda/master
Automatic merge from submit-queue

verify pkg/util contains no code

**What this PR does / why we need it**:
verify util packages contain no go codes

related issue: #49923
2017-08-17 22:32:13 -07:00
Di Xu
58669f6f1d support fieldSelector spec.schedulerName 2017-08-18 13:32:09 +08:00
Kubernetes Submit Queue
89abb48f7e Merge pull request #50823 from zjj2wry/set-image
Automatic merge from submit-queue (batch tested with PRs 50277, 50823, 50376, 50867)

fix issue(#50821)Add image check, if image not changed, transform false

**What this PR does / why we need it**:
closes #50821 
**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
NONE
```
2017-08-17 22:24:23 -07:00
xilabao
42c41a07c8 validate nonResourceURL in create clusterrole 2017-08-18 13:03:38 +08:00
Di Xu
b36320beb1 auto-gen 2017-08-18 11:07:35 +08:00
Kubernetes Submit Queue
075d209ea4 Merge pull request #50218 from dixudx/fix_GPU_resource_zero_limit_validation
Automatic merge from submit-queue

fix GPU resource validation that incorrectly allows zero limits

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

The validation logic for GPUs is not run if limits is not set for GPUs.
We need to check limits equals requests even if just request is set for GPUs.

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

**Special notes for your reviewer**:
/assign @vishh 
/cc @jiayingz 

**Release note**:

```release-note
fix GPU resource validation that incorrectly allows zero limits
```
2017-08-17 19:57:40 -07:00
Di Xu
85602fd542 CollisionCount should have type int32 across controllers that use it for collision avoidance 2017-08-18 10:48:12 +08:00
Kubernetes Submit Queue
d490e2cf83 Merge pull request #50176 from Random-Liu/set-exec-timeout
Automatic merge from submit-queue (batch tested with PRs 50536, 50809, 50220, 50399, 50176)

Set ExecSync timeout in liveness prober.

Although Dockershim doesn't actually support `ExecSync` timeout (see [here](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/dockershim/exec.go#L137)), we should set the timeout, so that the other runtime which supports the timeout could work properly.

Fixes #50389.

/cc @yujuhong @timstclair @feiskyer
2017-08-17 18:12:22 -07:00
Kubernetes Submit Queue
821445e127 Merge pull request #50399 from caesarxuchao/update-admission-plugin
Automatic merge from submit-queue (batch tested with PRs 50536, 50809, 50220, 50399, 50176)

Make admission plugin handle mutating spec of uninitialized pods

Address https://github.com/kubernetes/kubernetes/issues/47837#issuecomment-321323243.

Updated to handle mutating pod spec of uninitialized pods:
* InitialResources
* PodNodeSelector
* PodTolerationRestriction
* ServiceAccount


Doesn't change:
* NodeRestriction: this plugin only cares about the mirror pods created by nodes, and mirror pods are exempted from initializers, so no modification required
* PersistentVolumeLabel, DefaultStorageClass: It only cares about PersistentVolume. We can revisit when we relax its validation.
* InitialResource: deprecated according to https://github.com/kubernetes/kubernetes/issues/47837#issuecomment-321388879
2017-08-17 18:12:20 -07:00
Kubernetes Submit Queue
f0066597ca Merge pull request #50220 from zhangxiaoyu-zidif/delete-statefulset-test-redundant-sort
Automatic merge from submit-queue (batch tested with PRs 50536, 50809, 50220, 50399, 50176)

Refactor statefulset test with sets.String

**What this PR does / why we need it**:
Delete redundant sort. These string slices only own one element.
There is no necessary to sort them.

**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
NONE
```
2017-08-17 18:12:06 -07:00
Kubernetes Submit Queue
f7dd477155 Merge pull request #50536 from crimsonfaith91/mark-deprecated
Automatic merge from submit-queue (batch tested with PRs 50536, 50809, 50220, 50399, 50176)

mark created-by annotation as deprecated

**What this PR does / why we need it**: This PR marks created-by annotation as deprecated in code comments.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
The `kubernetes.io/created-by` annotation is now deprecated and will be removed in v1.9. Use [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) instead to determine which controller, if any, owns an object.
```
2017-08-17 18:12:02 -07:00
Monis Khan
dd06794bc2
Add enj as reviewer to OWNERS
Adding myself as a reviewer for the following areas:

- API
- auth
- registry
- storage (etcd)

Signed-off-by: Monis Khan <mkhan@redhat.com>
2017-08-17 20:42:46 -04:00
FengyunPan
4738a88d01 Use 'Infof' instead of 'Errorf' for a debug log 2017-08-18 08:08:55 +08:00
Kubernetes Submit Queue
d958a35ab9 Merge pull request #50834 from zjj2wry/fix_validation_expose_port
Automatic merge from submit-queue (batch tested with PRs 50281, 50747, 50347, 50834, 50852)

fix kubectl issue(#52)kubectl run --expose continues after error (mis…

…sing port)



**What this PR does / why we need it**:
https://github.com/kubernetes/kubectl/issues/52
**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
NONE
```
2017-08-17 16:56:25 -07:00
Kubernetes Submit Queue
804c17766c Merge pull request #50747 from m1093782566/proxy-util
Automatic merge from submit-queue (batch tested with PRs 50281, 50747, 50347, 50834, 50852)

[proxy] Move IsLocalIP() and ShouldSkipService() to pkg/proxy/util

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

Move function `IsLocalIP()` and `ShouldSkipService()` to pkg/proxy/util package so that they can be consumed among different proxiers. 

Besides, add some UTs for `ShouldSkipService()`.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
NONE
```
2017-08-17 16:56:19 -07:00
Kubernetes Submit Queue
7c13d65134 Merge pull request #50281 from FengyunPan/mark-detached-vsphere
Automatic merge from submit-queue

Mark volume as detached when node does not exist for vsphere

If node does not exist, node's volumes will be detached
automatically and become available. So mark them detached and
return false without error.
Fix #50266

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

**Release note**:
```release-note
NONE
```
2017-08-17 16:33:26 -07:00
juanvallejo
c969079f49
add tests 2017-08-17 18:08:26 -04:00
Clayton Coleman
da5265d19a
Enable server side printers for converted types 2017-08-17 17:41:34 -04:00
Clayton Coleman
6366f93d10
Clear collections between each test of TestList 2017-08-17 17:41:29 -04:00
Lantao Liu
ef29b836c0 Set ExecSync timeout in liveness prober. 2017-08-17 21:09:45 +00:00
Kubernetes Submit Queue
8404244d7d Merge pull request #50671 from zjj2wry/selector
Automatic merge from submit-queue

fix issue(#49883) Add selector example

**What this PR does / why we need it**:
fixes #49883

**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
NONE
```
2017-08-17 13:41:07 -07:00
Chao Xu
bf6155b08c make admission plugins handle mutating spec of uninitialized pods 2017-08-17 12:51:09 -07:00
Phillip Wittrock
32c5d938eb Update with PR comments 2017-08-17 12:18:57 -07:00
Kubernetes Submit Queue
e86f43bcab Merge pull request #50796 from yguo0905/hc
Automatic merge from submit-queue (batch tested with PRs 50563, 50698, 50796)

Disable Docker's health check until we officially support it

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

Tested locally.

Without this PR:

```
CONTAINER ID        IMAGE                                                  COMMAND                  CREATED             STATUS                     PORTS               NAMES
afdd796ddddc        gcr.io/ygg-gke-dev/nginx-healthcheck                   "nginx -g 'daemon ..."   5 minutes ago       Up 5 minutes (healthy)                       k8s_test-container_test-pod_default_8a1ad225-82bf-11e7-becb-480fcf514648_0
```

With this PR:
```
e3fb2437555f        gcr.io/ygg-gke-dev/nginx-healthcheck                   "nginx -g 'daemon ..."   10 seconds ago      Up 9 seconds                            k8s_test-container_test-pod_default_de82e83c-82c0-11e7-b3fc-480fcf514648_0
```

**Release note**:

```
Disable Docker's health check until we officially support it.
```

/assign @yujuhong 
/assign @dchen1107
2017-08-17 12:18:33 -07:00
Kubernetes Submit Queue
9d302ecffa Merge pull request #50698 from liyinan926/cr-v1beta2
Automatic merge from submit-queue (batch tested with PRs 50563, 50698, 50796)

Add ControllerRevision to apps/v1beta2

**What this PR does / why we need it**:
This PR added `ControllerRevision` currently in `apps/v1beta1` to `apps/v1beta2`.

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

**Special notes for your reviewer**:
@kow3ns @janetkuo 

**Release note**:
```release-note
Add ControllerRevision to apps/v1beta2
```
2017-08-17 12:18:29 -07:00
Shyam Jeedigunta
0b1d548879 Make route-controller list only relevant routes instead of all of them 2017-08-17 20:39:59 +02:00
wlan0
92415f7dd7 Proposal to add @wlan0 to appropriate owner files 2017-08-17 11:37:51 -07:00
Dan Williams
c19965c740 cni: print better error when a CNI .configlist is put into a .config 2017-08-17 11:01:05 -05:00
Dr. Stefan Schimanski
e3a3d108fb Fixup after k8s.io/{kube-gen -> code-generator} rename 2017-08-17 17:55:12 +02:00
juanvallejo
5b8b1eb2eb
allow default option values - kube top node|pod 2017-08-17 11:24:29 -04:00
Di Xu
84bf931580 newline to separate unimplemented elements 2017-08-17 22:19:21 +08:00
zhengjiajin
43e3044b73 fix issue(#49883) Add selector example 2017-08-17 20:27:11 +08:00
zhengjiajin
1d7328a290 fix issue(#49695)kubectl set image deployment is ignoring --selector 2017-08-17 19:56:25 +08:00
Kubernetes Submit Queue
9aa04c755f Merge pull request #50826 from huzhengchuan/fix/delete-deadcode
Automatic merge from submit-queue

remove unused function in openstack cloud provider

**What this PR does / why we need it**:
List function not used in openstack cloud provider, and useless, I think need 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 #

**Special notes for your reviewer**:

**Release note**:

```
NONE
```
2017-08-17 04:45:56 -07:00
Kubernetes Submit Queue
a4acc38c96 Merge pull request #50550 from atlassian/cleanup-configz
Automatic merge from submit-queue (batch tested with PRs 50550, 50768)

Cleanup locking in configz

**What this PR does / why we need it**:
- Reduce scope of lock in `write()` method
- Use the read lock in `write()` method

**Release note**:
```release-note
NONE
```
/kind cleanup

@mikedanese 

p.s. looks like the `Set()` method could be removed if the value is accepted as an argument to `New()`. I.e. looks like to code re-sets the value.
2017-08-17 03:13:57 -07:00
gmarek
0504cfbc25 Make metav1.(Micro)?Time functions take pointers 2017-08-17 11:24:28 +02:00
Kubernetes Submit Queue
402e48b072 Merge pull request #50583 from liggitt/endpoints-empty-noop
Automatic merge from submit-queue (batch tested with PRs 49869, 47987, 50211, 50804, 50583)

Make endpoints controller update based on semantic equality

Fixes #50828
Split from https://github.com/kubernetes/kubernetes/pull/45294 for separate review

Currently, endpoints objects containing no subsets are decoded by the go client as subsets:[] (when requested individually) or as subsets:null (when requested in a list of endpoints).

Because the endpoints controller is fed via a lister/watcher, it gets the `subsets:null` version fed to it. The subsets computation then returns an empty slice, which fails reflect.DeepEqual, which triggers a write attempt.

This PR makes the comparison use semantic.DeepEqual to avoid spurious writes.

https://github.com/kubernetes/kubernetes/pull/45294 would remove the inconsistency between lists and individual gets.
2017-08-17 01:32:25 -07:00
Kubernetes Submit Queue
c8cfc5f723 Merge pull request #50211 from NuxiNL/util-freebsd
Automatic merge from submit-queue (batch tested with PRs 49869, 47987, 50211, 50804, 50583)

Make socket address parsing work on FreeBSD.

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

I am currently in the process of porting Kubernetes to work on FreeBSD. What is interesting is that I am not interested in using Kubernetes to run Docker containers in this case. I happen to be the author of CloudABI, a sandboxing framework that is available on FreeBSD (and other systems). I want to have a cluster management tool for scheduling these sandboxed processes.

Anyway, right now `kubelet` crashes on startup when passing in CRI command line flags, for the reason that it's not able to parse `unix:...` socket addresses. This change fixes this by making the respective Linux-only source file work on FreeBSD as well.
2017-08-17 01:32:21 -07:00
Kubernetes Submit Queue
9c8f74e45c Merge pull request #47987 from wongma7/reclaimpolicy
Automatic merge from submit-queue (batch tested with PRs 49869, 47987, 50211, 50804, 50583)

Add ReclaimPolicy field to StorageClass

fix https://github.com/kubernetes/kubernetes/issues/38192, enough people want this imo so going ahead and adding it according to initial suggested design

some considerations:
* No Recycle allowed, Retain (& Delete) only.
* Do we need to gate the field.
* E2E test where a Retain PV is dynamically provisioned is TODO if we agree we want this & this is the way to do it.
* Need a feature repo issue to track docs and stuff for 1.8

**Release note**:

```release-note
StorageClass has a new field to configure reclaim policy of dynamically provisioned PVs.
```
2017-08-17 01:32:18 -07:00
Di Xu
75258b2763 update testcase err msg 2017-08-17 15:42:05 +08:00
Di Xu
fc0bdb5622 auto-gen 2017-08-17 15:42:05 +08:00
Di Xu
a8742a0643 fix GPU resource validation incorrectly allows zero limits 2017-08-17 15:41:59 +08:00
mathspanda
0e441494e7 verify pkg/util contains no code 2017-08-17 15:28:27 +08:00
m1093782566
992f618343 move IsLocalIP() and ShouldSkipService() to pkg/proxy/util 2017-08-17 14:32:05 +08:00
zhengjiajin
c11a9fc95d fix kubectl issue(#52)kubectl run --expose continues after error (missing port) 2017-08-17 14:30:46 +08:00
Kubernetes Submit Queue
ccc40f49ee Merge pull request #49342 from RenaudWasTaken/protobufapionly
Automatic merge from submit-queue (batch tested with PRs 49342, 50581, 50777)

Device Plugin Protobuf API

**What this PR does / why we need it:**
This implements the Device Plugin API

- Design document: kubernetes/community#695
- PR tracking: [kubernetes/features#368](https://github.com/kubernetes/features/issues/368#issuecomment-321625420)

Special notes for your reviewer:

First proposal submitted to the community repo, please advise if something's not right with the format or procedure, etc.
@vishh @derekwaynecarr

**Release note:**
```
NONE
```
2017-08-16 23:08:08 -07:00
zhengchuan hu
05d3e9c5f3 Delete useless code 2017-08-17 13:38:17 +08:00
Yinan Li
3b4f263b67 Added auto-generated changes 2017-08-16 21:29:03 -07:00
Yinan Li
975257633b Add ControllerRevision to apps/v1beta2 2017-08-16 20:49:01 -07:00
zhengjiajin
68bd8d2584 fix issue(#50821)Add image check, if image not changed, transform false 2017-08-17 11:19:14 +08:00
Kubernetes Submit Queue
4bfe9b1a56 Merge pull request #47599 from yujuhong/restart-init
Automatic merge from submit-queue (batch tested with PRs 46317, 48922, 50651, 50230, 47599)

Rerun init containers when the pod needs to be restarted

Whenever pod sandbox needs to be recreated, all containers associated
with it will be killed by kubelet. This change ensures that the init
containers will be rerun in such cases.

The change also refactors the compute logic so that the control flow of
init containers act is more aligned with the regular containers. Unit
tests are added to verify the logic.

This fixes #36485
2017-08-16 19:50:22 -07:00
Kubernetes Submit Queue
3f44fe8884 Merge pull request #50230 from jianglingxia/jlx080714
Automatic merge from submit-queue (batch tested with PRs 46317, 48922, 50651, 50230, 47599)

fix the typo of errorf info

**What this PR does / why we need it**:
fix the error message of stateful_pod_control_test.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**:

```release-note
NONE
```
2017-08-16 19:50:19 -07:00
Kubernetes Submit Queue
7a58f55423 Merge pull request #50651 from itowlson/log-azure-share-name
Automatic merge from submit-queue (batch tested with PRs 46317, 48922, 50651, 50230, 47599)

Log name if Azure file share cannot be created

**What this PR does / why we need it**: If the Azure storage provider fails to create a file share, it logs and error message 'failed to create share in account _foo_: _error-msg_'.  A user on the Slack azure-sig channel reported an error of "The specified resource name length is not within the permissible limits".  This PR adds logging of the name so that this error can be diagnosed in future.

**Which issue this PR fixes**: This was raised on Slack and has not been created as a GitHub issue.

**Special notes for your reviewer**: None

**Release note**:

```release-note
Changed the error log format when creating an Azure file share to include the name of the share.
```
2017-08-16 19:50:17 -07:00
Kubernetes Submit Queue
ce1485c626 Merge pull request #48922 from ConnorDoyle/integer-resources-as-default
Automatic merge from submit-queue (batch tested with PRs 46317, 48922, 50651, 50230, 47599)

Resources outside the `*kubernetes.io` namespace are integers and cannot be over-committed.

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

Fixes #50473 

Rationale: since the scheduler handles all resources except CPU as integers, that could just be the default behavior for namespaced resources.

cc @RenaudWasTaken @vishh 

**Release note**:

```release-note
Resources outside the `*kubernetes.io` namespace are integers and cannot be over-committed.
```
2017-08-16 19:50:15 -07:00
Kubernetes Submit Queue
225b9119d6 Merge pull request #46317 from monopole/kubectlValidator
Automatic merge from submit-queue

Remove kubectl's dependence on schema file in pkg/api/validation.

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

Makes functions in validation/schema.go private to kubectl,
further isolating kubectl.  This move revealed a "hidden" dependence
(a dependence not expressed in a BUILD or make file) from a feature
level test in /hack/make-rules on a kubectl test data file.  So this
PR also adds some BUILD rules around the relevant hack targets, to make the
dependence official.  A later PR will move the kubectl aspect of this "hack"
test into a kubectl test directory.  Leaving it in place for now after establishing 
and "official" dependency, since moving the test beyond PR scope.  The
test also depends on a small sh file in //cluster, which makes no sense.

**Which issue this PR fixes**

Part of a series of PRs to address kubernetes/community#598

**Release note**:
```release-note
NONE
```
2017-08-16 19:06:17 -07:00
YuxiJin-tobeyjin
f579e395b5 Remove redundant err definition 2017-08-17 10:05:23 +08:00
Kubernetes Submit Queue
427d763a3f Merge pull request #50643 from kow3ns/enableappsv1beta2
Automatic merge from submit-queue

Enables the v1beta2 version of the apps API group by default

**What this PR does / why we need it**: Enables the v1beta2 version of the apps API group by default

fixes # #50641

```release-note
apps/v1beta2 is enabled by default. DaemonSet, Deployment, ReplicaSet, and StatefulSet have been moved to this group version.
```
2017-08-16 18:07:35 -07:00
Jeffrey Regan
dbc22ad6fd Remove kubectl's dependence on schema file in pkg/api/validation.
**What this PR does / why we need it**:

Makes functions in validation/schema.go private to kubectl,
further isolating kubectl.

**Which issue this PR fixes**

Part of a series of PRs to address kubernetes/community#598

**Release note**:
```release-note
NONE
```
2017-08-16 16:38:28 -07:00
Kubernetes Submit Queue
929f138319 Merge pull request #50756 from sttts/sttts-deepcopy-calls-kubectl
Automatic merge from submit-queue (batch tested with PRs 41901, 50762, 50756)

kubectl: simplify deepcopy calls
2017-08-16 16:25:23 -07:00
Yang Guo
fe06c7ec64 Disables Docker's health check 2017-08-16 16:12:09 -07:00
Kubernetes Submit Queue
4032896ef1 Merge pull request #41901 from soltysh/cronjobs_beta
Automatic merge from submit-queue

Promote CronJobs to batch/v1beta1 - just the API

This PR promotes CronJobs to beta.

@erictune @kubernetes/sig-apps-api-reviews @kubernetes/api-approvers ptal

This builds on top of #41890 and needs #40932 as well

```release-note
Promote CronJobs to batch/v1beta1.
```
2017-08-16 15:59:46 -07:00
Cheng Xing
1234d2f500 On AttachDetachController node status update, do not retry when node doesn't exist but keep the node entry in cache 2017-08-16 15:42:15 -07:00
Renaud Gaubert
04bc27231b Generated files
Signed-off-by: Renaud Gaubert <rgaubert@nvidia.com>
2017-08-16 15:36:51 -07:00
Connor Doyle
630af5422b OIR predicate includes namespaced resources. 2017-08-16 15:29:24 -07:00
Yu-Ju Hong
152d8b9d96 Re-run init containers if the pod sandbox needs to be recreated
Whenever pod sandbox needs to be recreated, all containers associated
with it will be killed by kubelet. This change ensures that the init
containers will be rerun in such cases.

The change also refactors the compute logic so that the control flow of
init containers act is more aligned with the regular containers. Unit
tests are added to verify the logic.
2017-08-16 15:27:18 -07:00
zhangxiaoyu-zidif
3393cf4718 fix-review 2017-08-17 06:00:02 +08:00
Kubernetes Submit Queue
5c558ddb18 Merge pull request #50722 from vmware/longVmName
Automatic merge from submit-queue (batch tested with PRs 50061, 48580, 50779, 50722)

Fix for Policy based volume provisioning failure due to long VM Name in vSphere cloud provider

Dummy VM is used for SPBM policy based provisioning feature of vSphere cloud provider.
Dummy VM name is generated based on kubernetes cluster name and pv name. It can easily go beyond 
vSphere's limitation of 80 characters for vmName.

To solve the long VM name failure hash is used instead of vSphere-k8s-clusterName-PvName

**Which issue this PR fixes** 
https://github.com/vmware/kubernetes/issues/176

**Release note:**
```release-note
None
```

@BaluDontu @divyenpatel @luomiao @tusharnt
2017-08-16 14:57:31 -07:00
Kubernetes Submit Queue
d6c381d5c6 Merge pull request #50779 from apelisse/update-pkg-watch-build
Automatic merge from submit-queue (batch tested with PRs 50061, 48580, 50779, 50722)

Remove BUILD reference to removed files: Fix bazel build

**What this PR does / why we need it**:
Bazel build is broken because a pull-request has removed some go files, but not the BUILD references to these file. Update the go files. I've also created an issue in test-infra(https://github.com/kubernetes/test-infra/issues/4083) as this should have been detected earlier

**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
NONE
```
2017-08-16 14:57:26 -07:00
Kubernetes Submit Queue
8a6aa958dd Merge pull request #48580 from mengqiy/kubectl_i18n
Automatic merge from submit-queue (batch tested with PRs 50061, 48580, 50779, 50722)

move i18n to kubectl/util

Move `pkg/util/i18n` to `pkg/kubectl/util/i18n` per https://github.com/kubernetes/kubernetes/issues/48209#issuecomment-311730681.
This affects kubectl and kubeadm. It should be fine that `kubeadm` depends on `kubectl`.

partially addresses: kubernetes/community#598

```release-note
NONE
```

/assign @apelisse @monopole
2017-08-16 14:57:24 -07:00