Commit Graph

3094 Commits

Author SHA1 Message Date
Girish Kalele
f64c052858 Revert "Scheduledjob e2e" 2016-08-12 16:12:19 -07:00
Kubernetes Submit Queue
ac1f8bc665 Merge pull request #26027 from soltysh/scheduledjob_e2e
Automatic merge from submit-queue

Scheduledjob e2e

@erictune last element of the scheduledjob puzzle. I think we'll iterate on this once we have all the puzzles in place. This is one of those things that will be allowed to merge after code freeze.

```release-note
* Introducing ScheduledJobs as described in [the proposal](https://github.com/kubernetes/kubernetes/blob/master/docs/proposals/scheduledjob.md) as part of `batch/v2alpha1` version (experimental feature).
```

[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-08-12 13:27:32 -07:00
Kubernetes Submit Queue
fc4d015a4e Merge pull request #30488 from Random-Liu/extend-wait-time-for-container-probe-test
Automatic merge from submit-queue

Extend the wait time to 2*time.Minute for liveness check test.

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

https://github.com/kubernetes/kubernetes/pull/29814 changes the wait time to 1 minute, which is not enough. That's what causes the flake.

The test expected the container to be restarted, and the container was indeed restarted but it took about 1 minute:
```
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:02:35 -0700 PDT - event for liveness-exec: {default-scheduler } Scheduled: Successfully assigned liveness-exec to e2e-gce-agent-pr-38-0-minion-group-bv95
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:02:36 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Pulled: Container image "gcr.io/google_containers/busybox:1.24" already present on machine
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:02:36 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Created: Created container with docker id cf4e8e60535e
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:02:36 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Started: Started container with docker id cf4e8e60535e
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:02:55 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Unhealthy: Liveness probe failed: 
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:03:26 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Killing: Killing container with docker id cf4e8e60535e: pod "liveness-exec_e2e-tests-container-probe-b1wip(a1f856fc-5e07-11e6-a7e1-42010af00002)" container "liveness" is unhealthy, it will be killed and re-created.
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:03:26 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Created: Created container with docker id 0b18537dc794
Aug  9 01:03:40.696: INFO: At 2016-08-09 01:03:26 -0700 PDT - event for liveness-exec: {kubelet e2e-gce-agent-pr-38-0-minion-group-bv95} Started: Started container with docker id 0b18537dc794
```

This PR recovers the wait time to the original 2 * time. Mark P0 to match the corresponding issue.

@fejta
2016-08-12 12:07:50 -07:00
Maciej Szulik
783df12205 ScheduledJob e2e 2016-08-12 17:06:50 +02:00
Marcin Wielgus
45b8061302 Federation e2e test util using clientset 1.4 2016-08-12 08:25:16 +02:00
Kubernetes Submit Queue
53331f7a60 Merge pull request #30397 from madhusudancs/fed-e2e-switch-release_1_4-client
Automatic merge from submit-queue

Remove unversioned federation client, clientset and versioned release_1_3 clientset and all their accesses in e2e tests. Switch everything to federation release_1_4 external client.

cc @kubernetes/sig-cluster-federation

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30397)
<!-- Reviewable:end -->
2016-08-11 17:41:43 -07:00
Random-Liu
671229c450 Extend the wait time to 2*time.Minute for liveness check test. 2016-08-11 17:35:39 -07:00
Zhou Fang
ad81b6da80 migrate UsageToPerfDataWithLabels to perf_util.go 2016-08-11 11:18:00 -07:00
Maciej Szulik
be928af9b3 Allow setting GroupVersion in e2e tests 2016-08-11 13:06:18 +02:00
Kubernetes Submit Queue
035ec518af Merge pull request #28387 from caesarxuchao/gc-latency-measure
Automatic merge from submit-queue

[GarbageCollector] measure latency

First commit is #27600.

In e2e tests, I measure the average time an item spend in the eventQueue(~1.5 ms), dirtyQueue(~13ms), and orphanQueue(~37ms). There is no stress test in e2e yet, so the number may not be useful.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/28387)
<!-- Reviewable:end -->
2016-08-11 02:33:55 -07:00
Madhusudan.C.S
a91182ae3c Remove unversioned federation client, clientset and versioned release_1_3 clientset and all their accesses in e2e tests. Switch everything to federation release_1_4 external client. 2016-08-10 13:53:43 -07:00
Chao Xu
41572cb22d add metrics to gc 2016-08-10 12:45:06 -07:00
Kubernetes Submit Queue
42553b92ae Merge pull request #28693 from mtaufen/eviction
Automatic merge from submit-queue

Node e2e memory eviction test

This tests memory evictions.
See related issue #28619 and fix to cadvisor https://github.com/google/cadvisor/pull/1380.

cc @vishh @derekwaynecarr @timstclair

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/28693)
<!-- Reviewable:end -->
2016-08-10 12:39:58 -07:00
Kubernetes Submit Queue
8da4d96839 Merge pull request #30112 from nikhiljindal/federationIngressAPI
Automatic merge from submit-queue

Adding ingress resource to federation apiserver

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

cc @kubernetes/sig-cluster-federation

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30112)
<!-- Reviewable:end -->
2016-08-10 00:08:41 -07:00
Kubernetes Submit Queue
ccb9b2af1d Merge pull request #30084 from wongma7/pv-gid-e2e
Automatic merge from submit-queue

Add test for supplemental gid annotation to pv e2e test

Test for feature added in #29119. Adds the annotation to the pv in the PersistentVolumes e2e test. It tests it by checking the output of 'id -G.' Also tests the actual use case of an nfs server by using an nfs server image 'volume-nfs-gid', modified slightly from 'volume-nfs' to have some permissions set.

@pmorie

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30084)
<!-- Reviewable:end -->
2016-08-09 22:56:34 -07:00
Kubernetes Submit Queue
f53a35fb76 Merge pull request #29147 from caesarxuchao/cut-client-repo-staging
Automatic merge from submit-queue

Cut the client repo, staging it in the main repo

Tracking issue: #28559
ref: https://github.com/kubernetes/kubernetes/pull/25978#issuecomment-232710174

This PR implements the plan a few of us came up with last week for cutting client into its own repo:
1. creating "_staging" (name is tentative) directory in the main repo, using a script to copy the client and its dependencies to this directory
2. periodically publishing the contents of this staging client to k8s.io/client-go repo
3. converting k8s components in the main repo to use the staged client. They should import the staged client as if the client were vendored. (i.e., the import line should be `import "k8s.io/client-go/<pacakge name>`). This requirement is to ease step 4.
4. In the future, removing the staging area, and vendoring the real client-go repo.

The advantage of having the staging area is that we can continuously run integration/e2e tests with the latest client repo and the latest main repo, without waiting for the client repo to be vendored back into the main repo. This staging area will exist until our test matrix is vendoring both the client and the server.

In the above plan, the tricky part is step 3. This PR achieves it by creating a symlink under ./vendor, pointing to the staging area, so packages in the main repo can refer to the client repo as if it's vendored. To prevent the godep tool from messing up the staging area, we export the staged client to GOPATH in hack/godep-save.sh so godep will think the client packages are local and won't attempt to manage ./vendor/k8s.io/client-go.

This is a POC. We'll rearrange the directory layout of the client before merge.

@thockin @lavalamp @bgrant0607 @kubernetes/sig-api-machinery

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29147)
<!-- Reviewable:end -->
2016-08-09 17:12:14 -07:00
Matthew Wong
a7145c013e Add test for supplemental gid annotation to pv e2e test 2016-08-09 18:23:06 -04:00
Chao Xu
51c0271e0a added a e2e test that uses the staged client; made necessary changes to gcp auth plugin to pass the gke tests 2016-08-09 14:07:54 -07:00
Kubernetes Submit Queue
be6a9fbb4e Merge pull request #30234 from intelsdi-x/create_annotation_map_if_doesnt_exist
Automatic merge from submit-queue

In AddOrUpdateTaintOnNode create annotation map if its nil

If node didn't have annotations both SchedulerPredicates taints-toleration tests were failing.

@gmarek PTAL

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/30234)
<!-- Reviewable:end -->
2016-08-08 22:13:22 -07:00
Kubernetes Submit Queue
4ef423bfb1 Merge pull request #29814 from Random-Liu/move-pods-test-into-common
Automatic merge from submit-queue

E2E & Node E2E: Move pods test into common directory

This is the 4th part of #29494.

For #29081.
Based on #29092, #29806.

The first commit is squash of all dependent commits. Please only review the last 2 commits.

The 2nd commit migrates pods.go to `common/pods.go`.
Notice that the test `should be schedule with cpu and memory limits` is removed because:
* It doesn't make sense at the node level.
* It should have been tested in scheduler_predicates at the cluster level https://github.com/kubernetes/kubernetes/blob/master/test/e2e/scheduler_predicates.go#L264

The 3rd commit splits pods.go into several pods (nothing is changed, only move code):
* **Liveness probe test:** Moved into `container_probe.go`.
* **Init container test:** Moved into a new file `init_container.go`.
* **Others:** Still in pods.go

@vishh @timstclair

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29814)
<!-- Reviewable:end -->
2016-08-08 21:03:21 -07:00
Kubernetes Submit Queue
4ef36882fd Merge pull request #29935 from janetkuo/deployment-scale-rollout-test
Automatic merge from submit-queue

Deployment status validity should be checked in scaled rollout e2e test

Follow up #29889 

@kubernetes/deployment

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.kubernetes.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.kubernetes.io/reviews/kubernetes/kubernetes/29935)
<!-- Reviewable:end -->
2016-08-08 19:56:20 -07:00
Michael Taufen
736f1cb7c3 Node e2e memory eviction test
This test creates three pods with QoS of besteffort, burstable, and
guaranteed, respectively, which each contain a container that tries to
consume almost all the available memory at a rate of about 12Mi/10sec.

The expectation is that eviction will be initiated when the hard
memory.available<250Mi threshold is triggered, and that eviction will proceed
in the order of besteffort, then burstable. Since guaranteed pods should
only be evicted if something charged to the host uses more resources
than were reserved for it, we currently end the test when besteffort and
burstable have both been evicted.

Note that this commit also sets --eviction-hard=memory.available<250Mi
to enable eviction during tests.
2016-08-08 15:59:51 -07:00
Pawel Skrzynski
292cea1a18 In AddOrUpdateTaintOnNode create annotation map if its nil 2016-08-08 19:48:07 +02:00
Pawel Skrzynski
0c3fb42e9f Use GetMasterAndWorkerNodesOrDie in schdeuler predicates tests 2016-08-08 14:45:57 +02:00
Kubernetes Submit Queue
eb52d55dbd Merge pull request #30141 from sttts/sttts-affinity-logic
Automatic merge from submit-queue

e2e flake: real fix of PodAntiAffinity test

The fix in PR https://github.com/kubernetes/kubernetes/pull/30135 was wrong in using a wrong test condition for an already broken test.

### Summary

The test tries to launch a pod with an anti-affinity annotation, waits 10
seconds and then checks that it is still pending.

But the anti-affinity annotation does not forbid to launch that pod on just
another node that does not have the zone label at all.

This commit changes this behavior by labeling two nodes with the zone label
and then forcing the pod to be launched on one of those two nodes.

**I assume here that a non-existing label is considered as a different label value.**

  Fixes #30078
2016-08-06 21:23:47 -07:00
Kubernetes Submit Queue
4d70d9f3de Merge pull request #30114 from Random-Liu/use-framework-report-dir
Automatic merge from submit-queue

Use report-dir in test framework instead.

We already have `report-dir` option in framework test context.
The node e2e framework should use it as well.

/cc @ronnielai
2016-08-05 23:31:28 -07:00
Kubernetes Submit Queue
ea00445069 Merge pull request #29863 from ronnielai/system-test1
Automatic merge from submit-queue

Added an node e2e test for pod evictions due to disk pressure.

#29800
2016-08-05 21:34:11 -07:00
Kubernetes Submit Queue
4bb5fdc47f Merge pull request #29809 from Random-Liu/move-more-test-into-common
Automatic merge from submit-queue

E2E & Node E2E: Move configmap, docker_containers, downward_api, expansion and secrets test into common directory.

This is the 3rd part of #29494.

For #29081.
Based on #29092, #29806.

The first commit is squash of all dependent commits. Please only review the second commit.

The second PR added 17 lines.

@vishh @timstclair
2016-08-05 20:16:32 -07:00
Ron Lai
adf6b6ddf0 Added an node e2e test for pod evictions due to disk pressure. 2016-08-05 17:53:06 -07:00
Kubernetes Submit Queue
ba26b22753 Merge pull request #30168 from mtaufen/test-e2e-framework-pods-name-fix
Automatic merge from submit-queue

Bug fix: Use p.Name instead of pod.Name

For example, if you used `pod.GenerateName`, `pod.Name` might be the empty
string while `p.Name` contains the actual name of your pod. Thus passing
`pod.Name` can result in a `resource name may not be empty` error.
2016-08-05 17:32:03 -07:00
nikhiljindal
d66037b02f Adding e2e test for creating and deleting ingress from apiserver 2016-08-05 16:09:59 -07:00
Michael Taufen
73f2c55e0a Bug fix: Use p.Name instead of pod.Name
For example, if you used pod.GenerateName, pod.Name might be the empty
string while p.Name contains the actual name of your pod. Thus passing
pod.Name can result in a `resource name may not be empty` error.
2016-08-05 15:03:50 -07:00
Random-Liu
61fc27e3cb Mark "downward API volume should update annotations / labels on
modification" as flaky.
2016-08-05 14:06:34 -07:00
Janet Kuo
242c11b580 Deployment status validity should be checked in scaled rollout e2e test 2016-08-05 10:32:24 -07:00
bindata-mockuser
09a4b388ad Fix anti-affinity e2e test
The test tries to launch a pod with an anti-affinity annotation, waits 10
seconds and then checks that it is still pending.

But the anti-affinity annotation does not forbid to launch that pod on just
another node that does not have the zone label at all.

This commit changes this behavior by labeling two nodes with the zone label
and then forcing the pod to be launched on one of those two nodes.
2016-08-05 16:32:50 +02:00
Wojciech Tyczynski
7eb52e48d9 Fix PodAffinity test 2016-08-05 12:28:05 +02:00
Random-Liu
1a33dffa17 Move configmap, docker_containers, downward_api, expansion and secrets
test into common directory.
2016-08-04 23:52:05 -07:00
Random-Liu
00b405d7e4 Use report-dir in test framework instead. 2016-08-04 23:40:17 -07:00
Kubernetes Submit Queue
881ca36800 Merge pull request #29807 from Random-Liu/move-volume-test
Automatic merge from submit-queue

E2E & NodeE2E: Move host_path, downwardapi_volume and empty_dir into common directory.

This is the second part of #29494.

For #29081.
Based on #29092, #29806.

The first commit is squash of all dependent commits. Please only review the second commit.

The second PR is only 20 lines of change.

@vishh @timstclair
2016-08-04 23:38:39 -07:00
Kubernetes Submit Queue
e4f70cb83f Merge pull request #30107 from Random-Liu/fix-node-e2e-junit
Automatic merge from submit-queue

Node E2E: Change the node e2e junit file name to junit_{image-name}{test-node-number}.xml

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

Reuse the `report-prefix` in e2e test framework. Now the junit file will be like: `junit_{image-name}{test-node-number}.xml`.

Mark P2 to fix the test result.

/cc @rmmh
2016-08-04 23:02:50 -07:00
Kubernetes Submit Queue
e7d01097dc Merge pull request #29971 from caesarxuchao/fix-kubectl-rolling-update-with-gc
Automatic merge from submit-queue

[GarbageCollector] Fix kubectl rolling-update to work with GC

This changes the order of the [Rename()](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/rolling_updater.go#L532) function. After the change, Rename() first deletes the old RC and orphans its pods, then creates the new RC, which will then have a chance to adopt the orphaned pods.

This also fixes the "should support rolling-update to same image" [test](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/kubectl.go#L915) when the garbage collector is on.

Here is the detailed explanation on why the test would have failed:
`kubectl rolling-update` will [rename](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubectl/rolling_updater.go#L532-L546) the RC. It first creates the an identical RC (including spec.selectors) with the new name, then it deletes the existing RC. When GC is turned on, the newly created RC cannot adopt the existing pod, because it has a controllerRef pointing to the exising RC, so the new RC will create new pods and expect to see the creation. However, the new RC and the old RC have the same selector, so sometimes the old RC, instead of the new RC, has its [expectation lowered](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/replication/replication_controller.go#L346-L362), the new RC's expectation will stuck forever. The e2e test then times out when executing `kubectl delete newRC`, because there is the new RC will not scale down as its expectation is not fulfilled.

A side-note, we should fix [rm.getPodController()](https://github.com/kubernetes/kubernetes/blob/master/pkg/controller/replication/replication_controller.go#L346) to respect pod's controllerref, that will prevent similar bugs.

Also note that an old version `kubectl rolling-update` will not work with the GC. We cannot fix that.
2016-08-04 20:48:10 -07:00
Kubernetes Submit Queue
1cd07a276c Merge pull request #29138 from kshafiee/pr-27789
Automatic merge from submit-queue

federation: Adding secret API

Adding secret API to federation-apiserver and updating the federation client to include secrets
2016-08-04 18:11:23 -07:00
Random-Liu
95d0831284 Move host_path, downwardapi_volume and empty_dir into common directory. 2016-08-04 17:21:25 -07:00
Random-Liu
7fd2319ca7 Change the node e2e junit file name to
junit_{image-name}{test-node-number}.xml
2016-08-04 15:50:35 -07:00
Robert Rati
fb72b50135 Added test to density that will run maximum capacity pods on all nodes 2016-08-04 11:46:22 -04:00
Kubernetes Submit Queue
b9e808622d Merge pull request #27792 from jeffvance/e2e-prebind
Automatic merge from submit-queue

pv e2e refactor and pre-bind test

refactored persistentvolume e2e so that multiple It() tests can be run. Added one test case for pre-binding, but the overall structure of the test should allow additional test cases to be more easily added.
2016-08-04 05:26:43 -07:00
Kubernetes Submit Queue
10b0f58f51 Merge pull request #30060 from gmarek/schedulerPredicates-json
Automatic merge from submit-queue

Fix JSON-based scheduler predicates tests

Fixes two completely broken tests. cc @kevin-wangzefeng @jayunit100
2016-08-04 02:55:55 -07:00
Kubernetes Submit Queue
05b12d4656 Merge pull request #30058 from wojtek-t/increase_namespaces_in_load
Automatic merge from submit-queue

Increase number of namespaces in load test

Ref #27595
2016-08-04 02:23:35 -07:00
gmarek
2a0d3fbcfb Fix JSON-based scheduler predicates tests 2016-08-04 10:55:27 +02:00
Kubernetes Submit Queue
5273ac9b94 Merge pull request #29912 from wojtek-t/enable_pod_affinity
Automatic merge from submit-queue

Enable PodAffinity by default in scheduler

Ref #26144

@gmarek - FYI
2016-08-04 01:51:17 -07:00