Commit Graph

7835 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
8f4aacf6d5 Merge pull request #47136 from smarterclayton/skip_on_not_found
Automatic merge from submit-queue

Skip dynamic configuration of initializers test on alpha disable

Fixes #47133
2017-06-07 13:49:00 -07:00
Kubernetes Submit Queue
24f958d46e Merge pull request #46991 from MrHohn/defer-deleteStaticIP-before-assert
Automatic merge from submit-queue (batch tested with PRs 43005, 46660, 46385, 46991, 47103)

[gke-slow always fails] Defer DeleteGCEStaticIP before asserting error

From https://github.com/kubernetes/kubernetes/issues/46918.

I'm getting close to the root cause: During tests, CreateGCEStaticIP() in fact successfully created static IP, but the parser we wrote in test mistakenly think we failed, probably because the gcloud output format was changed recently (or not). I'm still looking into fixing that.

This PR defer the delete function before asserting the error so that we can stop consistently leaking static IP in every run.

/assign @krzyzacy @dchen1107 

```release-note
NONE
```
2017-06-07 13:31:02 -07:00
Kubernetes Submit Queue
6ee028249b Merge pull request #46385 from rickypai/rpai/host_mapping_node_e2e_test
Automatic merge from submit-queue (batch tested with PRs 43005, 46660, 46385, 46991, 47103)

add e2e node test for Pod hostAliases feature

**What this PR does / why we need it**: adds node e2e test for #45148 

tests requested in https://github.com/kubernetes/kubernetes/issues/43632#issuecomment-298434125

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

@yujuhong @thockin
2017-06-07 13:31:00 -07:00
shashidharatd
25dfe33bdb Auto generated file 2017-06-08 00:02:22 +05:30
shashidharatd
f81c1e6702 Fix cleanupServiceShardLoadBalancer 2017-06-08 00:02:22 +05:30
shashidharatd
605b106d2d Made CleanupGCEResources explicitly take zone parameter 2017-06-08 00:02:22 +05:30
Quinton Hoole
5b5a2e512c Add quinton-hoole to test/federation_e2e/OWNERS 2017-06-07 11:04:24 -07:00
Clayton Coleman
a48ba2873b Skip dynamic configuration of initializers test on alpha disable 2017-06-07 14:00:49 -04:00
Kubernetes Submit Queue
335794674f Merge pull request #46120 from shashidharatd/federation-service-e2e-1
Automatic merge from submit-queue

Federation: create loadbalancer service in tests only if test depends on it

**What this PR does / why we need it**:
Creating LoadBalancer type of service for every test case is kind of expensive and time consuming to provision. So this PR changes the test cases to use LoadBalancer type services only when necessary.

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

**Release note**:
```release-note
NONE
```
cc @kubernetes/sig-federation-pr-reviews 
/assign @madhusudancs
2017-06-07 09:13:04 -07:00
Kubernetes Submit Queue
3b14924904 Merge pull request #47061 from madhusudancs/fed-sync-loop-clause-bug
Automatic merge from submit-queue (batch tested with PRs 46977, 47005, 47018, 47061, 46809)

Directly grab map values instead of using loop-clause variables when setting up federated sync controller tests.

Go's loop-clause variables are allocated once and the items are copied to that variable while iterating through the loop. This means, these variables can't escape the scope since closures are bound to loop-clause variables whose value change during each iteration. Doing so would lead to undesired behavior. For more on this topic see: https://github.com/golang/go/wiki/CommonMistakes

So in order to workaround this problem in sync controller e2e tests, we iterate through the map and copy the map value to a variable inside the loop before using it in closures.

Fixes issue: #47059

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

/assign @marun @shashidharatd @perotinus 

cc @csbell @nikhiljindal 

/sig federation
2017-06-07 08:10:46 -07:00
Kubernetes Submit Queue
e7bb6af46c Merge pull request #47005 from MaciekPytel/add_e2e_setup_time
Automatic merge from submit-queue (batch tested with PRs 46977, 47005, 47018, 47061, 46809)

Fix for cluster-autoscaler e2e failures

This may help with cluster-autoscaler e2e failing in setup if the tests are run before all machines in mig get fully ready.
2017-06-07 08:10:40 -07:00
Dan Winship
a2cb516690 Basic port of NetworkPolicy test to v1 semantics 2017-06-07 09:37:41 -04:00
Dan Winship
bc13aa5e60 Abstract out duplicated cleanup code 2017-06-07 09:37:40 -04:00
Dan Winship
a0a7f0148e Update NetworkPolicy test for v1 API (and use generated client) 2017-06-07 09:37:40 -04:00
Dr. Stefan Schimanski
e2b50ac9b8 client-go: deprecate TPR example and add CRD example 2017-06-07 13:45:58 +02:00
Kubernetes Submit Queue
0613ae5077 Merge pull request #46669 from kow3ns/statefulset-update
Automatic merge from submit-queue (batch tested with PRs 46235, 44786, 46833, 46756, 46669)

implements StatefulSet update

**What this PR does / why we need it**:
1. Implements rolling update for StatefulSets
2. Implements controller history for StatefulSets.
3. Makes StatefulSet status reporting consistent with DaemonSet and ReplicaSet.

https://github.com/kubernetes/features/issues/188

**Special notes for your reviewer**:

**Release note**:
```release-note
Implements rolling update for StatefulSets. Updates can be performed using the RollingUpdate, Paritioned, or OnDelete strategies. OnDelete implements the manual behavior from 1.6. status now tracks 
replicas, readyReplicas, currentReplicas, and updatedReplicas. The semantics of replicas is now consistent with DaemonSet and ReplicaSet, and readyReplicas has the semantics that replicas did prior to this release.
```
2017-06-07 00:27:53 -07:00
Kubernetes Submit Queue
07e4cca7b3 Merge pull request #46833 from wasylkowski/fix-rc-cleanup
Automatic merge from submit-queue (batch tested with PRs 46235, 44786, 46833, 46756, 46669)

Fixed ResourceConsumer.CleanUp to properly clean up non-replication-controller resources and pods

**What this PR does / why we need it**: Without this fix CleanUp does not remove non-replication-controller resources and pods. This leads to pollution that in some cases inadvertently affects what is happening in AfterEachs before the namespace gets deleted.

**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-06-07 00:27:49 -07:00
Kubernetes Submit Queue
25352a7fb5 Merge pull request #46997 from jlowdermilk/no-hr-gcloud
Automatic merge from submit-queue (batch tested with PRs 46997, 47021)

Don't parse human-readable output from gcloud in tests

This is the reason  `[k8s.io] Services should be able to change the type and ports of a service [Slow]` is currently failing on GKE e2e tests. For GKE jobs we run a prerelease version of gcloud, in which the default command output was changed.

gcloud's default output for commands is human readable, and is subject to change. Anything scripting against gcloud should always pass `--format=json|yaml|value(...)`  so you get standardized output.

fixes: #46918
2017-06-06 20:12:16 -07:00
Kubernetes Submit Queue
379a15a478 Merge pull request #46881 from smarterclayton/fixes_to_table_print
Automatic merge from submit-queue (batch tested with PRs 47083, 44115, 46881, 47082, 46577)

Add an e2e test for server side get

Print a better error from the response. Performs validation to ensure it
does not regress in alpha state.

This is tests and bug fixes for https://github.com/kubernetes/community/pull/363

@kubernetes/sig-api-machinery-pr-reviews
2017-06-06 18:48:16 -07:00
Zihong Zheng
23dfe56b53 Make firewall test get tag from config instead of instance and fix multi-zone issue 2017-06-06 17:29:36 -07:00
Zihong Zheng
0acdc89d96 Pipe in GCE master/node tags through flags for e2e test 2017-06-06 17:27:07 -07:00
Random-Liu
1d3979190c Bump up npd version to v0.4.0 2017-06-06 16:30:02 -07:00
Kenneth Owens
1b55f57391 Implements StatefulSet update
Implements history utilities for ControllerRevision in the controller/history package
StatefulSetStatus now has additional fields for consistency with DaemonSet and Deployment
StatefulSetStatus.Replicas now represents the current number of createdPods and StatefulSetStatus.ReadyReplicas is the current number of ready Pods
2017-06-06 12:00:28 -07:00
Kubernetes Submit Queue
6ed4bc7b97 Merge pull request #46828 from cblecker/links-update
Automatic merge from submit-queue (batch tested with PRs 46718, 46828, 46988)

Update docs/ links to point to main site

**What this PR does / why we need it**:
This updates various links to either point to kubernetes.io or to the kubernetes/community repo instead of the legacy docs/ tree in k/k
Pre-requisite for #46813

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

@kubernetes/sig-docs-maintainers @chenopis @ahmetb @thockin
2017-06-06 11:43:18 -07:00
Andrzej Wasylkowski
abb5e6e709 Made tests that create Horizontal Pod Autoscaler delete it after they are done. 2017-06-06 19:59:14 +02:00
Andrzej Wasylkowski
c12f4978c2 Made WaitForReplicas and EnsureDesiredReplicas use PollImmediate and improved logging. 2017-06-06 19:52:34 +02:00
Madhusudan.C.S
28a6578325 Directly grab map values instead of using loop-clause variables when setting up federated sync controller tests.
Go's loop-clause variables are allocated once and the items are copied
to that variable while iterating through the loop. This means, these
variables can't escape the scope since closures are bound to loop-clause
variables whose value change during each iteration. Doing so would lead
to undesired behavior. For more on this topic see:
https://github.com/golang/go/wiki/CommonMistakes

So in order to workaround this problem in sync controller e2e tests, we
iterate through the map and copy the map value to a variable inside the
loop before using it in closures.

Fixes issue: #47059
2017-06-06 10:41:19 -07:00
Yu-Ju Hong
ce57de9a84 Improve the e2e node restart test
This commit includes the following two changes:
 * Move pre-test checks (pods/nodes ready) to BeforeEach() so that it's
   clear whether the test has run or not.
 * Dumping logs for unready pods.
2017-06-06 09:30:17 -07:00
Kubernetes Submit Queue
3338d784ba Merge pull request #46899 from mindprince/issue-46889-node-e2e-gpu-cos-fix
Automatic merge from submit-queue (batch tested with PRs 46897, 46899, 46864, 46854, 46875)

Wait for cloud-init to finish before starting tests.

This fixes #46889.


**Release note**:
```release-note
NONE
```
2017-06-06 05:22:42 -07:00
Kubernetes Submit Queue
c0407972e9 Merge pull request #46938 from shyamjvs/no-reprinting-gcloud-result
Automatic merge from submit-queue

Avoid double printing output of gcloud commands in kubemark

Just noticed we were unnecessarily echoing the result again.

/cc @wojtek-t
2017-06-06 04:07:55 -07:00
Kubernetes Submit Queue
8da89aeb00 Merge pull request #46112 from sttts/sttts-unversioned-to-meta
Automatic merge from submit-queue

apimachinery: move unversioned registration to metav1

Follow-up from the discussions in https://github.com/kubernetes/kubernetes/pull/43027:

We need `Status` as unversioned type which is hardcoded to `GroupVersion{Group: "", Version: "v1"}`. If the core group is not in the scheme, we miss `Status`.

Fixing https://github.com/kubernetes/kubernetes/issues/47030.
2017-06-06 03:13:01 -07:00
Kubernetes Submit Queue
cb681321c7 Merge pull request #45686 from jingxu97/May/emptyDir
Automatic merge from submit-queue

Add EmptyDir volume capacity isolation

This PR adds the support for isolating the emptyDir volume use. If user
sets a size limit for emptyDir volume, kubelet's eviction manager monitors its usage
and evict the pod if the usage exceeds the limit.

This feature is part of local storage capacity isolation and described in the proposal kubernetes/community#306

**Release note**:

```release-note
Alpha feature: allows users to set storage limit to isolate EmptyDir volumes. It enforces the limit by evicting pods that exceed their storage limits  
```
2017-06-05 23:08:58 -07:00
Christoph Blecker
1bdc7a29ae Update docs/ URLs to point to proper locations 2017-06-05 22:13:54 -07:00
Kubernetes Submit Queue
a552ee61a0 Merge pull request #46672 from smarterclayton/initializer_with_config
Automatic merge from submit-queue (batch tested with PRs 46967, 46992, 43338, 46717, 46672)

Select initializers from the dynamic configuration

Continues #36721

kubernetes/features#209
2017-06-05 20:27:50 -07:00
Kubernetes Submit Queue
356d4e8ce2 Merge pull request #44883 from ravigadde/bind-1.7
Automatic merge from submit-queue (batch tested with PRs 44883, 46836, 46765, 46683, 46050)

Added Bind method to Scheduler Extender

- only one extender can support the bind method
- if an extender supports bind, scheduler delegates the pod binding to the extender



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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-06-05 18:43:06 -07:00
Kubernetes Submit Queue
f842bb9987 Merge pull request #46802 from shyamjvs/npd-kernel-config
Automatic merge from submit-queue (batch tested with PRs 46972, 42829, 46799, 46802, 46844)

Add KernelDeadlock condition to hollow NPD

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

/cc @wojtek-t @gmarek
2017-06-05 17:46:55 -07:00
Kubernetes Submit Queue
1c64f31fdb Merge pull request #42829 from msau42/multizone_pv_tests
Automatic merge from submit-queue (batch tested with PRs 46972, 42829, 46799, 46802, 46844)

Multizone static pv test

**What this PR does / why we need it**:
Adds an e2e test for checking that pods get scheduled to the same zone as statically created PVs.  This tests the PersistentVolumeLabel admission controller, which adds zone and region labels when PVs are created.  As part of this, I also had to make changes to volume test utility code to pass in a zone parameter for creating PDs, and also had to add an argument to the e2e test program to accept a list of zones.

Fixes #46995

**Special notes for your reviewer**:
It's probably easier to review each commit separately.

**Release note**:

NONE
2017-06-05 17:46:49 -07:00
Maciej Pytel
ecc33fd8c2 Wait for instances boot in cluster-autoscaler e2e 2017-06-06 01:46:57 +02:00
Kubernetes Submit Queue
4faf7f1f4c Merge pull request #46663 from nicksardo/gce-internallb
Automatic merge from submit-queue (batch tested with PRs 46550, 46663, 46816, 46820, 46460)

[GCE] Support internal load balancers

**What this PR does / why we need it**:
Allows users to expose K8s services externally of the K8s cluster but within their GCP network. 

Fixes #33483

**Important User Notes:**
- This is a beta feature. ILB could be enabled differently in the future. 
- Requires nodes having version 1.7.0+ (ILB requires health checking and a health check endpoint on kube-proxy has just been exposed)
- This cannot be used for intra-cluster communication. Do not call the load balancer IP from a K8s node/pod.  
- There is no reservation system for private IPs. You can specify a RFC 1918 address in `loadBalancerIP` field, but it could be lost to another VM or LB if service settings are modified.
- If you're running an ingress, your existing loadbalancer backend service must be using BalancingMode type `RATE` - not `UTILIZATION`. 
  - Option 1: With a 1.5.8+ or 1.6.4+ version master, delete all your ingresses, and re-create them.
  - Option 2: Migrate to a new cluster running 1.7.0. Considering ILB requires nodes with 1.7.0, this isn't a bad idea.
  - Option 3: Possible migration opportunity, but use at your own risk. More to come later.


**Reviewer Notes**:
Several files were renamed, so github thinks ~2k lines have changed. Review commits one-by-one to see the actual changes.

**Release note**:
```release-note
Support creation of GCP Internal Load Balancers from Service objects
```
2017-06-05 16:43:41 -07:00
Jeff Lowdermilk
ac1ce7f1cd Don't parse human-readable output from gcloud in tests 2017-06-05 16:15:57 -07:00
Clayton Coleman
772ab8e1b4 Load initializers from dynamic config
Handle failure cases on startup gracefully to avoid causing cascading
errors and poor initialization in other components. Initial errors from
config load cause the initializer to pause and hold requests. Return
typed errors to better communicate failures to clients.

Add code to handle two specific cases - admin wants to bypass
initialization defaulting, and mirror pods (which want to bypass
initialization because the kubelet owns their lifecycle).
2017-06-05 19:12:41 -04:00
Zihong Zheng
d455fad134 Defer DeleteGCEStaticIP before asserting error 2017-06-05 14:24:32 -07:00
Jing Xu
0b13aee0c0 Add EmptyDir Volume and local storage for container overlay Isolation
This PR adds two features:
1. add support for isolating the emptyDir volume use. If user
sets a size limit for emptyDir volume, kubelet's eviction manager
monitors its usage
and evict the pod if the usage exceeds the limit.
2. add support for isolating the local storage for container overlay. If
the container's overly usage exceeds the limit defined in container
spec, eviction manager will evict the pod.
2017-06-05 12:05:48 -07:00
Rohit Agarwal
1561f55c4c Wait for cloud-init to finish before starting tests.
This fixes #46889.
2017-06-05 10:50:24 -07:00
Ravi Gadde
7f179bf936 Added Bind method to Scheduler Extender
- only one extender can support the bind method
- if an extender supports bind, scheduler delegates the pod binding to the extender
2017-06-05 09:44:53 -07:00
Jeff Peeler
08a59530e1 Allow pods to opt out of PodPreset mutation
An annotation in the pod spec of the form:
podpreset.admission.kubernetes.io/exclude: "true"
Will cause the admission controller to skip manipulating the pod spec,
no matter the labelling.

The annotation for a podpreset acting on a pod has also been slightly
modified to contain a podpreset prefix:
podpreset.admission.kubernetes.io/podpreset-{name} = resource version

Fixes #44161
2017-06-05 11:56:30 -04:00
Kubernetes Submit Queue
6fef1a1deb Merge pull request #46810 from vishh/gpu-cos-image-validation
Automatic merge from submit-queue (batch tested with PRs 46734, 46810, 46759, 46259, 46771)

Update the COS kernel sha for node e2e gpu installer

cc @mindprince

Relevant COS image - https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/jenkins/image-config-serial.yaml#L19
2017-06-05 06:51:23 -07:00
Kubernetes Submit Queue
d3146080b4 Merge pull request #46804 from verult/gce-pdflake
Automatic merge from submit-queue (batch tested with PRs 45871, 46498, 46729, 46144, 46804)

PD e2e test: Ready node check now uses the most up-to-date node count.

Follow-up to PR #46746 

<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access)
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`.
2017-06-05 03:06:29 -07:00
Shyam Jeedigunta
163f1de5ed Avoid double printing output of gcloud commands in kubemark 2017-06-04 20:07:36 +02:00
Shyam Jeedigunta
b655953e21 Enable DefaultTolerationSeconds and PodPreset admission plugins for kubemark 2017-06-04 19:52:57 +02:00