Commit Graph

3988 Commits (12d923ed1583ac5cbec8d98003c7e08de5d1e9fd)

Author SHA1 Message Date
Erick Fejta 12d923ed15 Revert "Fix killing child sudo process in e2e_node tests" 2016-07-27 21:53:05 +05:30
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
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
k8s-merge-robot d82e404a00 Merge pull request #28351 from sttts/sttts-kubectl-create-quota
Automatic merge from submit-queue

Add support for kubectl create quota command

Follow-up of https://github.com/kubernetes/kubernetes/pull/19625

```
Create a resourcequota with the specified name, hard limits and optional scopes

Usage:
  kubectl create quota NAME [--hard=key1=value1,key2=value2] [--scopes=Scope1,Scope2] [--dry-run=bool] [flags]

Aliases:
  quota, q


Examples:
  // Create a new resourcequota named my-quota
  $ kubectl create quota my-quota --hard=cpu=1,memory=1G,pods=2,services=3,replicationcontrollers=2,resourcequotas=1,secrets=5,persistentvolumeclaims=10

  // Create a new resourcequota named best-effort
  $ kubectl create quota best-effort --hard=pods=100 --scopes=BestEffort
```
2016-07-26 21:20:04 -07:00
k8s-merge-robot b8e78b3310 Merge pull request #29558 from janetkuo/deployment-rollover-minreadyseconds-e2e
Automatic merge from submit-queue

Use nonexistent image instead of minReadySeconds in deployment rollover e2e test

Fixes #26834 

@kubernetes/deployment
2016-07-26 15:34:14 -07:00
k8s-merge-robot 9014ceb9d8 Merge pull request #29286 from soltysh/wait_pod2
Automatic merge from submit-queue

Rework pod waiting mechanism in e2e tests to accept pod and watch based

This PR re-applies #28212 which was reverted in #29223. The only difference is that the initial PR contained also `PodStartTimeout` shortening (see [here](4b0c0bd924)) which might caused the problems. Let's give it a 2nd try. I've tested all the flakes and they were passing on my machine.

@smarterclayton @apelisse ptal
2016-07-26 15:01:13 -07:00
Dr. Stefan Schimanski 199f991f6a Add --scopes to kubectl-create-quota and add tests 2016-07-26 14:12:35 +02:00
Dr. Stefan Schimanski 36afe2a43a Fix nsFlag scope in kubectl-run e2e test 2016-07-26 11:32:08 +02:00
k8s-merge-robot 396254c11a Merge pull request #29486 from vishh/gci-node-e2e
Automatic merge from submit-queue

Make it possible to run node e2e with GCI.
2016-07-25 16:53:27 -07:00
Morgan Bauer b50e986fad
code comments
- what the test is doing
 - how the test is set up
 - subsections of the test setup

additional output

 - print time spent getting ready to run proxy attempts
 - number of test cases
 - multiple attempts of each test case
 - how many total proxying attempts will be made
 - fast path output now has numerical identity of attempt like error output
 - error output has time taken and http status like fast path output

batching runs

 - run groups of test cases vs starting all 34*20=680 proxy attempts at
   the same time.
 - don't wait between starting proxy attempts anymore.

proxy e2e changes

 - disable the client side rate limiter
 - use `By` construct of ginkgo for inline `STEP` logging
 - move the waitGroup add outside of the loop
2016-07-25 14:40:57 -07:00
Vishnu kannan d31608fcc8 Make it possible to run node e2e with GCI via make
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-07-25 12:21:37 -07:00
Janet Kuo b45afc04a2 Use nonexistent image instead of minReadySeconds in deployment rollover e2e test 2016-07-25 11:45:46 -07:00
k8s-merge-robot c186afd46e Merge pull request #29122 from ronnielai/image-gc-1-1
Automatic merge from submit-queue

Syncing imaging pulling backoff logic

- Syncing the backoff logic in the parallel image puller and the sequential image puller to prepare for merging the two pullers into one.
- Moving image error definitions under kubelet/images
2016-07-25 11:43:22 -07:00
k8s-merge-robot ca06157421 Merge pull request #28162 from kargakis/annotation-fixes-for-scaling
Automatic merge from submit-queue

controller: update all rs annotations on a scaled rollout

Closes https://github.com/kubernetes/kubernetes/issues/28145

@kubernetes/deployment
2016-07-25 10:58:18 -07:00
k8s-merge-robot 4fdde68f78 Merge pull request #28916 from luxas/flake_celery
Automatic merge from submit-queue

Add liveness probe to the flower rc in order to fix a flake

Fixes #27857 
@fejta @ixdy @timstclair @mwielgus
2016-07-23 15:19:52 -07:00
Lucas Käldström 5db3f6d25e Add liveness probe to the flower rc in order to fix a flake 2016-07-24 00:08:52 +03:00
k8s-merge-robot 9e5d562805 Merge pull request #29435 from Random-Liu/setup-node-for-docker-validation
Automatic merge from submit-queue

Change SETUP_NODE to True for node e2e docker validation test.

The continuous node e2e docker validation test is failing because:
```
W0722 00:48:52.163940    1265 image_list.go:85] Could not pre-pull image gcr.io/google_containers/netexec:1.4 exit status 1 output:  Cannot connect to the Docker daemon. Is the docker daemon running on this host?
```
This is because jenkins is not added to docker user group.
For other images tested in node e2e, jenkins is added to docker user group when the images are initially created https://github.com/kubernetes/kubernetes/blob/master/test/e2e_node/environment/setup_host.sh#L102.

However, in node e2e docker validation test, we are using GCI image which doesn't do that.
So we should use the `SETUP_NODE` option to add user to docker group before test running b6c87904f6/test/e2e_node/e2e_remote.go (L150-L159).

This is only one line change, could you help me review the PR? @wonderfly 
Thanks a lot! :)
2016-07-22 17:13:09 -07:00
Hongchao Deng 74e6626967 Update etcd deprecated flag
- "-addr" => "--advertise-client-urls"
- "-bind-addr" => "--listen-client-urls"
2016-07-22 11:01:11 -07:00
k8s-merge-robot 60e59c9461 Merge pull request #29184 from wojtek-t/rs_controller_ref
Automatic merge from submit-queue

ReplicaSet controller can set/remove ControllerRef

This is mostly a copy from https://github.com/kubernetes/kubernetes/pull/27600
2016-07-22 04:18:00 -07:00
k8s-merge-robot f37cadd357 Merge pull request #29445 from wojtek-t/fix_kubemark_after_ip_address_machinations
Automatic merge from submit-queue

Fix Kubemark config after IP addresses machinations
2016-07-22 03:44:46 -07:00
Wojciech Tyczynski 28205d6a43 Fix Kubemark config after IP addresses machinations 2016-07-22 11:49:15 +02:00
Random-Liu 7b27358068 Change SetupNode to True for node e2e docker validation test. 2016-07-22 00:07:09 -07:00
k8s-merge-robot cfdb468654 Merge pull request #29114 from matttproud/cleanups/density_e2e
Automatic merge from submit-queue

test/e2e: plug time.Ticker resource leak.

This commit ensures that `logPodStartupStatus` does not leak
running `time.Ticker` instances.  Upon termination of the consuming
routine, we stop the ticker.
2016-07-22 00:05:20 -07:00
Antoine Pelisse ab3e4494d3 Tentatively fix broken kubemark tests
The multi-line bash command is ill-formed.
2016-07-21 20:39:04 -07:00
k8s-merge-robot c8a3c5c02c Merge pull request #29396 from fgrzadkowski/fix_kubemark
Automatic merge from submit-queue

Add static IP address for kubemark master.

This PR fixes kubemark, which was broken after https://github.com/kubernetes/kubernetes/pull/29295.

Because of https://github.com/kubernetes/kubernetes/issues/29392 merge queue is not blocked so it's not super urgent.

@k8s-oncall @wojtek-t  @roberthbailey @lavalamp
2016-07-21 16:35:44 -07:00
k8s-merge-robot ea312b7b31 Merge pull request #29182 from kevin-wangzefeng/fix-scheduler-predicates
Automatic merge from submit-queue

use regular client instead of kubectl in scheduler predicate tests when checking/setting/cleanning taints/labels

The existing implementation in scheduler predicate tests uses kubectl to check/set/clean taints/labels on node, which makes the test very related to kubectl.

 This PR is to use regular client instead.
2016-07-21 16:02:59 -07:00
Filip Grzadkowski a2c2f7d8f7 Add static IP address for kubemark master. 2016-07-21 21:03:18 +02:00
k8s-merge-robot cad9333ce7 Merge pull request #29242 from kubernetes/revert-28802-service
Automatic merge from submit-queue

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

Reverts kubernetes/kubernetes#28802

This appears to break the soak tests with "invalid grant" errors -- see the recent batch of errors in #27920.
2016-07-21 07:57:41 -07:00
Bryan Boreham e5e7b60e9a Remove Pdeathsig code because it doesn't do what was intended
Pdeathsig is applied to the process we are starting, so that will get
killed if the e2e_node process dies, which isn't what we need.
2016-07-21 15:19:39 +01:00
Bryan Boreham a8d7e93d66 Change process group when sending kill signal
Otherwise when the target process is running sudo it ignores the signal.
2016-07-21 15:11:03 +01:00
k8s-merge-robot 7e0a6e497a Merge pull request #29288 from wojtek-t/ability_for_faster_load_test
Automatic merge from submit-queue

Allow for overriding throughput in load test

We seem to be already supporting higher throughput that what the default is.

I'm going to increase the throughput in our tests:
- speed up scalability tests
- ensure that what I'm seeing locally is really the repeatable case

This PR is a short preparation for those experiments.

[Ideally, I would like to have kubemark-500 to be finishing within 30 minutes. And I think this should be doable pretty soon.]

@gmarek
2016-07-21 05:20:20 -07:00
k8s-merge-robot 80a59f0294 Merge pull request #29131 from Random-Liu/use-pre-pull
Automatic merge from submit-queue

Change some node e2e test to use the prepull image framework.

Fix https://github.com/kubernetes/kubernetes/issues/28868.

Node e2e test framework pre-pulls all images in [image_list.go](bc2f223f5a/test/e2e_node/image_list.go)

All node e2e test should use image from the "image_list". If a test needs new image, we should update the image_list to include the new image.

/cc @kubernetes/sig-node to notice people to use `image_list` when adding test. :)
2016-07-21 02:39:57 -07:00
Wojciech Tyczynski e21b7109e1 Integration tests for ReplicaSet OwnerRef 2016-07-21 11:36:52 +02:00
Kevin 4e280c6fd9 use regular client instead of kubectl in scheduler predicate tests when setting/cleanning taints/labels 2016-07-21 17:13:28 +08:00
Wojciech Tyczynski 7f70a63095 Allow for overriding throughput in load test 2016-07-21 10:07:53 +02:00
Wojciech Tyczynski 4d0d115690 Revert "add tokenreviews endpoint to implement webhook" 2016-07-21 09:40:35 +02:00
k8s-merge-robot 8ead63f127 Merge pull request #28788 from deads2k/wire-authentication
Automatic merge from submit-queue

add tokenreviews endpoint to implement webhook

Wires up an API resource under `apis/authentication.k8s.io/v1beta1` to expose the webhook token authentication API as an API resource.  This allows one API server to use another for authentication and uses existing policy engines for the "authoritative" API server to controller access to the endpoint.

@cjcullen you wrote the initial type
2016-07-20 22:23:45 -07:00
Michail Kargakis 97b9c73bf1 e2e: test for scaling+rolling out a deployment at once 2016-07-21 00:42:25 +02:00
Tim Hockin b829d4d4ef Merge pull request #26702 from joe2far/fix-broken-links
Fix broken warning image link in docs
2016-07-20 15:10:41 -07:00
Ron Lai ee4822e476 Moving image pulling errors under kubelet/images 2016-07-20 14:20:53 -07:00
deads2k 2c4a9f2e8d interesting changes to add tokenreviews endpoint to implement webhook 2016-07-20 15:11:56 -04:00
Avesh Agarwal f37d8fd60f Fix node e2e (kubelet metrics) by adding GinkgoRecover to a goroutine
to avoid panic
2016-07-20 13:26:56 -04:00
k8s-merge-robot d1fba05a1b Merge pull request #29020 from Random-Liu/add-namespace-controller-in-node-e2e
Automatic merge from submit-queue

Start namespace controller in node e2e

Fix https://github.com/kubernetes/kubernetes/issues/28320.
Based on https://github.com/kubernetes/kubernetes/pull/28807, only the last 2 commits are new.

Before this PR, there was no namespace controller running in node e2e test infrastructure. We can not enable the [`delete-namespace`](f2ddd60eb9/test/e2e/framework/test_context.go (L109)) flag in the test framework.
So after the test running, there will be running pod left on the test node. This seems to be acceptable in our test infrastructure because we create an new instance each time.

However, in 1.4 we may want to provide part of the test as node conformance test to the user, they definitely don't want the test to leave tons of pods on their node after test running.

Currently, there is no easy way to only start namespace controller in kube-controller-manager (confirmed with @mikedanese), so in this PR I started a "uncontainerized" one in the test infrastructure.

This PR:
* Started the namespace controller in the node e2e test infrastructure and enable the automatic namespace deletion.
* Change the privileged test to use framework (@yujuhong), so that all node e2e tests are using the framework and test pods will be cleaned up by namespace controller.

/cc @kubernetes/sig-node
2016-07-20 09:24:26 -07:00
Random-Liu 691d24cc66 Change some node e2e test to use the prepull image framework. 2016-07-20 08:16:40 -07:00
k8s-merge-robot 3af6f472e4 Merge pull request #29250 from aveshagarwal/master-node-e2e-configmap-fixes
Automatic merge from submit-queue

Fix a typo
2016-07-20 07:52:23 -07:00
Maciej Szulik 17788bb1e0 Rework pod waiting mechanism in e2e tests to accept pod and watch based
on its ResourceVersion to make sure we catch all the events.
2016-07-20 15:21:50 +02:00
Avesh Agarwal 0c8b7de238 Fixes a typo 2016-07-19 22:40:48 -04:00
Marek Grabowski ec4b28791e Revert "Scheduler predicates tests should consider unschedulable" 2016-07-19 18:50:40 -07:00
Ryan Hitchman 0cb96b3614 Revert "Drop support for --gce-service-account, require activated creds" 2016-07-19 17:41:39 -07:00
Antoine Pelisse 321c410308 Revert "Switched watches in tests require ResourceVersion to be passed" 2016-07-19 13:28:57 -07:00