Commit Graph

4739 Commits (72524e45b5c09a27e1e71eca0e78102b81c8481b)

Author SHA1 Message Date
Kubernetes Submit Queue 4c92a7f52f Merge pull request #31476 from janetkuo/fix-sj-finished-job-warning
Automatic merge from submit-queue

Fix the bug that SJ sees finished jobs as unexpected

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

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

**Special notes for your reviewer**:

**Release note**:
<!--  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`. 
-->
```release-note
NONE
```

cc @soltysh @erictune
2016-08-26 20:20:21 -07:00
Kubernetes Submit Queue 60f978de07 Merge pull request #30316 from caesarxuchao/debug-cascading-deletion
Automatic merge from submit-queue

[GarbageCollector] Increase log verbosity for Garbage collector tests

I cannot reproduce the flake of GC locally, see https://github.com/kubernetes/kubernetes/issues/28713#issuecomment-237842105, so I increased the log verbosity for Garbage collector tests.
2016-08-26 18:09:36 -07:00
bindata-mockuser 36d4c1cac2 Avoid disk eviction node e2e test using up all the disk space 2016-08-26 16:26:35 -07:00
Chao Xu 9ac91e5172 debugging gc 2016-08-26 15:58:33 -07:00
Michael Taufen d0f84dd4e7 podName must be lowercase 2016-08-26 15:12:34 -07:00
bprashanth 43022591d1 Get network name via e2e environment. 2016-08-26 13:31:08 -07:00
Kubernetes Submit Queue 9a093276ea Merge pull request #31475 from vishh/celery-example-broken
Automatic merge from submit-queue

Delete the broken Celery+RabbitMQ example

The celery container used in the example is broken and does not come up
on most distros. The e2e test that was validating this example was not
detecting the fact the celery pod was crash looping. 
I attempted to fix the celery container, but it proved to be tedious.
The proposed fix is to update the glibc version to >= 2.23. In this case
it requires updating the python docker image and the celery base image.

https://github.com/kubernetes/kubernetes/issues/31456
has more details. 

I'm deleting the example instead of marking it as broken because a user
might overlook the broken warning and it should be trivial to revert
this PR if someone can fix the celery container.
2016-08-26 13:27:48 -07:00
Avesh Agarwal db74d4dbc2 Fix downward api tests to output node allocatable not node capacity 2016-08-26 16:13:24 -04:00
Minhan Xia 69e540e634 bump cni to 9d5e6e6 2016-08-26 13:13:24 -07:00
Michael Taufen b9ad337bbd Rename ConnectToDockerOrDie to CreateDockerClientOrDie
This function does not actually attempt to connect to the docker daemon,
it just creates a client object that can be used to do so later. The old
name was confusing, as it implied that a failure to touch the docker daemon
could cause program termination (rather than just a failure to create the
client).
2016-08-26 11:21:07 -07:00
Michael Taufen aa1d273584 Wait for the memory pressure condition to be absent before finishing the memory eviction test 2016-08-26 10:15:28 -07:00
Matthew Wong 3cde3c5e88 Bump nfs server image tag in pv e2e 2016-08-26 12:31:37 -04:00
Eric Paris 6f90869996 Merge pull request #31452 from jeffmendoza/cleanup-docs-yamls
Removed non-md files from docs. Moved doc yamls to test/fixtures.
2016-08-26 12:17:12 -04:00
Dawn Chen 24e81af7b3 Revert "Avoid disk eviction node e2e test using up all the disk space" 2016-08-26 08:59:42 -07:00
Kubernetes Submit Queue cce68024e4 Merge pull request #31391 from ronnielai/container-gc
Automatic merge from submit-queue

Avoid disk eviction node e2e test using up all the disk space
2016-08-26 05:25:53 -07:00
Piotr Szczesniak 2fb43eb68c Renamed influxdb to influxdata in Godeps 2016-08-26 14:07:51 +02:00
Kubernetes Submit Queue 83fa5dff5d Merge pull request #31508 from wojtek-t/grab_etcd_logs_from_kubemark
Automatic merge from submit-queue

Grab etcd logs from kubemark & retry etcd starts to avoid image pull errors

Ref #31105

@gmarek
2016-08-26 04:00:46 -07:00
Kubernetes Submit Queue 0d6d0603e5 Merge pull request #31443 from caesarxuchao/enalbe-gc-in-tests
Automatic merge from submit-queue

Enable gc by default in more tests

I think this should only affect the 100-node test.

cc @lavalamp
2016-08-26 03:19:44 -07:00
Wojciech Tyczynski 752f414905 Store logs from etcd in kubemark 2016-08-26 11:46:02 +02:00
Wojciech Tyczynski 52498e6050 Retry etcd starting in kubemark 2016-08-26 11:46:02 +02:00
Kubernetes Submit Queue c2440221c4 Merge pull request #31500 from wojtek-t/tweak_resource_limits
Automatic merge from submit-queue

Tweak resource constraints in scalability tests [flaky tests fix]

Ref #31105
2016-08-26 02:34:49 -07:00
Kubernetes Submit Queue a9754114a5 Merge pull request #31172 from bprashanth/nginxe2e
Automatic merge from submit-queue

Nginx ingress e2es

Runs the basic ingress conformance suite: https://github.com/kubernetes/kubernetes/blob/master/test/e2e/ingress_utils.go#L85
2016-08-26 01:53:14 -07:00
Wojciech Tyczynski c106646d32 Tweak resource constraints in scalability tests 2016-08-26 10:19:45 +02:00
Kubernetes Submit Queue 8705a41c56 Merge pull request #30253 from AdoHe/fix_nodeport
Automatic merge from submit-queue

Allow services which use same port, different protocol to use the same nodePort for both

fix #20092

@thockin @smarterclayton ptal.
2016-08-25 23:16:03 -07:00
Kubernetes Submit Queue 1184800cbb Merge pull request #30730 from janetkuo/prevent-overlapping-deployment
Automatic merge from submit-queue

Handle overlapping deployments gracefully

Fixes #30028
2016-08-25 21:50:56 -07:00
Matthew Wong 1d6dbdd9d2 Use PV shared informer in PV controller 2016-08-25 21:55:23 -04:00
Chao Xu 10fa1ab245 make the gc e2e test more strict 2016-08-25 17:33:02 -07:00
Kubernetes Submit Queue 36a6aee27f Merge pull request #30931 from Clarifai/ext-svc-ref-dns
Automatic merge from submit-queue

Add ExternalName kube-dns e2e test

ExternalName allows kubedns to return CNAME records for external
services. No proxying is involved.

Built on top of and includes #30599 

See original issue at
https://github.com/kubernetes/kubernetes/issues/13748

Feature tracking at
https://github.com/kubernetes/features/issues/33

The e2e test is at least as comprehensive as the one for headless services (namely, only to some degree)

```release-note
Add ExternalName services as CNAME references to external ones
```
2016-08-25 17:23:01 -07:00
Vishnu kannan d4e07f917d Removing the test that validates celery+rabbitmq
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-08-25 17:15:09 -07:00
Janet Kuo fbe734ee47 SJ e2e test for unexpected events 2016-08-25 17:01:22 -07:00
AdoHe 10440ed47d fix same node port different protocols conflict issue 2016-08-26 07:36:45 +08:00
Tim St. Clair a5b7212453
Promote AppArmor annotations to beta 2016-08-25 15:40:32 -07:00
Jeff Mendoza 95b73058d2 Removed non-md files from docs. Moved doc yamls to test/fixtures.
Most of the contents of docs/ has moved to kubernetes.github.io.
Development of the docs and accompanying files has continued there, making
the copies in this repo stale. I've removed everything but the .md files
which remain to redirect old links. The .yaml config files in the docs
were used by some tests, these have been moved to test/fixtures/doc-yaml,
and can remain there to be used by tests or other purposes.
2016-08-25 15:09:27 -07:00
Kubernetes Submit Queue 863dd10ae4 Merge pull request #30540 from Random-Liu/refactor-node-e2e-framework
Automatic merge from submit-queue

Node Conformance Test: Refactor node e2e framework

For #30122, #30174.
Based on #30348.

**Please only review the last 3 commits.**

This PR is part of our roadmap to package node conformance test.
The 1st commit is from #30348, it removed unnecessary dependencies in the node e2e test framework, because we've statically linked these dependencies.

The PR refactored the node e2e framework. Moving different utilities into different packages under `pkg/`.

We need to do this because:
1) Files like e2e_remote.go and e2e_build.go should only be used by runner, but they were compiled into the test suite because they were placed in the same package. The worst thing is that it will introduce some never used flags in the test suite binary.
2) Make the directory structure more clear. Only test should be placed in `test/e2e_node`, other utilities should be placed in different packages in `pkg/`.

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing
2016-08-25 14:06:56 -07:00
Kubernetes Submit Queue 20e078fdb7 Merge pull request #31426 from mwielgus/ns-e2e-fix3
Automatic merge from submit-queue

Use deleteTimestamp in federated ns e2e tests

Fixes: #31317
2016-08-25 11:56:35 -07:00
Jess Frazelle e39acca2d9
test/e2e: fix flake for on delete on namespace
Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-08-25 11:47:37 -07:00
Girish Kalele 419e2241da E2E tests for the Source IP Preservation for LoadBalancers 2016-08-25 11:02:41 -07:00
Chao Xu 655e358418 enable gc by default in tests 2016-08-25 10:25:17 -07:00
Marcin Wielgus e67c6a750f Handle deleteTimestamp in federated ns e2e tests 2016-08-25 18:36:48 +02:00
Rudi Chiarito 1e7120f02c Implement ExternalName in kube-dns e2e tests 2016-08-25 09:29:24 -04:00
Kubernetes Submit Queue 4ddfc4849a Merge pull request #27180 from sttts/sysctl-implementation
Automatic merge from submit-queue

Add sysctl support

Implementation of proposal https://github.com/kubernetes/kubernetes/pull/26057, feature  https://github.com/kubernetes/features/issues/34

TODO:
- [x] change types.go
- [x] implement docker and rkt support
- [x] add e2e tests
- [x] decide whether we want apiserver validation
- ~~[ ] add documentation~~: api docs exist. Existing PodSecurityContext docs is very light and links back to the api docs anyway: 6684555ed9/docs/user-guide/security-context.md
- [x] change PodSecurityPolicy in types.go
- [x] write admission controller support for PodSecurityPolicy
- [x] write e2e test for PodSecurityPolicy
- [x] make sure we are compatible in the sense of https://github.com/kubernetes/kubernetes/blob/master/docs/devel/api_changes.md
- [x] test e2e with rkt: it only works with kubenet, not with no-op network plugin. The later has no sysctl support.
- ~~[ ] add RunC implementation~~ (~~if that is already in kube,~~ it isn't)
- [x] update whitelist
- [x] switch PSC fields to annotations
- [x] switch PSP fields to annotations
- [x] decide about `--experimental-whitelist-sysctl` flag to be additive or absolute
- [x] decide whether to add a sysctl node whitelist annotation

### Release notes:

```release-note
The pod annotation `security.alpha.kubernetes.io/sysctls` now allows customization of namespaced and well isolated kernel parameters (sysctls), starting with `kernel.shm_rmid_forced`, `net.ipv4.ip_local_port_range`, `net.ipv4.tcp_max_syn_backlog` and `net.ipv4.tcp_syncookies` for Kubernetes 1.4.

The pod annotation  `security.alpha.kubernetes.io/unsafeSysctls` allows customization of namespaced sysctls where isolation is unclear. Unsafe sysctls must be enabled at-your-own-risk on the kubelet with the `--experimental-allowed-unsafe-sysctls` flag. Future versions will improve on resource isolation and more sysctls will be considered safe.
```
2016-08-25 06:21:24 -07:00
Dr. Stefan Schimanski dd7826359c Add sysctl e2e tests 2016-08-25 13:22:01 +02:00
Kubernetes Submit Queue a9a81219ef Merge pull request #31185 from coufon/log_throughput_benchmark
Automatic merge from submit-queue

add throughput in perf data and disable --cgroups-per-qos

This PR adds throughput data to printed perf data for benchmark. It also disables --cgrous-per-qos in jenkinds-benchmark.properties.
2016-08-25 04:05:20 -07:00
Marcin Wielgus 99cb1d7702 Use non-fed client for subclusters in federated namespace e2e test 2016-08-25 10:26:08 +02:00
Kubernetes Submit Queue c5e7e5124a Merge pull request #30969 from asalkeld/raw-status-code
Automatic merge from submit-queue

Make sure the StatusCode is taken into account in DoRaw()

**What this PR does / why we need it**:
Currently if there is an error (not found) the error printed out
is to do with the inablity to convert an empty body into the expected json.

This patch will fill in the err correctly.

example of before (with NotFound error):
$ kubectl top node
failed to unmarshall heapster response: json: cannot unmarshal object into Go value of type []v1alpha1.NodeMetrics

Now:
$ kubectl top node
the server could not find the requested resource (get services http:heapster:)

**Which issue this PR fixes** 
related to bug #30818

**Special notes for your reviewer**:
None

**Release note**:
```release-note
NONE
```
2016-08-25 01:01:05 -07:00
bindata-mockuser d0577e7c74 Avoid disk eviction node e2e test using up all the disk space 2016-08-24 22:07:58 -07:00
Random-Liu afb780d4ee Move utilities into different packages. Add local and remove runner. 2016-08-24 20:18:45 -07:00
Kubernetes Submit Queue f0462c4043 Merge pull request #31200 from ronnielai/test1
Automatic merge from submit-queue

Skip disk eviction test on non-supported images.
2016-08-24 20:06:07 -07:00
Kubernetes Submit Queue 1952986a34 Merge pull request #30348 from Random-Liu/remove-unnecessary-binary-copy
Automatic merge from submit-queue

Node Conformance Test: Remove unnecessary binary copy

For #30122, #30174.

This PR removed unnecessary dependencies in the node e2e test framework, because we've statically linked these dependencies.

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing
2016-08-24 14:35:34 -07:00
Michael Taufen 79a0533c98 Capitalize feature name in test for dynamic kubelet configuration 2016-08-24 13:14:40 -07:00
bprashanth 65d76f507c Nginx ingress e2es 2016-08-24 10:17:26 -07:00
Michael Taufen 9fdb3f291a Stop fd leak in e2e_service.go
Previously this code used http.Get and failed to read/close resp.Body, which
prevented network connection reuse, leaking fds. Now we use http.Head
instead, because its response always has a nil Body, so we don't have to
worry about read/close.
2016-08-24 09:15:25 -07:00
Michael Taufen 2e989a3c38 Revert "Merge pull request #31297 from mikedanese/revert-kubelet"
This reverts the revert of #30090 and #31282.
2016-08-24 09:06:12 -07:00
Kubernetes Submit Queue c958d3d4fd Merge pull request #31325 from piosz/disable-e2e
Automatic merge from submit-queue

Run Rescheduler e2e on GCE only

fix #31277
2016-08-24 05:38:02 -07:00
Kubernetes Submit Queue 0a3219ebf7 Merge pull request #31335 from mwielgus/fix-ns-e2e
Automatic merge from submit-queue

Fix panics in federation e2e tets

cc: @quinton-hoole @madhusudancs
2016-08-24 04:15:48 -07:00
Kubernetes Submit Queue 9b0d57ff95 Merge pull request #31164 from coufon/skip_benchmark_in_jenkins_serial
Automatic merge from submit-queue

skip benchmark in jenkins serial test

This PR changes jenkins-serial.properties to skip benchmark tests (with tag [Benchmark]) in jenkins serial tests. It also add more comments in run_e2e.go.
2016-08-24 03:32:51 -07:00
mfanjie 9982edb395 mark It "Ingress connectivity and DNS" as pending 2016-08-24 17:26:27 +08:00
mfanjie cf26597ae8 add ingress connectivity check and dns check 2016-08-24 17:26:23 +08:00
mfanjie 5c3667e8c2 create, delete, update e2e cases passed 2016-08-24 17:26:23 +08:00
mfanjie 85e7f459ca add federation ingress controller e2e 2016-08-24 17:26:18 +08:00
Marcin Wielgus a653a5e8ce Fix panics in federation e2e 2016-08-24 11:14:03 +02:00
Piotr Szczesniak 9c2a951ae3 Run Rescheduler e2e on GCE only 2016-08-24 06:47:17 +02:00
Kubernetes Submit Queue 355178b794 Merge pull request #31314 from timstclair/aa-e2e
Automatic merge from submit-queue

Increase the AppArmor pod stop timeout to match the start timeout

Fixes https://github.com/kubernetes/kubernetes/issues/30750
2016-08-23 18:52:10 -07:00
Tim St. Clair a29ad353a6
Increase the AppArmor pod stop timeout to match the start timeout 2016-08-23 17:03:38 -07:00
Girish Kalele b82c028f77 GCE Cloud provider changes for ESIPP
Add feature gate (ExternalTrafficLocalOnly) for alpha feature
2016-08-23 16:16:39 -07:00
Kubernetes Submit Queue 4b55492570 Merge pull request #31052 from Random-Liu/set-longer-timeout-for-serial-test
Automatic merge from submit-queue

Node E2E: Extend serial test suite timeout to 3 hours.

Addresses https://github.com/kubernetes/kubernetes/issues/30550#issuecomment-241176666.

Extend the serial test timeout to 3 hours.

@coufon
2016-08-23 15:49:51 -07:00
Janet Kuo c5cef18735 Add e2e test for overlapping deployments 2016-08-23 14:33:30 -07:00
Mike Danese 0a735b7886 Revert "Merge pull request #30090 from mtaufen/dynamic-kubelet-restart"
This reverts commit fe808ec2a4, reversing
changes made to f297ea966e.
2016-08-23 14:11:48 -07:00
Mike Danese 7cf1c73fef Revert "Merge pull request #31282 from mtaufen/dynkubetest-fix"
This reverts commit 5981aa8b37, reversing
changes made to fe808ec2a4.
2016-08-23 14:11:44 -07:00
Michael Taufen 280b64d47f Mark dynamic kubelet configuration test serial 2016-08-23 11:54:35 -07:00
Kubernetes Submit Queue fe808ec2a4 Merge pull request #30090 from mtaufen/dynamic-kubelet-restart
Automatic merge from submit-queue

[Kubelet] Optionally consume configuration from <node-name> named config maps

This extends the Kubelet to check the API server for new node-specific config, and exit when it finds said new config.

/cc @kubernetes/sig-node @mikedanese @timstclair @vishh

**Release note**:
```
Extends Kubelet with Alpha Dynamic Kubelet Configuration. Please note that this alpha feature does not currently work with cloud provider auto-detection.
```
2016-08-23 09:25:22 -07:00
Kubernetes Submit Queue f297ea966e Merge pull request #30838 from caesarxuchao/per-resource-orphan-behavior
Automatic merge from submit-queue

[GarbageCollector] Allow per-resource default garbage collection behavior

What's the bug:
When deleting an RC with `deleteOptions.OrphanDependents==nil`, garbage collector is supposed to treat it as `deleteOptions.OrphanDependents==true", and orphan the pods created by it. But the apiserver is not doing that.

What's in the pr:
Allow each resource to specify the default garbage collection behavior in the registry. For example, RC registry's default GC behavior is Orphan, and Pod registry's default GC behavior is CascadingDeletion.
2016-08-23 08:46:32 -07:00
Michael Taufen e780bb5fbd Enable dynamic kubelet configuration during tests 2016-08-23 07:42:44 -07:00
Michael Taufen 2413ec4494 Restart Kubelet if it exits during e2e tests 2016-08-23 07:42:44 -07:00
Kubernetes Submit Queue a3a33c53e1 Merge pull request #30496 from mwielgus/nc-e2e
Automatic merge from submit-queue

Federated namespace controller e2e test

Depends on #30443

cc: @quinton-hoole @wojtek-t @kubernetes/sig-cluster-federation
2016-08-23 07:18:15 -07:00
Piotr Szczesniak 4a6123df0a Enabled Rescheduler e2e test for serial suites 2016-08-23 13:23:29 +02:00
Kubernetes Submit Queue 28ded18c4c Merge pull request #31216 from piosz/e2e-utils-fix
Automatic merge from submit-queue

Improve ScaleRC function to be more generic

Relaxed the requirement for RC selector.
2016-08-23 02:27:16 -07:00
Marcin Wielgus 309630b548 E2E tests for federated namespace controller 2016-08-23 11:15:06 +02:00
Piotr Szczesniak e8135c30d5 Improve ScaleRC function to be more generic 2016-08-23 09:25:00 +02:00
Kubernetes Submit Queue 13305ef0ff Merge pull request #31139 from nikhiljindal/namespaceAdmissionControl
Automatic merge from submit-queue

federation: Adding support for namespace admission controls in federation-apiserver

Now that we have namespaces in federation apiserver, we can support namespace admission controls.

There are 3 of these:
namespace/autoprovision, namespace/exists and namespace/lifecycle.
namespace/autoprovision, namespace/exists should be deprecated in kubernetes(https://github.com/kubernetes/kubernetes/issues/31195). Adding support for namespace/lifecycle to federation-apiserver.
As in kube-apiserver, enabling namespace/lifecycle by default.


```release-note
Action required: If you have a running federation control plane, you will have to ensure that for all federation resources, the corresponding namespace exists in federation control plane.

federation-apiserver now supports NamespaceLifecycle admission control, which is enabled by default. Set the --admission-control flag on the server to change that.
```

cc @kubernetes/sig-cluster-federation @quinton-hoole
2016-08-23 00:19:08 -07:00
Michael Taufen 085df61204 Node e2e test for Dynamic Kubelet Configuration 2016-08-22 22:45:23 -07:00
nikhiljindal db7af6c0d7 Fixing/updating e2e tests 2016-08-22 21:49:34 -07:00
Random-Liu e646dc6b9e Remove unnecessary code after e2e services are statically linked. 2016-08-22 20:51:24 -07:00
Kubernetes Submit Queue 95be706bad Merge pull request #31046 from fejta/own
Automatic merge from submit-queue

Update test assignments

Add new jobs, remove old ones
2016-08-22 19:41:51 -07:00
Angus Salkeld 9c5e11e991 Fix static URL conformance test
1. /validate service does not exist, so remove the test for it and add some that actually do exist
2. The namespace does not exist so this will always return NotFound

Note: DoRaw() ignores the StatusCode.
This is in preparation for the next commit
2016-08-23 11:42:42 +10:00
bindata-mockuser 7b70c23998 Make disk eviction test run correctly on all images. 2016-08-22 18:40:54 -07:00
nikhiljindal 18a8597a4e Enabling namespace admission controls 2016-08-22 17:28:03 -07:00
Zhou Fang ac379b038e add throughput in perf data and disable --cgroups-per-qos 2016-08-22 16:04:32 -07:00
Zhou Fang c2d1a32597 skip benchmark in jenkins serial test 2016-08-22 14:19:40 -07:00
Kubernetes Submit Queue d6afd304b7 Merge pull request #31114 from wojtek-t/fix_heapster_in_kubemark
Automatic merge from submit-queue

Fix heapster in kubemark

Fix #31108
2016-08-22 13:33:30 -07:00
Chao Xu 67b7c7290a Allow per-resource default garbage collection behavior 2016-08-22 11:37:04 -07:00
Kubernetes Submit Queue 51a9fdb2a4 Merge pull request #31113 from piosz/rescheduler-e2e
Automatic merge from submit-queue

e2e test for rescheduling critical pods

ref #29023

The test is disabled by default.
2016-08-22 10:24:18 -07:00
Kubernetes Submit Queue 1e7545393f Merge pull request #30979 from m1093782566/fix-unnecessary-delete-rc-requests
Automatic merge from submit-queue

[e2e density test] Fix unnecessary Delete RC requests when not running latency test

As the following code block
https://github.com/kubernetes/kubernetes/blob/master/test/e2e/density.go#L666-L670
shows, after running each density test case, it will attempt to delete "additional replication controllers" even though there is **no additional replication controller**.

When we are not running latency test, API Server will return "404 error code". So, I propose to move the above code block inside thedetermine statementsif `itArg.runLatencyTest{ }` , looks like:

```
if itArg.runLatencyTest {
  ...
  for i := 1; i <= nodeCount; i++ {
    name := additionalPodsPrefix + "-" + strconv.Itoa(i)
    c.ReplicationControllers(ns).Delete(name, nil)
  }
}
```
In this way, removing RC will be executed only if we set `itArg.runLatencyTest` to be `true`. It can avoid post some necessary requests to API Server.

Issuse is #30977
2016-08-22 07:00:52 -07:00
Wojciech Tyczynski 56008de8d6 Fix heapster in kubemark 2016-08-22 15:38:02 +02:00
Piotr Szczesniak 9614f00832 e2e test for rescheduling critical pods 2016-08-22 15:30:42 +02:00
Dr. Stefan Schimanski 7a7e059ac6 Add some docs about the missing node e2e scheduling 2016-08-22 13:07:16 +02:00
Wojciech Tyczynski 943860b3c7 Tweak resource consumption in density test 2016-08-22 10:03:45 +02:00
Random-Liu eca3dc6cd5 Extend serial test suite timeout to 3 hours. 2016-08-21 23:40:05 -07:00
Kubernetes Submit Queue 6b333d1f82 Merge pull request #30964 from m1093782566/m109-master-density
Automatic merge from submit-queue

[e2e test] Fix e2e test pause image hard code

Use `framework.GetPauseImageName(f.Client)` instead of hard code(such as `"gcr.io/google_containers/pause-amd64:3.0"`) to represent pause image name.

Related issus is #30967
2016-08-21 22:10:13 -07:00
Kubernetes Submit Queue 5645ca749b Merge pull request #30941 from Random-Liu/remove-fatal-in-e2e-suite
Automatic merge from submit-queue

Node E2E: Remove fatal error in e2e_node_suite_test.go

Addresses https://github.com/kubernetes/kubernetes/issues/30779#issuecomment-240532190.

Currently we run node e2e test in parallel, and ginkgo makes sure that we only initialize test framework in the first test node.
However, because we throw out some fatal error during the initialization. Once there is an fatal error, the first test node will die immediately without reporting any error, and the other nodes will exit because the first node is gone with meaningless error.

If kubelet start fails, we'll get something like:
```
------------------------------
Failure [132.485 seconds]
[BeforeSuite] BeforeSuite 
/usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138

  BeforeSuite on Node 1 failed

  /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
------------------------------
......
------------------------------
Failure [132.465 seconds]
[BeforeSuite] BeforeSuite 
/usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138

  BeforeSuite on Node 1 failed

  /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
```

This PR replaces these fatal errors with gomega assertion, with this PR, we'll get:
```
Failure [132.482 seconds]
[BeforeSuite] BeforeSuite 
/usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138

  should be able to start node services.
  Expected success, but got an error:
      <*errors.errorString | 0xc8203351b0>: {
          s: "failed to run server start command \"/tmp/ginkgo869068712/e2e_node.test --run-services-mode --server-start-timeout 2m0s --report-dir  --node-name lantaol0.mtv.corp.google.com --disable-kubenet=true --cgroups-per-qos=false --manifest-path /tmp/node-e2e-pod221291440 --eviction-hard memory.available<250Mi\": exit status 255",
      }
      failed to run server start command "/tmp/ginkgo869068712/e2e_node.test --run-services-mode --server-start-timeout 2m0s --report-dir  --node-name lantaol0.mtv.corp.google.com --disable-kubenet=true --cgroups-per-qos=false --manifest-path /tmp/node-e2e-pod221291440 --eviction-hard memory.available<250Mi": exit status 255

  /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:117
------------------------------
Failure [132.485 seconds]
[BeforeSuite] BeforeSuite 
/usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138

  BeforeSuite on Node 1 failed

  /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
------------------------------
......
------------------------------
Failure [132.465 seconds]
[BeforeSuite] BeforeSuite 
/usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138

  BeforeSuite on Node 1 failed

  /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
```

This is much more informative.

/cc @kubernetes/sig-node
2016-08-21 18:21:22 -07:00
Kubernetes Submit Queue 9669eaaa39 Merge pull request #31082 from liggitt/pvc_test_race
Automatic merge from submit-queue

Fix data race in PVC Run/Stop methods

Fixes #30947
Fixes #30775
2016-08-21 14:42:35 -07:00
Kubernetes Submit Queue 08b3c6829e Merge pull request #30718 from Random-Liu/wait-node-ready-before-start-test
Automatic merge from submit-queue

Node E2E: Wait for node ready before the node e2e test started.

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

This PR makes node e2e test wait for exactly one node ready before running other test.

@ronnielai @mtaufen
2016-08-21 12:42:03 -07:00
Jordan Liggitt 387f9ea952
Fix data race in PVC Run/Stop methods 2016-08-21 15:15:33 -04:00
Kubernetes Submit Queue 7979801e54 Merge pull request #28860 from ericchiang/separate-apiserver-authz-options
Automatic merge from submit-queue

pkg/genericapiserver/options: don't import pkg/apiserver

Refactor the authorization options for the API server so
pkg/apiserver isn't directly imported by the options package.

Closes #28544

cc @smarterclayton

@madhusudancs, @nikhiljindal I've updated `federation/cmd/federation-apiserver/app/server.go` to include the RBAC options with this change. I don't know if this was intentionally left out in the first place but would like your feedback.
2016-08-21 09:49:14 -07:00
Kubernetes Submit Queue 37f8559c22 Merge pull request #31039 from coufon/add_benchmark_to_jenkins
Automatic merge from submit-queue

Add benchmark to jenkins

This PR contains the following changes:

1. Add more tests in density benchmark test;
2. Add the peak value (100%) in latency and CPU usage statistic data;
3. Move the Ginkgo focus flag from e2e_remote.go to run_e2e.go;
4. Support running benchmark in run_e2e.go. The benchmark configuration file is an extension of image configuration. Each item requires additional GCE machine type (e.g. n1-standard-1, default value will be used if empty) and test names (Ginkgo focus regex strings). A test item is regarded as benchmark if the tests field is non-empty.
2016-08-21 08:32:39 -07:00
Kubernetes Submit Queue dbfad789e3 Merge pull request #30211 from Random-Liu/statically-link-apiserver
Automatic merge from submit-queue

Node Conformance Test: Statically link apiserver

For #30122, #30174.
Based on #30116, #30198, #30200.

**Please only review the 4th PR.**

This PR is part of our roadmap to package node conformance test.
The 1st commit is from #30116, which started e2e services in a separate process.
The 2nd commit is from #30198, it statically linked etcd into the node e2e framework.
The 3rd commit is from #30200, it moved namespace controller into e2e services.

The 4th commit is new, it statically linked apiserver into the node e2e framework.

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing
2016-08-21 07:53:51 -07:00
Kubernetes Submit Queue 7272cd09e3 Merge pull request #26541 from sttts/sttts-kubectl-exec-rc
Automatic merge from submit-queue

Return container command exit codes in kubectl run/exec

Fixes https://github.com/kubernetes/kubernetes/issues/26424
Based on https://github.com/kubernetes/kubernetes/pull/25273.

TODO:
- [x] add e2e tests
- [x] investigate `kubectl run` exit code for `--restart=Never` (compare issue #24533 and PR #25253)
- [x] document exit codes
2016-08-21 00:44:55 -07:00
Random-Liu cb760a6ed4 Wait for node ready before the node e2e test started. 2016-08-20 17:54:23 -07:00
Random-Liu dd6584a606 Statically link apiserver to node e2e. 2016-08-20 17:41:34 -07:00
Kubernetes Submit Queue 98c4029275 Merge pull request #30200 from Random-Liu/move-namespace-controller-to-services
Automatic merge from submit-queue

Node Conformance Test: Move namespace controller to services

For #30122, #30174.
Based on #30116, #30198.

**Please only review the 3rd PR.**

This PR is part of our roadmap to package node conformance test.
The 1st commit is from #30116, which started e2e services in a separate process.
The 2nd commit is from #30198, it statically linked etcd into the node e2e framework.

The 3rd commit is new, it moved namespace controller into e2e services.

@dchen1107 @vishh 
/cc @kubernetes/sig-node @kubernetes/sig-testing
2016-08-20 14:19:40 -07:00
Zhou Fang b8ab0c50c5 add benchmark to jenkins 2016-08-20 09:43:42 -07:00
Kubernetes Submit Queue c6bc654635 Merge pull request #30721 from ronnielai/test1
Automatic merge from submit-queue

Disk eviction node e2e test

Please review d202816cfb4ae4dc38d0fe4f45cd11cc81e0e178 only.

#29800
2016-08-20 08:05:52 -07:00
bindata-mockuser e792d4117d Add return code support to kubectl-exec and -run 2016-08-20 15:58:47 +02:00
Kubernetes Submit Queue 65233e4bf2 Merge pull request #30575 from soltysh/scheduledjobs_e2e
Automatic merge from submit-queue

Scheduledjobs e2e

@janetkuo resubmitted e2e for SJ, I've updated all scripts to consume `KUBE_RUNTIME_CONFIG` properly in 2nd commit, ptal
2016-08-19 23:42:32 -07:00
bindata-mockuser 1c47d9ddd0 Adding disk eviciton test to node e2e tests 2016-08-19 21:28:02 -07:00
Kubernetes Submit Queue e9815020eb Merge pull request #30475 from derekwaynecarr/pod-cgroup
Automatic merge from submit-queue

Unblock iterative development on pod-level cgroups

In order to allow forward progress on this feature, it takes the commits from #28017 #29049 and then it globally disables the flag that allows these features to be exercised in the kubelet.  The flag can be re-added to the kubelet when its actually ready.

/cc @vishh @dubstack @kubernetes/rh-cluster-infra
2016-08-19 21:06:48 -07:00
Erick Fejta 5c821c1fed Update test assignments 2016-08-19 18:43:40 -07:00
Kubernetes Submit Queue 237db0363a Merge pull request #31035 from ixdy/e2e-service-account
Automatic merge from submit-queue

When running inside docker, activate service account ASAP

Also switching to just use `GOOGLE_APPLICATION_CREDENTIALS`, rather than both.

x-ref https://github.com/kubernetes/test-infra/issues/318
2016-08-19 17:22:34 -07:00
Kubernetes Submit Queue 8c430c2fd7 Merge pull request #30476 from mtaufen/eviction_fix
Automatic merge from submit-queue

Wait for memory to be reclaimed after node_e2e MemoryEviction test

This helps prevent interference with other tests that run immediately after the MemoryEviction test.

/cc @Random-Liu @coufon
2016-08-19 17:22:05 -07:00
Kubernetes Submit Queue ea5a17fbce Merge pull request #30994 from gmarek/unused
Automatic merge from submit-queue

Stop pretending that reaper cares about delete options in e2e tests
2016-08-19 15:48:00 -07:00
Jeff Grafton 8278d1c2ef When running inside docker, activate service account ASAP
Additionally, remove activation code everywhere else, since we do that
already in Jenkins.
2016-08-19 15:41:33 -07:00
Kubernetes Submit Queue b29023aa91 Merge pull request #30810 from mnshaw/gubernator-bugs
Automatic merge from submit-queue

Gubernator bug fixes: mv and GCS bucket permissions

Fixed issue where results file was not moved correctly, and also the permissions issue with the GCS bucket.

Will rebase after #30414 is merged

@timstclair
2016-08-19 14:34:56 -07:00
Zhou Fang 30eb6882f4 add peak (100%) lantecy and CPU usage in perf data 2016-08-19 14:33:38 -07:00
Zhou Fang 95eb9efb11 add more density benchmark tests 2016-08-19 14:03:21 -07:00
Michael Taufen a227ce42f2 Wait for memory to be reclaimed after node_e2e MemoryEviction test
This helps prevent interference with other tests that run immediately
after the MemoryEviction test.
2016-08-19 13:58:03 -07:00
Kubernetes Submit Queue 5f7875a9bc Merge pull request #30786 from coufon/add_time_series
Automatic merge from submit-queue

Add logging time series to benchmark test

This PR adds a new file benchmark_util.go which contains tool functions for benchmark (we can migrate benchmark related functions into it). 

The PR logs time series data for density benchmark test.
2016-08-19 13:41:29 -07:00
derekwaynecarr fde285cd8f Disable cgroups-per-qos flag until implementation is stabilized 2016-08-19 11:08:59 -04:00
gmarek d844dd463a Stop pretending that reaper cares about delete options in e2e tests 2016-08-19 14:44:35 +02:00
Kubernetes Submit Queue 40367df750 Merge pull request #30590 from kevin-wangzefeng/taint-unique-by-key-effect
Automatic merge from submit-queue

make taints unique by <key, effect> on a node

closes #29362
2016-08-19 04:58:12 -07:00
Kubernetes Submit Queue 5898f87722 Merge pull request #30233 from mbohlool/swagger2
Automatic merge from submit-queue

OpenAPI / Swagger2 spec generation

This is alpha version of OpenAPI spec generation. Generated "/swagger.json" file (accessible on api server) is a valid OpenAPI spec with some warnings that will be fixed in next versions of spec generation. Currently it is possible to generate a client using this spec though I did not test the clients.

reference: #13414

**Release note**:

```release-note
Alpha support for OpenAPI (aka. Swagger 2.0) specification serves on /swagger.json 
```
2016-08-19 04:21:48 -07:00
m1093782566 09668823a9 fix unnecessary delete rc requests
Change-Id: I5e7813acebd0607c049d521cce559b96708be1a2
2016-08-19 16:14:50 +08:00
Kubernetes Submit Queue 2bb89428a7 Merge pull request #30671 from mfanjie/e2e-extract-common-code
Automatic merge from submit-queue

extract common function in ingress and federation e2e to uil

Separate refactoring existing e2e code part from #29773
1. extract common constants, structs and functions in federated-service.go to federation-util.go, move existing util functions from federated-service.go to federation-util.go
2. extract common constants, structs and functions in ingress.go to ingress-util.go, move existing util functions from ingress.go to ingress-util.go

@quinton-hoole
2016-08-18 22:32:14 -07:00
Kubernetes Submit Queue 29e16d0174 Merge pull request #30913 from Random-Liu/fix-readiness-check
Automatic merge from submit-queue

Node E2E: Make readiness check handling process exits with 0 exit code.

As is mentioned by @mtaufen:
 "there is a problem with the way service `start` is currently implemented in test/e2e_node/e2e_service.go. If the Kubelet exits with status 0 before the health check completes, cmdErrorChan will be closed and, as a result, nil will be read from that channel, and you will return a nil error from `start`."

This PR changes the logic to:
1) If the err channel returns an error, return the error
2) If the err channel returns a nil, ignore it and continue checking readiness.
3) If the err channel is closed before readiness check succeeds, replace it with `blockCh` and continue checking readiness.

@mtaufen 
/cc @kubernetes/sig-node
2016-08-18 21:54:50 -07:00
m1093782566 47e0d4dc89 fix e2e test pause image hard code
Change-Id: I30ee8d5da96b6de42cf7d308776dcb9606d67dfb
2016-08-19 12:11:28 +08:00
Kubernetes Submit Queue c19e9cc89d Merge pull request #26044 from smarterclayton/multiversion_encode
Automatic merge from submit-queue

Guarantee that Encode handles nested objects again
2016-08-18 21:10:55 -07:00
mfanjie 78df9c4c85 pass FederatedServiceName to createServiceOrFail and createService as they are util functions for federated service and federated ingress now. 2016-08-19 09:57:39 +08:00
mfanjie a1bed2723e address review comments, and fix panic in ingress e2e 2016-08-19 09:53:38 +08:00
mfanjie 6ecea5944c extract common function in service, ingress and federation e2e to util, to be reused. 2016-08-19 09:53:38 +08:00
Kubernetes Submit Queue c5e3b79f32 Merge pull request #30634 from timothysc/etcd3_shouldbe_intergration_tests
Automatic merge from submit-queue

Move UTs that block on apiserver to integration tests. 

In validating etcd.v3client we had uncovered that a change in the behavior of the client https://github.com/coreos/etcd/issues/6162 , caused a number of unit tests to fail.  These test failures were due to the fact that the unit tests were trying to standup a apiserver even though there was no etcd backend stood up.  

This PR simply shuffles those tests to integration tests, which is where they should be. 

/cc @kubernetes/sig-scalability @wojtek-t @hongchaodeng @xiang90
2016-08-18 18:39:13 -07:00
Zhou Fang 58495b5214 add labels to perf dataset 2016-08-18 17:15:43 -07:00
Kubernetes Submit Queue 57ad590d8d Merge pull request #30925 from caesarxuchao/gc-concurrency
Automatic merge from submit-queue

Increase concurrent GC workers, adjust the polling interval and timeout in e2e test

ref: https://github.com/kubernetes/kubernetes/issues/30759#issuecomment-240853949
2016-08-18 17:10:35 -07:00
Random-Liu 35aad1593f Remove fatal error in e2e_node_suite_test.go 2016-08-18 16:03:02 -07:00
Chao Xu a0c6a664a5 adjust waitForPodsInactive polling interval and timeout 2016-08-18 15:38:24 -07:00
mbohlool c5f1d63d6f Generates OpenAPI (aka Swagger 2.0) Spec on /swagger.json path 2016-08-18 15:32:04 -07:00
Marie Shaw f7e2109b8b Fix GCS permissions and file moving bugs 2016-08-18 14:51:33 -07:00
Kubernetes Submit Queue c8591c710b Merge pull request #30414 from mnshaw/run-remote-tests
Automatic merge from submit-queue

Add GUBERNATOR flag which produces g8r link for node e2e tests

When you run 'make tests-e2e-node REMOTE=true GUBERNATOR=true' outputs a URL to view the test results on Gubernator. ~~Should work after my PR for Gubernator is merged.~~

@timstclair
2016-08-18 14:40:12 -07:00
Random-Liu 1904c86074 Make readiness check handling process exits with 0 exit code. 2016-08-18 13:51:40 -07:00
Eric Chiang b4eaf625a0 pkg/genericapiserver/options: don't import pkg/apiserver
Refactor the authorization options for the API server so
pkg/apiserver isn't directly imported by the options package.
2016-08-18 13:01:50 -07:00
Timothy St. Clair d6606a6aa9 etcd3 validation showed that several unit tests that depend on apiserver being fully
stood up should be integration tests, not unit tests.
2016-08-18 14:12:24 -05:00
Clayton Coleman 12a5eeea17
Introduce GroupVersioner for capturing desired target version
Convert single GV and lists of GVs into an interface that can handle
more complex scenarios (everything internal, nothing supported). Pass
the interface down into conversion.
2016-08-18 14:45:00 -04:00
Kubernetes Submit Queue 9d2a5fe5e8 Merge pull request #29006 from jsafrane/dynprov2
Automatic merge from submit-queue

Implement dynamic provisioning (beta) of PersistentVolumes via StorageClass

Implemented according to PR #26908. There are several patches in this PR with one huge code regen inside.

* Please review the API changes (the first patch) carefully, sometimes I don't know what the code is doing...

* `PV.Spec.Class` and `PVC.Spec.Class` is not implemented, use annotation `volume.alpha.kubernetes.io/storage-class`

* See e2e test and integration test changes - Kubernetes won't provision a thing without explicit configuration of at least one `StorageClass` instance!

* Multiple provisioning volume plugins can coexist together, e.g. HostPath and AWS EBS. This is important for Gluster and RBD provisioners in #25026

* Contradicting the proposal, `claim.Selector` and `volume.alpha.kubernetes.io/storage-class` annotation are **not** mutually exclusive. They're both used for matching existing PVs. However, only `volume.alpha.kubernetes.io/storage-class` is used for provisioning, configuration of provisioning with `Selector` is left for (near) future.

* Documentation is missing. Can please someone write some while I am out?

For now, AWS volume plugin accepts classes with these parameters:

```
kind: StorageClass
metadata:
  name: slow
provisionerType: kubernetes.io/aws-ebs
provisionerParameters:
  type: io1
  zone: us-east-1d
  iopsPerGB: 10
```

* parameters are case-insensitive
* `type`: `io1`, `gp2`, `sc1`, `st1`. See AWS docs for details
* `iopsPerGB`: only for `io1` volumes. I/O operations per second per GiB. AWS volume plugin multiplies this with size of requested volume to compute IOPS of the volume and caps it at 20 000 IOPS (maximum supported by AWS, see AWS docs).
* of course, the plugin will use some defaults when a parameter is omitted in a `StorageClass` instance (`gp2` in the same zone as in 1.3).

GCE:

```
apiVersion: extensions/v1beta1
kind: StorageClass
metadata:
  name: slow
provisionerType: kubernetes.io/gce-pd
provisionerParameters:
  type: pd-standard
  zone: us-central1-a
```

* `type`: `pd-standard` or `pd-ssd`
* `zone`: GCE zone
* of course, the plugin will use some defaults when a parameter is omitted in a `StorageClass` instance (SSD in the same zone as in 1.3 ?).


No OpenStack/Cinder yet

@kubernetes/sig-storage
2016-08-18 09:56:16 -07:00
Zhou Fang f82746e038 move benchmark tag from context to it 2016-08-18 09:25:20 -07:00
Zhou Fang 5498130255 add logging time series data to benchmark tests 2016-08-18 09:20:40 -07:00
Kubernetes Submit Queue 6659d80973 Merge pull request #30882 from gmarek/address
Automatic merge from submit-queue

Update address flag to insecure-bind-address in kubemark
2016-08-18 07:53:03 -07:00
Kubernetes Submit Queue 793a141a1a Merge pull request #30423 from nikhiljindal/replicaSetTest
Automatic merge from submit-queue

Adding e2e test for federation replicasets

Its a basic test which tests that we can create and delete replicasets. Will enhance it when we write the replicaset controller.

cc @kubernetes/sig-cluster-federation
2016-08-18 07:52:51 -07:00
gmarek 97a376c4ea Update address flag to insecure-bind-address in kubemark 2016-08-18 15:57:20 +02:00
Kubernetes Submit Queue b5a85eb32f Merge pull request #30866 from gmarek/kubemark
Automatic merge from submit-queue

Add --verify-version-skew=false to kubemark test runner

To make it work well locally.
2016-08-18 06:00:09 -07:00
Kubernetes Submit Queue 6824f4c08a Merge pull request #28936 from rata/secret-configmap-file-mode
Automatic merge from submit-queue

Allow setting permission mode bits on secrets, configmaps and downwardAPI files

cc @thockin @pmorie 

Here is the first round to implement: https://github.com/kubernetes/kubernetes/pull/28733.

I made two commits: one with the actual change and the other with the auto-generated code. I think it's easier to review this way, but let me know if you prefer in some other way.

I haven't written any tests yet, I wanted to have a first glance and not write them till this (and the API) are more close to the "LGTM" :)

There are some things:
 * I'm not sure where to do the "AND 0777". I'll try to look better in the code base, but suggestions are always welcome :)
 * The write permission on group and others is not set when you do an `ls -l` on the running container. It does work with write permissions to the owner. Debugging seems to show that is something happening after this is correctly set on creation. Will look closer.
 * The default permission (when the new fields are not specified) are the same that on kubernetes v1.3
 * I do realize there are conflicts with master, but I think this is good enough to have a look. The conflicts is with the autog-enerated code, so the actual code is actually the same (and it takes like ~30 minutes to generate it here)
 * I didn't generate the docs (`generated-docs` and `generated-swagger-docs` from `hack/update-all.sh`) because my machine runs out of mem. So that's why it isn't in this first PR, will try to investigate and see why it happens.

Other than that, this works fine here with some silly scripts I did to create a secret&configmap&downwardAPI, a pod and check the file permissions. Tested the "defaultMode" and "mode" for all. But of course, will write tests once this is looking fine :)


Thanks a lot again!
Rodrigo
2016-08-18 05:59:48 -07:00
gmarek 7e5770b347 Add --verify-version-skew=false to kubemark test runner 2016-08-18 13:43:38 +02:00
gmarek d3d5f88880 Make sure that provider is set when we create resource constraints in the density test 2016-08-18 13:41:17 +02:00
Wojciech Tyczynski 715f4f0978 Merge pull request #30856 from wojtek-t/fix_density_part_1
Fix l7 constraints in density test
2016-08-18 12:12:29 +02:00
Wojciech Tyczynski bd6c5f4f57 Fix l7 constraints in density test 2016-08-18 11:30:03 +02:00
Random-Liu 90eb1f6de7 Move namespace controller into e2e services. 2016-08-18 02:18:07 -07:00
Kubernetes Submit Queue e2f39fca86 Merge pull request #30807 from caesarxuchao/change_pod_lister_api
Automatic merge from submit-queue

Continue on #30774: Change podNamespacer API

continue on #30774, credit to @wojtek-t, Ref #30759

I just fixed a test and converted IsActivePod to operate on *Pod.
2016-08-18 02:08:23 -07:00
Jan Safranek bb5d562f37 Restore alpha behavior 2016-08-18 10:36:50 +02:00
Jan Safranek d94220810e GCE changes for the new provisioning model 2016-08-18 10:36:50 +02:00
Jan Safranek 6e4d95f646 Dynamic provisioning V2 controller, provisioners, docs and tests. 2016-08-18 10:36:49 +02:00
Kubernetes Submit Queue d989fa9751 Merge pull request #30568 from coufon/node_density_and_performance_test
Automatic merge from submit-queue

Add tag [benchmark] to node-e2e-test where performance limits are not verified

This PR adds a new tag "[benchmark]" to density and resource-usage node e2e test. The performance limits will not be verified at the end of benchmark tests.
2016-08-18 01:29:09 -07:00
Kubernetes Submit Queue c9cf5c4728 Merge pull request #30409 from madhusudancs/fed-authn-e2e
Automatic merge from submit-queue

Implement federation API server authentication e2e tests.

This PR depends on #30397. Please review only the last commit here.

Fixes: Issue #28602.

cc @kubernetes/sig-cluster-federation
2016-08-17 23:24:29 -07:00
Kubernetes Submit Queue 6faa91dfb1 Merge pull request #30198 from Random-Liu/statically-link-etcd
Automatic merge from submit-queue

Node Conformance Test: Statically link etcd

For #30122, #30174.

This PR is part of our roadmap to package node conformance test.

It statically linked etcd into the node e2e framework. In the future all e2e services will be linked in, and print log into the same log file `services.log`.

@dchen1107 @vishh 
/cc @kubernetes/sig-node
2016-08-17 20:11:38 -07:00
Madhusudan.C.S c32c81dc4e Implement federation API server authentication e2e tests. 2016-08-17 20:03:20 -07:00
Kubernetes Submit Queue 9b5936cb30 Merge pull request #30725 from nikhiljindal/fixEventTest
Automatic merge from submit-queue

Fixing federation event e2e test

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

cc @kubernetes/sig-cluster-federation
2016-08-17 16:08:02 -07:00
Chao Xu 594234d61c fix tests; convert IsPodActive to operate on *Pod 2016-08-17 13:05:37 -07:00
Rodrigo Campos 568f4c2e63 Add mode permission bits to configmap, secrets and downwardAPI
This implements the proposal in:
docs/proposals/secret-configmap-downwarapi-file-mode.md

Fixes: #28317.

The mounttest image is updated so it returns the permissions of the linked file
and not the symlink itself.
2016-08-17 14:44:41 -04:00
Kubernetes Submit Queue f3f818a190 Merge pull request #29639 from aveshagarwal/master-default-resources-limits-fix
Automatic merge from submit-queue

Fix default resource limits (node allocatable) for downward api volumes and env vars

@kubernetes/rh-cluster-infra  @pmorie @derekwaynecarr
2016-08-17 11:37:41 -07:00
Kubernetes Submit Queue 64e682dcc0 Merge pull request #30764 from gmarek/resource_constraints
Automatic merge from submit-queue

Fix resource constraint checking in Density test
2016-08-17 08:32:39 -07:00
Timothy St. Clair 730fc70107 Update etcd default ports for v3, and validate tests 2016-08-17 07:49:19 -05:00
gmarek 59b7a05e15 Fix resource constraint checking in Density test 2016-08-17 14:12:41 +02:00
Marek Grabowski b17379007a Merge pull request #30670 from caesarxuchao/fix-waitForPodsGone
[GarbageCollector] Fix waitForRCPodsGone
2016-08-17 11:34:09 +02:00
Ivan Shvedunov 8ff00d17d8 Add e2e tests that check for wrapped volume race
See #29641 for details.
2016-08-17 12:14:14 +03:00
Random-Liu 0f32e2ca30 Statically link etcd into node e2e. 2016-08-17 02:06:35 -07:00
Kevin 1e2d560253 make taints unique by <key, effect> on a node 2016-08-17 15:40:33 +08:00
Kubernetes Submit Queue 457a151fdb Merge pull request #30116 from Random-Liu/start-e2e-services-in-separate-process
Automatic merge from submit-queue

Node Conformance Test: Start e2e services in a separate process

For https://github.com/kubernetes/kubernetes/issues/30122.

This is the first step of https://github.com/kubernetes/kubernetes/issues/30174.

This PR added a `start-services-only` mode in the test suite, and start all e2e services in a separate process by run the test binary again in `start-services-only` mode.
2016-08-17 00:13:05 -07:00
Kubernetes Submit Queue d57408294e Merge pull request #25921 from mml/db.controller
Automatic merge from submit-queue

Implement DisruptionController.

Part of #12611

This currently also includes a pending commit from #25895
2016-08-16 21:40:45 -07:00
Random-Liu 1c5bd5540e Stop throwing fatal error in buildGo to fix vm leak. 2016-08-16 18:12:21 -07:00
Marie Shaw d69252cbc2 Add GUBERNATOR flag for remote node e2e tests to produce gubernator link 2016-08-16 17:10:59 -07:00
Chao Xu 3bb159e8f6 fix test failure and address comment 2016-08-16 17:06:32 -07:00
nikhiljindal 353a38555d Fixing the namespace in created event to fix federation event e2e 2016-08-16 16:57:30 -07:00
Matt Liggett d60ba3c6e2 Implement DisruptionController.
Part of #12611
2016-08-16 15:20:41 -07:00
Kubernetes Submit Queue 5c1d7a7d99 Merge pull request #30641 from Random-Liu/fix-liveness-check-flake
Automatic merge from submit-queue

Add back the original liveness check timeout.

Fixes https://github.com/kubernetes/kubernetes/issues/30342.
Fixes https://github.com/kubernetes/kubernetes/issues/30335.

When I moved the test into common directory, I removed the original 10s timeout - 0362789283 (diff-0f856ff011970dca55a2cd916b9ddcf0L1128).

It turns out that the default 1s timeout is not enough. In all the flake, the probe request is cancelled on the kubelet side. This PR added back a 5s timeout to eliminate the flake.

Mark P0 to match the corresponding issue.

@freehan 
/cc @matchstick :)
2016-08-16 11:47:39 -07:00
Avesh Agarwal 52a60fe3be Fix default resource limits (node capacities) for downward api volumes 2016-08-16 14:41:17 -04:00
Chao Xu a12dc2e412 wait for the Reflector to list before polling the PodStore in e2e tests. 2016-08-15 21:40:33 -07:00
Random-Liu 3910a66bb5 Add run-services-mode option, and start e2e services in a separate
process.
2016-08-15 14:45:01 -07:00
Tim St. Clair db6629228f
Add AppArmor E2E test 2016-08-15 13:25:22 -07:00
Kubernetes Submit Queue 69419a145a Merge pull request #29802 from jfrazelle/fix-go-vet-errors
Automatic merge from submit-queue

fix go vet errors

<!--
Checklist for submitting a Pull Request

Please remove this comment block before submitting.

1. Please read our [contributor guidelines](https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md).
2. See our [developer guide](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md).
3. If you want this PR to automatically close an issue when it is merged,
   add `fixes #<issue number>` or `fixes #<issue number>, fixes #<issue number>`
   to close multiple issues (see: https://github.com/blog/1506-closing-issues-via-pull-requests).
4. Follow the instructions for [labeling and writing a release note for this PR](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes) in the block below.
-->

```release-note
```

This fixes the `go vet` errors brought about by go 1.7 testing re (#28742).

The are all pretty trivial and mostly related to literal composites.

also related to #16086
2016-08-15 13:10:08 -07:00
Kubernetes Submit Queue ef16cb78a7 Merge pull request #30564 from nikhiljindal/eventsE2e
Automatic merge from submit-queue

Adding events to federation clientset and adding an e2e

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

events was added to federation-apiserver in https://github.com/kubernetes/kubernetes/pull/30421

cc @kubernetes/sig-cluster-federation @mfanjie
2016-08-15 12:18:18 -07:00
Random-Liu 2fce972762 Add back the original liveness check timeout. 2016-08-15 12:17:16 -07:00
Kubernetes Submit Queue 89b4598ab7 Merge pull request #30242 from jeffvance/pv-e2e-tests
Automatic merge from submit-queue

two new pv e2e tests

Added two more pv e2e tests: 1) creating a claim before the pv (both not pre-bound), 2) creating a claim before the pv with the claim pre-bound to the PV via Spec.Volumename.
2016-08-15 01:35:59 -07:00
Zhou Fang f2af00f821 add benchmark test which does not verify limits 2016-08-14 18:55:46 -07:00
Maciej Szulik 8a43c56abd ScheduledJob e2e 2016-08-14 14:24:58 +02:00
Kubernetes Submit Queue 8cc31b648e Merge pull request #30552 from ixdy/node-e2e-separate-project
Automatic merge from submit-queue

Run CI Jenkins node e2e tests in project k8s-jkns-ci-node-e2e

Fixes #27648.

If node VMs leak, they should only harm themselves, not the rest of Jenkins.

This also lets us do VM cleanup without worrying that we might accidentally delete important Jenkins VMs.

The `k8s-jkns-ci-node-e2e` should have the right ACLs in place already. The quota is at defaults, but I don't think we'll need to increase it at this point.
2016-08-13 18:18:44 -07:00
Kubernetes Submit Queue 817256a716 Merge pull request #30401 from caesarxuchao/kubemark-gc-upstream
Automatic merge from submit-queue

Let load and density e2e tests use GC if it's on

I've run the 100 and 500 nodes tests and they both pass.

The test-infra half of the PR is https://github.com/kubernetes/test-infra/pull/369

cc @lavalamp
2016-08-13 16:04:34 -07:00
Kubernetes Submit Queue e39d7f71e6 Merge pull request #30251 from hongchaodeng/r2
Automatic merge from submit-queue

Move new etcd storage (low level storage) into cacher

In an effort for #29888, we are pushing forward this:

What?
- It changes creating etcd storage.Interface impl into creating config
- In creating cacher storage (StorageWithCacher), it passes config created above and new etcd storage inside.

Why?
- We want to expose the information of (etcd) kv client to cacher. Cacher storage uses this information to talk to remote storage.
2016-08-13 10:09:49 -07:00
Maciej Szulik 578730e26e Allow setting GroupVersion in e2e tests 2016-08-13 19:06:53 +02:00
Kubernetes Submit Queue b47596a856 Merge pull request #30508 from timothysc/etcd304_cleanup
Automatic merge from submit-queue

Update core etcd references to use 3.0.4

This updates the core references to use 3.0.4. 

There are still legacy references in the code base that should be cleaned, or just removed but I'm reluctant to purge.  

/cc @kubernetes/sig-scalability
2016-08-13 02:18:03 -07:00
Hongchao Deng d0938094d9 move new etcd storage into cacher 2016-08-12 18:40:20 -07:00
nikhiljindal 2619d0440d Adding events to federation clientset and adding an e2e 2016-08-12 17:47:49 -07:00
Girish Kalele f64c052858 Revert "Scheduledjob e2e" 2016-08-12 16:12:19 -07:00
Jeff Grafton e399be0676 Run node e2e tests in project k8s-jkns-ci-node-e2e 2016-08-12 15:54:51 -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
Timothy St. Clair a0d177ca71 Update core etcd references to use 3.0.4 2016-08-12 13:39:07 -05:00
Kubernetes Submit Queue 90efb214ba Merge pull request #30482 from mtaufen/eviction_disruptive
Automatic merge from submit-queue

Label MemoryEviction [Disruptive]

This test has the potential to be disruptive.

<!-- 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/30482)
<!-- Reviewable:end -->
2016-08-12 09:39:29 -07:00
Maciej Szulik 783df12205 ScheduledJob e2e 2016-08-12 17:06:50 +02:00
Marcin Wielgus b6d15f1a99 Merge pull request #30443 from mwielgus/fed-util-e2e
Federation e2e test util using clientset 1.4
2016-08-12 13:25:36 +02:00
Kubernetes Submit Queue cb16c07736 Merge pull request #30415 from dchen1107/test1
Automatic merge from submit-queue

Fixed misconfigured kubelet on containervm image for node-e2e.

Fixed #30412 to unblock @coufon's performance benchmark work.

<!-- 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/30415)
<!-- Reviewable:end -->
2016-08-12 04:04:28 -07:00
Marcin Wielgus 45b8061302 Federation e2e test util using clientset 1.4 2016-08-12 08:25:16 +02:00
Kubernetes Submit Queue 7457166290 Merge pull request #30485 from lavalamp/flake
Automatic merge from submit-queue

Turn on flake mitigation for the node e2e test



<!-- 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/30485)
<!-- Reviewable:end -->
2016-08-11 22:38:44 -07:00
Dawn Chen f21960a0f6 Disable qos related tests since the cgroup_root is not properly set for systemd nodes. 2016-08-11 17:54:23 -07: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
Daniel Smith b8dc23d0c1 Turn on flake mitigation for the node e2e test 2016-08-11 17:13:10 -07:00
Kubernetes Submit Queue 8c81c8340f Merge pull request #30333 from coufon/node_density_and_performance_test
Automatic merge from submit-queue

Add Time Series Data and Labels in Node density test

This pull requests contain:

1. Increase the pod creation latency limit according to test results;
2. Add 'GetResourceSeriesWithLabels' in 'resource_collector.go' to provide resource usage time series data;
3. Modify 'GetBasicCPUStats' in 'resource_collector.go' to make a copy of CPU usage array before sorting (otherwise time series data is disordered);
4. Add 'ResourceUsageToPerfDataWithLabels' and 'CPUUsageToPerfDataWithLabels' to attach labels to 'PerfData' for benchmark dashboard;

<!-- 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/30333)
<!-- Reviewable:end -->
2016-08-11 16:27:04 -07:00
Kubernetes Submit Queue dfcb649ee8 Merge pull request #30470 from vishh/node-e2e-owners
Automatic merge from submit-queue

Add Lantao Liu as node e2e reviewer.

Relieve pwittroc@ from node e2e maintenance

<!-- 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/30470)
<!-- Reviewable:end -->
2016-08-11 15:50:11 -07:00
Michael Taufen 8575b73298 Label MemoryEviction [Disruptive] 2016-08-11 15:21:54 -07:00
Vishnu kannan 726788b003 add Lantao Liu as node e2e reviewer. Relieve pwittroc@ from node e2e maintenance
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-08-11 12:56:05 -07:00
Vishnu kannan 089439c30a collect cloud-init logs
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-08-11 12:53:08 -07:00
Chao Xu 3688a78769 let load and density e2e tests use GC if it's on 2016-08-11 11:48:20 -07:00
Dawn Chen cb22c41907 Fixed misconfigured kubelet on containervm image for node-e2e. 2016-08-11 11:19:30 -07:00
Zhou Fang ad81b6da80 migrate UsageToPerfDataWithLabels to perf_util.go 2016-08-11 11:18:00 -07:00
Jeff Vance 7f7b2ad32f two new pv e2e tests 2016-08-11 10:49:15 -07:00
Zhou Fang 67a071eb6c add resource usage to perf data with labels for benchmark 2016-08-11 10:22:43 -07:00
Zhou Fang d7ba28b49f add getting time series resource usage data in resource_collector.go 2016-08-11 10:22:43 -07:00
Zhou Fang e052fd949b set larger pod creation latency limit 2016-08-11 10:22:43 -07:00
Zhou Fang e9c1cb9b78 make a copy when sort array using cpu usage 2016-08-11 10:22:43 -07:00
Kubernetes Submit Queue b159e29da2 Merge pull request #30438 from wojtek-t/mount_etcd_directories_in_kubemark
Automatic merge from submit-queue

Mount etcd directories in Kubemark



<!-- 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/30438)
<!-- Reviewable:end -->
2016-08-11 05:38:22 -07:00
Kubernetes Submit Queue 6f7cc12c3c Merge pull request #29685 from bboreham/kill-setpgid-3
Automatic merge from submit-queue

Fix killing child sudo process in e2e_node tests

Fixes #29211; re-doing #29380 which was reverted due to cross-platform build failure #29669.

The context is we are trying to kill a process started as `sudo kube-apiserver`, but `sudo` ignores signals from the same process group. Applying `Setpgid` means the `sudo kill` process won't be in the same process group, so will not fall foul of this nifty feature.

~~I also took the liberty of removing some code setting `Pdeathsig` because it claims to be doing something  in the same area, but actually it doesn't do that at all.  The setting is applied to the forked process, i.e. `sudo`, and it means the `sudo` will get killed if we (`e2e_node.test`) die.  This (a) isn't what the comment says and (b) doesn't help because sending SIGKILL to the sudo process leaves sudo's child alive.~~

We do need to use the same 'hack' to access `Setpgid` as the `e2e_node.test` program gets built on Windows (although it doesn't run there).

<!-- 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/29685)
<!-- Reviewable:end -->
2016-08-11 05:38:17 -07:00
Maciej Szulik be928af9b3 Allow setting GroupVersion in e2e tests 2016-08-11 13:06:18 +02:00
Kubernetes Submit Queue 7bd2db47f9 Merge pull request #29584 from ixdy/node-e2e-separate-project
Automatic merge from submit-queue

Run node e2e pull VMs in a separate GCP project

I haven't increased quota yet, so we shouldn't merge until I've done so. This is mostly just testing to see if the rest of the plumbing works.

Part of #27648.

cc @fejta @spxtr @pwittrock

<!-- 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/29584)
<!-- Reviewable:end -->
2016-08-11 03:09:13 -07:00
Wojciech Tyczynski dcd5c2f9e6 Mounted etcd directories in Kubemark 2016-08-11 11:37:30 +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
nikhiljindal 4e5e79d667 Adding e2e test for replicasets 2016-08-10 19:37:31 -07:00
Jess Frazelle 7e9d82129e
fix go vet errors
Signed-off-by: Jess Frazelle <jessfraz@google.com>

fix composites

Signed-off-by: Jess Frazelle <me@jessfraz.com>
2016-08-10 16:45:41 -07:00
Jeff Grafton f9b6b70269 Use Kubekins service account in node e2e tests on Jenkins 2016-08-10 14:05:38 -07:00
Jeff Grafton 212ded55c1 Run node e2e pull VMs in a separate GCP project 2016-08-10 14:04:24 -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
Kubernetes Submit Queue eef8bfec23 Merge pull request #29815 from vishh/node-e2e-latest-gci
Automatic merge from submit-queue

Use latest GCI image based on a regex in Node e2e

This PR also makes it possible to run node e2e against multiple previous images, sorted by creation time. A regex for the image name can be used to instruct node e2e to identify test images.

Depends on #29577

<!-- 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/29815)
<!-- Reviewable:end -->
2016-08-10 13:52:21 -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
Vishnu kannan e9034f1e0a make GCI the default node e2e test image. Fix bugs in runner
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-08-10 11:25:40 -07:00
Vishnu kannan 2f6514bd63 Node e2e can run tests against GCE images based on a regex.
It can run tests against multiple existing images that match a regex.
GCI images will be using a regex.

Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-08-10 11:24:54 -07:00
gmarek d0eb29cc67 Change the name of kubemark config file 2016-08-10 16:04:14 +02:00
gmarek 85f3bb271c Print location of kubemark kubeconfig at the end of start-kubemark 2016-08-10 13:50:19 +02:00
gmarek 8b17ec1447 fix kubemark 2016-08-10 12:42:47 +02:00
gmarek ea26433a9c Debug kubemark startup problems 2016-08-10 11:58:22 +02: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
Erick Fejta 17d91dd2ec Assign Probing Container tests to Random-Liu 2016-08-09 17:20:00 -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
Kubernetes Submit Queue 012eb941d6 Merge pull request #28575 from fejta/check-resources
Automatic merge from submit-queue

Move kubemark, skew, upgrade, leak logic into hack/e2e.go

And move out of the `e2e_runner.sh`
Also make `start-kubemark.sh` automatically find `kubernetes-server-linux-amd64.tar.gz` instead of depending on a `RUN_FROM_DISTRO` env var

@gmarek can you review the kubemark-related changes?
@zmerlynn are you the right person to review upgrade changes?

@spxtr take a look at the overall `e2e.go` changes.

This is for https://github.com/kubernetes/kubernetes/issues/21843 and https://github.com/kubernetes/test-infra/pull/250

<!-- 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/28575)
<!-- Reviewable:end -->
2016-08-09 15:54:50 -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
Erick Fejta 7011d8826e Move kubemark, skew, upgrade, leak logic into hack/e2e.go 2016-08-09 14:04:19 -07:00
Timothy St. Clair 456c43c22d Update to shift etcd 2.2 references to use 3.0.3 2016-08-09 08:51:15 -05:00
Wojciech Tyczynski 2280737aa4 Set cache size in Kubemark 2016-08-09 13:34:13 +02: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 a9b6f695da Merge pull request #28480 from caesarxuchao/gc-save-only-meta
Automatic merge from submit-queue

[GarbageCollector] only store typeMeta and objectMeta in the gc store

GC only needs to know the apiVersion, kind, and objectMeta of an object. This PR makes the stores of GC only save these fields.
cc @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/28480)
<!-- Reviewable:end -->
2016-08-08 20:28:37 -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
Chao Xu 4d2350632c only store typeMeta and objectMeta in the gc store 2016-08-08 17:23:13 -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
Kubernetes Submit Queue 10121b4c4b Merge pull request #28116 from jsafrane/integration-startup
Automatic merge from submit-queue

Add integration test for volume controller startup.

Tests #28002 with real etcd (unit tests have a fake one with different behavior).

@kubernetes/sig-storage
2016-08-08 15:07:14 -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
bindata-mockuser baa5df2ada Using Flaky as opposed to FLAKY 2016-08-07 21:50:24 -07: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 711b63e78b Merge pull request #28104 from ping035627/ping035627-patch-4
Automatic merge from submit-queue

SchedulerExtender: add failedPredicateMap in Filter() returns

Fix #25797. modify extender.Filter for adding extenders information to “failedPredicateMap” in findNodesThatFit.
When all the filtered nodes that passed "predicateFuncs" don’t pass the extenders filter, the failedPredicateMap hasn’t the extenders information, should add it, I think. So when the length of the “filteredNodes.Items” is 0, we can know the integral information. (The length of the “filteredNodes.Items” is 0, may be because the extenders filter failed.)
2016-08-06 20:50:33 -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 1b1607a3e6 Merge pull request #30023 from euank/update-coreos-node-e2e
Automatic merge from submit-queue

node_e2e: Use upstream CoreOS image directly

.. and update it to the latest alpha

This will make updating the CoreOS image in the future much simpler since it won't involve project-copying, manual-baking, or so on.

cc @pwittrock @vishh @bboreham @yifan-gu
2016-08-05 22:55:38 -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
Kubernetes Submit Queue 59c916c1d7 Merge pull request #29267 from bboreham/e2e-etcd-port
Automatic merge from submit-queue

For e2e_node tests tell etcd to listen on ports 2379 and 4001

This is the default for etcd2, but etcd3 only listens on 2379.
Specifying the ports keeps things consistent no matter which version the user has installed.

Fixes #29117
2016-08-05 18:44:33 -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
Kubernetes Submit Queue e50a491e49 Merge pull request #30164 from Random-Liu/mark-downwardapi-volume-test-flaky
Automatic merge from submit-queue

Mark "downward API volume should update annotations / labels on modification" as flaky test.

Because of a known race https://github.com/kubernetes/kubernetes/issues/29633, the test is flaky.
https://github.com/kubernetes/kubernetes/issues/28462
https://github.com/kubernetes/kubernetes/issues/28416

After we move the test to be shared by e2e and node e2e https://github.com/kubernetes/kubernetes/pull/29807, it flakes more in node e2e.
https://github.com/kubernetes/kubernetes/issues/30132
https://github.com/kubernetes/kubernetes/issues/30124

Mark the test as flaky and we should reenable it after #29633 is fixed.

@saad-ali
2016-08-05 16:59:17 -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
deads2k 32920b5617 add subjectaccessreviews resource 2016-08-05 11:20:56 -04: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
Kubernetes Submit Queue d781225ac8 Merge pull request #30041 from Random-Liu/fix-node-name-in-node-e2e
Automatic merge from submit-queue

Node E2E: Move the node name initialization to first function of SynchronizedBeforeEach

Currently, we start e2e services in the first function of `SynchronizedBeforeEach` to make sure that we only start them once even we are running test in parallel test nodes.

However, e2e services require `NodeName`, but we initialize `NodeName` in the second function.

This PR moved the initialization logic into the first function, and shared the node name with all test nodes via the `SharedContext`.
2016-08-05 01:28:39 -07:00
Kubernetes Submit Queue 935a3e20c0 Merge pull request #30026 from coufon/node_density_and_performance_test
Automatic merge from submit-queue

Add density (batch pods creation latency and resource) and resource performance tests to `test-e2e-node' built for Linux only

This PR adds `+build linux' to density_test.go, resource_usage.go and resource_collector.go to last PR #29764. 

#29764 fails build because it depends on cgroup which can not be built for os other than Linux.
2016-08-05 00:20:31 -07: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
Kubernetes Submit Queue b658d1f297 Merge pull request #30077 from CodeJuan/master
Automatic merge from submit-queue

fixed regex error, which replace 2 line in template file

fixes #30074
2016-08-04 16:26:02 -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
Kubernetes Submit Queue 4080ad770a Merge pull request #25968 from rrati/density-capacity-pods
Automatic merge from submit-queue

Added test to density that will run maximum capacity pods on nodes

Added a test to the Density Suite that will load the kubelets with their maximum capacity number of pods
2016-08-04 11:23:48 -07:00
Zhou Fang 637e0f91ce add +build linux to density_test, resource_usage_test and resource_collector 2016-08-04 10:21:01 -07:00
Kubernetes Submit Queue 42a12a4cd6 Merge pull request #29978 from hodovska/sharedInformer-fixup
Automatic merge from submit-queue

SharedInformerFactory: usage and fixes

Follow-up for #26709
2016-08-04 09:00:23 -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
Bryan Boreham bd8f4ff8cf Send SIGTERM on Pdeathsig to allow child to clean up
Also fix the comment to better describe the effect of this code.
2016-08-04 15:14:47 +01:00
codejuan b038355c81 fixed regex error, which replace 2 line in template file 2016-08-04 22:13:45 +08:00
Bryan Boreham 1307799a66 Run 'etcd2' if it exists, in preference to 'etcd'
This is to accommodate CoreOS, where 'etcd' is a very old version
2016-08-04 14:37:11 +01:00
Kubernetes Submit Queue 3e5b40d9a5 Merge pull request #29947 from ixdy/go-bindata-cross-image
Automatic merge from submit-queue

Install go-bindata in cross-build image

Another follow-up to #25584.

We need `go-bindata` to create `test/e2e/generated`, and downloading it with `go get` at build time is painful for a variety of reasons. We can just include it in the cross-build image and not worry about it, especially as it updates very infrequently.

This fixes `hack/update-generated-protobuf.sh` as well.

cc @jayunit100 @soltysh
2016-08-04 06:03:29 -07: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
Kubernetes Submit Queue c8ea7af912 Merge pull request #29890 from dchen1107/test1
Automatic merge from submit-queue

Resolve docker-daemon cgroup issue for both systemd and non-systemd node for node e2e tests

Fixed https://github.com/kubernetes/kubernetes/issues/29827

cc/ @coufon this should unblock your pr: #29764

I validated both containervm image and coreos image, and works as expected. 

This is also required for adding gci image to node e2e test infrastructure.
2016-08-04 01:17:01 -07:00
Wojciech Tyczynski 7c4b797fb6 Increase number of namespaces in load test 2016-08-04 10:13:47 +02:00
Kubernetes Submit Queue 74477a83e4 Merge pull request #29889 from janetkuo/deployment-e2e-test-fix
Automatic merge from submit-queue

Fix deployment e2e test: waitDeploymentStatus should error when entering an invalid state

Follow up #28162

1. We should check that max unavailable and max surge aren't violated at all times in e2e tests (didn't check this in deployment scaled rollout yet, but we should wait for it to become valid and then continue do the check until it finishes)
2. Fix some minor bugs in e2e tests 

@kubernetes/deployment
2016-08-04 00:43:41 -07:00
Jeff Vance 86578b2e2f refactored to support multiple It()s and added a prebinding test 2016-08-04 00:23:44 -07:00
Dominika Hodovska 816f6d32ca Collapse duplicate informer creation paths 2016-08-04 09:02:13 +02:00
Kubernetes Submit Queue 7da75631f6 Merge pull request #29956 from david-mcmahon/test_owners
Automatic merge from submit-queue

Remove myself from test ownership.

These are almost certainly not correct, but probably more likely owners than myself.
@rmmh @dchen1107 @timstclair @erictune @mtaufen @caesarxuchao @fgrzadkowski @krousey @lavalamp
2016-08-04 00:01:51 -07:00
PingWang 4106eb70b0 modify extends.Filter
Signed-off-by: PingWang <wang.ping5@zte.com.cn>

Add docs

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

add docs for ExtenderFilterResult.FailedNodes in types.go

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

Modify the extender.Filter test.

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

Update extender_test.go

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

modify the comments

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

gofmt -s scheduler_interface.go

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

update the comments

Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2016-08-04 14:03:32 +08:00
Kubernetes Submit Queue 544851a19f Merge pull request #29796 from deads2k/token-review
Automatic merge from submit-queue

Token review endpoint

Unrevert of #28788, which was rolled back because of https://github.com/kubernetes/kubernetes/issues/29375


@cjcullen @wojtek-t I'd like to remerge if possible.  Have we gotten the field checking mentioned here relaxed? https://github.com/kubernetes/kubernetes/pull/28788#discussion_r71918442
2016-08-03 20:48:31 -07:00
Kubernetes Submit Queue 61bcbae578 Merge pull request #30024 from caesarxuchao/fix-29992
Automatic merge from submit-queue

Fix 29992

Fix #29992.

I copied RC test code to the wrong place to the RS test in #29798. I took a look at the failure reports, they  were all failed on the RS test, so #29798 itself is correct.

Marked as P2 since it fixes a test flake that will block everyone.
2016-08-03 18:55:13 -07:00
Random-Liu 13c8381dc4 Move the node name initialization to first function of
SynchronizedBeforeEach, so that we can pass right node
name when starting e2e services.
2016-08-03 18:14:53 -07:00
Kubernetes Submit Queue de92db3520 Merge pull request #29967 from kubernetes/revert-29242-revert-28802-service
Automatic merge from submit-queue

Revert "Revert "Drop support for --gce-service-account, require activated creds""

Reverts kubernetes/kubernetes#29242
2016-08-03 17:39:10 -07:00
Chao Xu 96c84303bd fix kubectl rolling-update when GC is enabled 2016-08-03 15:57:03 -07:00
Kubernetes Submit Queue 2301ab7e0e Merge pull request #29205 from intelsdi-x/limit_number_of_pods_in_resource_limit_test
Automatic merge from submit-queue

Limit number of pods spawned in SchedulerPredicates validates resourc…

Fixes https://github.com/kubernetes/kubernetes/issues/29190,
With this patch test should spawn at most 10 pods on the smallest node.
2016-08-03 15:08:20 -07:00
David McMahon 3a88747ef8 Remove myself from test ownership. 2016-08-03 14:34:31 -07:00
Euan Kemp 91015e0eff node_e2e: Use upstream CoreOS image directly 2016-08-03 13:39:55 -07:00
Chao Xu ed091e8fe0 fix 29992 2016-08-03 13:36:53 -07:00
Random-Liu 9bfa0a6e47 Split pods.go into smaller parts. 2016-08-03 13:31:48 -07:00
Random-Liu 0362789283 Move pods.go into common directory. 2016-08-03 13:29:17 -07:00
Jeff Grafton 42d2aca7bb Download go-bindata in unit/verify/node e2e Jenkins builds 2016-08-03 13:23:41 -07:00
Jon Cope 9b28212eb6 Overhauled pv e2e test to reflect common lifecycle and de-flake 2016-08-03 13:02:48 -07:00
Kubernetes Submit Queue 5946bb2978 Merge pull request #29996 from kevin-wangzefeng/fix-scheduler-predicates-affinity-tests
Automatic merge from submit-queue

fix creating pod from file failure in scheduler-predicates

fix #29816
ref https://github.com/kubernetes/kubernetes/pull/25584#discussion_r73349738 and https://github.com/kubernetes/kubernetes/pull/25584#discussion_r73349328
2016-08-03 12:55:26 -07:00
Kubernetes Submit Queue 92cb46c303 Merge pull request #27942 from jsafrane/integration-modify
Automatic merge from submit-queue

integration test: Modify PVs/PVCs during binding.

Previous volume binder code was not able to cope with PVs or PVCs getting modified during the binding process. Current one should be resilient to these changes, so let's test it.

It makes the test approximately twice as long as before, from ~2 seconds to ~4-5.

@kubernetes/sig-storage 

Marking as 1.3 target, however it does not really matter here, it's just a test.
2016-08-03 11:18:38 -07:00
Kevin 3491a18b74 fix creating pod from file failure in scheduler-predicates 2016-08-03 22:54:59 +08:00
Marek Grabowski 621a589b6d Revert "Add density (batch pods creation latency and resource) and resource performance tests to `test-e2e-node'" 2016-08-03 15:13:40 +02:00
deads2k 60dd4a5d26 interesting changes to add tokenreviews endpoint to implement webhook 2016-08-03 08:37:45 -04:00
Pawel Skrzynski 75e549d6e7 Limit number of pods spawned in SchedulerPredicates validates resource limits of pods that are allowed to run test
Add min size of pod and max number of pods for SchedulerPredicates validate resouce limits test

Fix typo in patch for SchedulerPredicates validate resouce limits test

Moving max number of pods and min pod cpu request to constants
2016-08-03 14:23:32 +02:00
Kubernetes Submit Queue e8c926047f Merge pull request #29806 from Random-Liu/improve-node-e2e-test-framework
Automatic merge from submit-queue

E2E & Node E2E: Improve node e2e test framework

This is first part of https://github.com/kubernetes/kubernetes/pull/29494.
I split #29494 into several PRs to help review. 

For https://github.com/kubernetes/kubernetes/issues/29081.

This PR changes TestContainerOutput to use the framework pod client:** so that all test using `TestContainerOutput` could be shared automatically. For example: https://github.com/kubernetes/kubernetes/blob/master/test/e2e/configmap.go#L198

@vishh @timstclair 
/cc @kubernetes/sig-node
2016-08-03 05:15:28 -07:00
Kubernetes Submit Queue 371c3965ba Merge pull request #29764 from coufon/node_density_and_performance_test
Automatic merge from submit-queue

Add density (batch pods creation latency and resource) and resource performance tests to `test-e2e-node'

This PR contains two new tests (migrate from e2e test):
1. Density test: verify startup latency and resource usage when create a batch of pod with throughput control. Throughput control is done by sleep for an interval between firing concurrently create pod operations. 
It tests both batch creation and sequential (back-to-back) creation and report the throughputs. 

2. Verify resource usage of steady state kubelet.

The test creates a new resource controller for `test-node-e2e' (resource_controller.go) which monitors resource through a standalone Cadvisor pod (port 8090) with 1s housekeeping interval.
2016-08-03 04:43:14 -07:00
gmarek f1167e9b9c Change the owner of JSON NodeAffinity test 2016-08-03 10:42:07 +02:00
Wojciech Tyczynski b68905b4e0 Reenable PodAffinity e2e tests 2016-08-03 10:34:51 +02:00
Kubernetes Submit Queue 0f3ff30111 Merge pull request #29906 from wojtek-t/increase_service_timeouts
Automatic merge from submit-queue

Increase test timeouts for creating LB in large clusters

Ref #29189
2016-08-03 01:12:38 -07:00
Erick Fejta 548780f05a Revert "Revert "Drop support for --gce-service-account, require activated creds"" 2016-08-02 20:34:02 -07:00
kshafiee 262ae3d021 Adding secrets to federation-apiserver & clientset, adding e2e tests 2016-08-03 02:43:48 +00:00
Alex Robinson 0ed8fa5693 Give away my e2e tests. 2016-08-02 22:43:20 +00:00
k8s-merge-robot fd4e923890 Merge pull request #29332 from caesarxuchao/gc-e2e
Automatic merge from submit-queue

[Garbage Collector] add e2e tests again

#27151 is reverted because gke didn't start correctly after it's merged (https://github.com/kubernetes/kubernetes/pull/27151#issuecomment-233030686).

The possible problem is the `unbound variable`, which is fixed in the second commit of this PR. However, I cannot verify if the PR will fail the gke suite since I don't have the environment to run that suite.

@wojtek-t @lavalamp
2016-08-02 13:26:43 -07:00
k8s-merge-robot 8805bbba3f Merge pull request #29564 from rmmh/owners
Automatic merge from submit-queue

Update test-owners with new tests, add catch-all assignment to test-infra team.

We will triage any additional failures, since they're more likely to be infra related. If they're not, they can always be reassigned (and the owners list can be updated!)

/cc @kubernetes/test-infra-maintainers
2016-08-02 12:53:12 -07:00
Random-Liu 5c7ac701d3 Change TestContainerOutput to use the framework pod client. 2016-08-02 10:26:41 -07:00
Chao Xu 35193be088 plumb --enable_garbage_collector from environment variable;
adding a simple e2e test
2016-08-02 10:02:52 -07:00
k8s-merge-robot 472dcec7b2 Merge pull request #29847 from gmarek/retries
Automatic merge from submit-queue

Retry Node updates in e2e tests

Fix #29516

Ref. https://github.com/kubernetes/kubernetes/issues/27655#issuecomment-235940057

cc @kevin-wangzefeng @wojtek-t
2016-08-02 09:53:12 -07:00
Dawn Chen 5a64977d82 Resolve docker-daemon cgroup issue for both systemd and non-systemd node for node e2e tests. 2016-08-02 09:22:16 -07:00
Zhou Fang 04f83c79e7 change the package of uuid in resource_controller 2016-08-02 09:22:14 -07:00
Zhou Fang f3f3e965cc modify resource_collector.go to get container names of kubelet and docker dynamically 2016-08-02 09:20:04 -07:00
Zhou Fang df55e8fb70 Add density and resource performance test to test-node-e2e 2016-08-02 09:20:04 -07:00
Wojciech Tyczynski 022719b323 Enable PodAffinity by default in scheduler 2016-08-02 15:06:45 +02:00
k8s-merge-robot 61a6596fa1 Merge pull request #29818 from Random-Liu/add-serial-jenkins-job
Automatic merge from submit-queue

Node E2E: Add serial jenkins job.

This PR added a jenkins job for serial test. It will run all serial test one by one.

This will be useful for https://github.com/kubernetes/kubernetes/pull/29809.

@coufon @yujuhong @dchen1107 
/cc @kubernetes/sig-node
2016-08-02 05:34:36 -07:00
Wojciech Tyczynski b456c6dbfd Increase test timeouts for creating LB in large clusters 2016-08-02 12:32:04 +02:00
gmarek b27630577c Retry Node updates in e2e tests 2016-08-02 11:02:04 +02:00
k8s-merge-robot 01cd7f326e Merge pull request #29621 from resouer/uuid
Automatic merge from submit-queue

Refactor uuid into its own pkg util/uuid

Continuing my work ref #15634

Anyone can review this if he/she wants.
2016-08-01 22:21:30 -07:00
Random Liu 654d3a07cb Skip Flaky, Slow and Serial test in proper jenkins job. 2016-08-02 02:13:50 +00:00
Janet Kuo 808041cbd4 Update deployment e2e test to check violated rollingupdate strategy 2016-08-01 17:05:22 -07:00
Janet Kuo a82c55213b Fix incorrect reference to deployment in test 2016-08-01 17:05:22 -07:00
Ryan Hitchman 5d53b3a686 Update test-owners with new tests, add catch-all assignment to
test-infra team.

A future update to the munger will use this to assign any flake without
an explicit owner to a member of the test-infra team.
2016-08-01 16:02:39 -07:00
k8s-merge-robot 6ae6450a39 Merge pull request #28636 from derekwaynecarr/quota_pvc_storage
Automatic merge from submit-queue

Add support to quota pvc storage requests

Adds support to quota cumulative `PersistentVolumeClaim` storage requests in a namespace.

Per our chat today @markturansky @abhgupta - this is not done (lacks unit testing), but is functional.

This lets quota enforcement for `PersistentVolumeClaim` to occur at creation time.  Supporting bind time enforcement would require substantial more work.  It's possible this is sufficient for many, so I am opening it up for feedback.

In the future, I suspect we may want to treat local disk in a special manner, but that would have to be a different resource altogether (i.e. `requests.disk`) or something.

Example quota:

```
apiVersion: v1
kind: ResourceQuota
metadata:
  name: quota
spec:
  hard:
    persistentvolumeclaims: "10"
    requests.storage: "40Gi"
```

/cc @kubernetes/rh-cluster-infra @deads2k
2016-07-31 09:26:20 -07:00
k8s-merge-robot f0fa9e588f Merge pull request #29813 from jayunit100/kill-repo-root-slb-2
Automatic merge from submit-queue

[minor] couple of quick cleanups for kill reporoot

quick fixes from last one,  cc @spxtr @ixdy follow on to  https://github.com/kubernetes/kubernetes/pull/25584
2016-07-29 21:42:42 -07:00
Harry Zhang c495397cae Refactor uuid into its own pkg 2016-07-30 00:07:02 -04:00
k8s-merge-robot 09b64180c2 Merge pull request #29536 from Random-Liu/add-exec-util-in-framework
Automatic merge from submit-queue

E2E & Node E2E: Add exec util in framework

For #29081.
Based on #29092 and #29494.

For first commit is a squashed commit of all old commits.
**The last 2 commits are new.**

This PR added exec util in framework, and moved `privileged.go` and `kubelet_etc_hosts` into `common` directory.

@vishh @timstclair 
/cc @kubernetes/sig-node
2016-07-29 20:25:12 -07:00
Random-Liu 08850cccca Add serial jenkins job. 2016-07-29 19:47:22 -07:00
k8s-merge-robot fe3dda1aeb Merge pull request #29092 from Random-Liu/make-node-e2e-parallel
Automatic merge from submit-queue

Node E2E: Make node e2e parallel

For https://github.com/kubernetes/kubernetes/issues/29081.
Fix https://github.com/kubernetes/kubernetes/issues/26215.
Based on https://github.com/kubernetes/kubernetes/pull/28807, https://github.com/kubernetes/kubernetes/pull/29020, will rebase after they are merged.

**Only the last commit is new.**

We are going to move more tests into the node e2e test. However, currently node e2e test only run sequentially, the test duration will increase quickly when we add more test.

This PR makes the node e2e test run in parallel so as to shorten test duration, so that we can add more test to improve the test coverage.

* If you run the test locally with `make test-e2e-node`, it will use `-p` ginkgo flag, which uses `(cores-1)` parallel test nodes by default.
* If you run the test remotely or in the Jenkin, the parallelism will be controlled by the environment variable `PARALLELISM`. The default value is `8`, which is reasonable for our test node (n1-standard-1).

Before this PR, it took  **833.592s** to run all test on my desktop.
With this PR, it only takes **234.058s** to run.

The pull request node e2e run with this PR takes **232.327s**.
The pull request node e2e run for other PRs takes **673.810s**.

/cc @kubernetes/sig-node
2016-07-29 18:38:29 -07:00
Random-Liu 749e0d0d72 Move privileged and kubelet_etc_hosts into common directory. 2016-07-29 18:29:43 -07:00
Random-Liu 268f458ea4 Add exec util in test framework. 2016-07-29 18:29:43 -07:00
Random-Liu cdb1a039c1 Change LoadConfig to generate restclient config for node e2e test 2016-07-29 18:29:43 -07:00
k8s-merge-robot 44115cd2e4 Merge pull request #29577 from vishh/gci-node-e2e-1
Automatic merge from submit-queue

Adding GCI to node e2e.

Depends on https://github.com/kubernetes/kubernetes/pull/29486
Adding the dev release as of now since stable and beta run docker v1.9.1
which is incompatible with kubelet.
2016-07-29 18:03:14 -07:00
k8s-merge-robot 50e3ee287e Merge pull request #29798 from caesarxuchao/fix-29451
Automatic merge from submit-queue

Fix 29451

Fix #29451. I've also checked other tests in that file to make sure they don't have similar problems.

The issue is P0 and will block the submit queue, so I marked this PR as P0.
2016-07-29 17:25:23 -07:00
jayunit100 4cd6bf42af [minor] couple of quick cleanups for kill reporoot 2016-07-29 20:22:28 -04:00
Random-Liu 9d48c76361 Make the node e2e test run in parallel. 2016-07-29 16:40:59 -07:00
k8s-merge-robot fb09be4561 Merge pull request #29612 from ping035627/ping035627-patch-0726-1
Automatic merge from submit-queue

Combine the const definition

The PR combine the const definition in service.go, and it seems more concise, I think.
2016-07-29 15:54:08 -07:00
Vishnu kannan 21873391e5 adding instance metadata for gci
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-07-29 15:25:46 -07:00
Vishnu Kannan 79d8868c77 Add instance metadata to image config file
Signed-off-by: Vishnu Kannan <vishnuk@google.com>
2016-07-29 15:25:46 -07:00
Vishnu kannan 6c43028a29 adding gci to node e2e
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-07-29 14:26:14 -07:00
Chao Xu 7797ff2ead fix 29451 2016-07-29 13:15:27 -07:00
Jay Vyas 6166083c78 kill repo-root : test/e2e/serviceloadbalancers.go
bindata and yaml, Gobindata automation
bindata utils for generating, go generate
match server version
gitignore for dirty, ca, rbase, KUBE_ROOT, buildfix
(rebased jul-25,29)
2016-07-29 14:35:19 -04:00
k8s-merge-robot 7abc3de621 Merge pull request #29694 from jsafrane/dynprov2-apionly
Automatic merge from submit-queue

Add API for StorageClasses

This is the API objects only required for dynamic provisioning picked apart from the controller logic.

Entire feature is here: https://github.com/kubernetes/kubernetes/pull/29006
2016-07-28 22:00:05 -07:00
k8s-merge-robot eca270bb41 Merge pull request #29423 from kevin-wangzefeng/fix-taints-tolerations-e2e
Automatic merge from submit-queue

Remove redundant pod deletion in scheduler predicates tests and fix taints-tolerations e2e

~~In scheduler predicates test, some tests won't clean pods they created when exit with failure, which may lead to pod leak. This PR is to fix it.~~

Remove redundant pod deletion in scheduler predicates tests, since framework.AfterEach() already did the cleanup work after every test.

Also fix the test "validates that taints-tolerations is respected if not matching", refer to the change on taint-toleration test in #29003, and https://github.com/kubernetes/kubernetes/pull/24134#discussion_r63794924.
2016-07-28 21:26:51 -07:00
childsb f5bd7d471e API Changes for StorageClass 2016-07-28 19:01:01 -04:00
k8s-merge-robot 2817674715 Merge pull request #29557 from deads2k/make-prefx-configurable
Automatic merge from submit-queue

make the resource prefix in etcd configurable for cohabitation

This looks big, its not as bad as it seems.

When you have different resources cohabiting, the resource name used for the etcd directory needs to be configurable.  HPA in two different groups worked fine before.  Now we're looking at something like RC<->RS.  They normally store into two different etcd directories.  This code allows them to be configured to store into the same location.

To maintain consistency across all resources, I allowed the `StorageFactory` to indicate which `ResourcePrefix` should be used inside `RESTOptions` which already contains storage information.

@lavalamp affects cohabitation.
@smarterclayton @mfojtik prereq for our rc<->rs and d<->dc story.
2016-07-28 03:01:28 -07:00
k8s-merge-robot 1ae9b73cd3 Merge pull request #29673 from pmorie/mount-collision
Automatic merge from submit-queue

Fix mount collision timeout issue

Short- or medium-term workaround for #29555.  The root issue being fixed here is that the recent attach/detach work in the kubelet uses a unique volume name as a key that tracks the work that has to be done for each volume in a pod to attach/mount/umount/detach.  However, the non-attachable volume plugins do not report unique names for themselves, which causes collisions when a single secret or configmap is mounted multiple times in a pod.

This is still a WIP -- I need to add a couple E2E tests that ensure that tests break in the future if there is a regression -- but posting for early review.

cc @kubernetes/sig-storage 

Ultimately, I would like to refine this a bit further.  A couple things I would like to change:

1.  `GetUniqueVolumeName` should be a property ONLY of attachable volumes
2.  I would like to see the kubelet apparatus for attach/mount/umount/detach handle non-attachable volumes specifically to avoid things like the `WaitForControllerAttach` call that has to be done for those volume types now
2016-07-27 21:06:47 -07:00
Paul Morie f15684e0c4 Add e2e coverage for mount collisions 2016-07-27 17:54:01 -04:00
Bryan Boreham ba17bac843 Change process group when sending kill signal
Otherwise when the target process is running sudo it ignores the signal.
2016-07-27 18:11:58 +01:00
Erick Fejta 12d923ed15 Revert "Fix killing child sudo process in e2e_node tests" 2016-07-27 21:53:05 +05:30
deads2k aa3db4d995 make the resource prefix in etcd configurable for cohabitation 2016-07-27 07:51:40 -04:00
k8s-merge-robot 03fe6b962c Merge pull request #29380 from bboreham/kill-setpgid
Automatic merge from submit-queue

Fix killing child sudo process in e2e_node tests

Fixes #29211.

The context is we are trying to kill a process started as `sudo kube-apiserver`, but `sudo` ignores signals from the same process group. Applying `Setpgid` means the `sudo kill` process won't be in the same process group, so will not fall foul of this nifty feature.

I also took the liberty of removing some code setting `Pdeathsig` because it claims to be doing something  in the same area, but actually it doesn't do that at all.  The setting is applied to the forked process, i.e. `sudo`, and it means the `sudo` will get killed if we (`e2e_node.test`) die.  This (a) isn't what the comment says and (b) doesn't help because sending SIGKILL to the sudo process leaves sudo's child alive.

I didn't use the "hack for linux-only" approach because I think `Setpgid` is available on all platforms that `e2e_node` builds on.
2016-07-27 03:18:15 -07:00
Bryan Boreham dbc59aad7c For e2e_node tests tell etcd to listen on ports 2379 and 4001
This is the default for etcd2, but etcd3 only listens on 2379.
Specifying the ports keeps things consistent no matter which
version the user has installed.
2016-07-27 11:16:40 +01:00
k8s-merge-robot 540e992e08 Merge pull request #28850 from MHBauer/faster-test
Automatic merge from submit-queue

Faster test

<!--
Checklist for submitting a Pull Request

Please remove this comment block before submitting.

1. Please read our [contributor guidelines](https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md).
2. See our [developer guide](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md).
3. If you want this PR to automatically close an issue when it is merged,
   add `fixes #<issue number>` or `fixes #<issue number>, fixes #<issue number>`
   to close multiple issues (see: https://github.com/blog/1506-closing-issues-via-pull-requests).
4. Follow the instructions for [labeling and writing a release note for this PR](https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes) in the block below.
-->
In attempting to troubleshoot flakes with this test case I actually wanted to understand how it worked.
There's some poor comments that need work.
I added some additional output which may or may not help in debugging the flakes.
I doubt this fixes the flake.

My major concern is the 'refactor' I did of the test case to batch up runs by sub-test-case. As it stood there was a 200ms pause between each sub, so they should not have interfered with each other. Now they are just started as fast as possible, but only 20 run at a time before moving on to the next 20. I am not sure if I am violating the ethos of the original test case.

Runs on my computer are down from 2m40s -> 40s.
Getting rid of the arbitrary client limiting brings it down to ~12 seconds. 11 to fetch the image and <1 to actually run the tests against the proxies. I can add a zero to the number of loops if you want to hit it harder. It would result in 10x as much text output though.


[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/.github/PULL_REQUEST_TEMPLATE.md?pixel)]()
2016-07-26 23:38:09 -07:00
Kevin 57d22a156c Remove redundant pod deletion in scheduler predicates tests and fix taints-tolerations e2e 2016-07-27 14:01:13 +08:00