Commit Graph

1125 Commits (d215d4bf8ce17908ba961cac12739528c40a0272)

Author SHA1 Message Date
Kubernetes Submit Queue 38b26db33a Merge pull request #46613 from FengyunPan/fix-e2e-service
Automatic merge from submit-queue (batch tested with PRs 45534, 37212, 46613, 46350)

[e2e]Fix define redundant parameter

When timeout to reach HTTP service, redundant parameter make the
error is nil.
2017-05-30 04:46:04 -07:00
gmarek 0cc1999e16 Make log-monitor give up on trying to ssh to a dead node after some time 2017-05-30 10:27:10 +02:00
FengyunPan 38e8c32a26 [e2e]Fix define redundant parameter
When timeout to reach HTTP service, redundant parameter make the
error is nil.
2017-05-30 16:09:33 +08:00
Kubernetes Submit Queue d9f3ea5191 Merge pull request #46593 from shyamjvs/fix-perfdata-subresource
Automatic merge from submit-queue

Fix minor bugs in setting API call metrics with subresource

Based on changes from https://github.com/kubernetes/kubernetes/pull/46354

/cc @wojtek-t @smarterclayton
2017-05-29 08:45:02 -07:00
Shyam Jeedigunta e897b21506 Fix minor bugs in setting API call metrics with subresource 2017-05-29 15:04:52 +02:00
Kubernetes Submit Queue 1444d252e1 Merge pull request #46457 from nicksardo/gce-api-refactor
Automatic merge from submit-queue (batch tested with PRs 46407, 46457)

GCE - Refactor API for firewall and backend service creation

**What this PR does / why we need it**:
 - Currently, firewall creation function actually instantiates the firewall object; this is inconsistent with the rest of GCE api calls. The API normally gets passed in an existing object.
 - Necessary information for firewall creation, (`computeHostTags`,`nodeTags`,`networkURL`,`subnetworkURL`,`region`) were private to within the package. These now have public getters.
 - Consumers might need to know whether the cluster is running on a cross-project network. A new `OnXPN` func will make that information available.
 - Backend services for regions have been added. Global ones have been renamed to specify global. 
 - NamedPort management of instance groups has been changed from an `AddPortsToInstanceGroup` func (and missing complementary `Remove...`) to a single, simple `SetNamedPortsOfInstanceGroup`
 - Addressed nitpick review comments of #45524 

ILB needs the regional backend services and firewall refactor.  The ingress controller needs the new `OnXPN` func to decide whether to create a firewall.

**Release note**:
```release-note
NONE
```
2017-05-28 13:16:58 -07:00
Kubernetes Submit Queue f219f3c153 Merge pull request #46558 from MrHohn/esipp-endpoint-waittime
Automatic merge from submit-queue

Apply KubeProxyEndpointLagTimeout to ESIPP tests

Fixes #46533.

The previous construction of ESIPP tests is weird, so I redo it a bit.

A 30 seconds `KubeProxyEndpointLagTimeout` is introduced, as these tests ain't verifying performance, may be better to not make it too tight.

/assign @thockin 

**Release note**:

```release-note
NONE
```
2017-05-27 11:17:51 -07:00
Nick Sardo 9063526dfb GCE: Refactor firewalls/backendservices api; other small changes 2017-05-27 10:25:03 -07:00
Kubernetes Submit Queue daee6d4826 Merge pull request #45524 from MrHohn/l4-lb-healthcheck
Automatic merge from submit-queue (batch tested with PRs 46252, 45524, 46236, 46277, 46522)

Make GCE load-balancers create health checks for nodes

From #14661. Proposal on kubernetes/community#552. Fixes #46313.

Bullet points:
- Create nodes health check and firewall (for health checking) for non-OnlyLocal service.
- Create local traffic health check and firewall (for health checking) for OnlyLocal service.
- Version skew: 
   - Don't create nodes health check if any nodes has version < 1.7.0.
   - Don't backfill nodes health check on existing LBs unless users explicitly trigger it.

**Release note**:

```release-note
GCE Cloud Provider: New created LoadBalancer type Service now have health checks for nodes by default.
An existing LoadBalancer will have health check attached to it when:
- Change Service.Spec.Type from LoadBalancer to others and flip it back.
- Any effective change on Service.Spec.ExternalTrafficPolicy.
```
2017-05-26 19:47:57 -07:00
Zihong Zheng e332828690 Apply KubeProxyEndpointLagTimeout to ESIPP tests 2017-05-26 18:14:20 -07:00
Zihong Zheng 897da549bc Autogenerated files 2017-05-26 13:19:14 -07:00
Zihong Zheng a61cc7f477 Update firewall e2e test for LB healthcheck firewall 2017-05-26 13:18:50 -07:00
Michelle Au f385dfcb3b Address review comments 2017-05-26 11:48:31 -07:00
Andy Goldstein 41345418cb Support grabbing test suite metrics
Update the "interesting" controller-manager metrics to match the
current names for the garbage collector, and add namespace controller
metrics to the list.
2017-05-26 11:21:27 -04:00
guoyunxian 0bf96a3ca4 Remove the same case judement
This patch remove the same case judement
2017-05-26 17:28:53 +08:00
Kubernetes Submit Queue b8dc4915f7 Merge pull request #46423 from gmarek/fix_perf
Automatic merge from submit-queue (batch tested with PRs 45949, 46009, 46320, 46423, 46437)

Fix performance test issues

Fix #46198
2017-05-25 19:41:04 -07:00
Kubernetes Submit Queue 470a6a45d5 Merge pull request #45949 from NickrenREN/kubelet-metric
Automatic merge from submit-queue (batch tested with PRs 45949, 46009, 46320, 46423, 46437)

Unregister some metrics

delete some registered metrics since they are not observed


**Release note**:
```release-note
NONE
```
2017-05-25 19:40:58 -07:00
Michail Kargakis e18f6cb591
test: set failure traps for all deployment e2e tests 2017-05-25 19:01:50 +02:00
Kubernetes Submit Queue 26d7ee0447 Merge pull request #44774 from kargakis/uniquifier
Automatic merge from submit-queue

Switch Deployments to new hashing algo w/ collision avoidance mechanism

Implements https://github.com/kubernetes/community/pull/477

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

Fixes https://github.com/kubernetes/kubernetes/issues/29735
Fixes https://github.com/kubernetes/kubernetes/issues/43948

```release-note
Deployments are updated to use (1) a more stable hashing algorithm (fnv) than the previous one (adler) and (2) a hashing collision avoidance mechanism that will ensure new rollouts will not block on hashing collisions anymore.
```
2017-05-25 06:09:58 -07:00
Kubernetes Submit Queue 23348ceedc Merge pull request #46354 from smarterclayton/metrics_subresource
Automatic merge from submit-queue (batch tested with PRs 45573, 46354, 46376, 46162, 46366)

Subresources are not included in apiserver prometheus metrics

Subresources are very often completely different code paths and errors
generated on those code paths are important to distinguish.

@kubernetes/sig-api-machinery-pr-reviews

```release-note
The Prometheus metrics for the kube-apiserver for tracking incoming API requests and latencies now return the `subresource` label for correctly attributing the type of API call.
```
2017-05-25 03:13:59 -07:00
gmarek 02951f182e Correctly handle nil resource usage in performance e2e tests 2017-05-25 11:44:03 +02:00
gmarek ded8e03fc3 Reduce service creation/deletion parallelism in the load test 2017-05-25 11:44:03 +02:00
Michail Kargakis 4a2c5eae92
Implement hash collision avoidance mechanism
Signed-off-by: Michail Kargakis <mkargaki@redhat.com>
2017-05-25 11:17:45 +02:00
Clayton Coleman ad431c454c
Subresources are not included in apiserver prometheus metrics
Subresources are very often completely different code paths and errors
generated on those code paths are important to distinguish.
2017-05-24 16:23:50 -04:00
Zihong Zheng 03d08623e8 Fix CheckPodsCondition to print out the correct podName 2017-05-24 10:20:57 -07:00
Kubernetes Submit Queue c2c5051adf Merge pull request #44899 from smarterclayton/burst
Automatic merge from submit-queue (batch tested with PRs 38990, 45781, 46225, 44899, 43663)

Support parallel scaling on StatefulSets

Fixes #41255

```release-note
StatefulSets now include an alpha scaling feature accessible by setting the `spec.podManagementPolicy` field to `Parallel`.  The controller will not wait for pods to be ready before adding the other pods, and will replace deleted pods as needed.  Since parallel scaling creates pods out of order, you cannot depend on predictable membership changes within your set.
```
2017-05-22 19:07:09 -07:00
Michelle Au 1a280993a9 Local persistent volume basic e2e 2017-05-22 14:46:03 -07:00
gmarek 38981e9fd4 Add more logs to kubelet_stats 2017-05-22 15:49:57 +02:00
Clayton Coleman e40648de68
E2E test for statefulset burst 2017-05-21 01:14:31 -04:00
David Ashpole 0bd0d705e3 log age of stats used for evictions during eviction tests 2017-05-18 13:51:23 -07:00
Kubernetes Submit Queue 7df0178076 Merge pull request #42975 from smarterclayton/time_namespace
Automatic merge from submit-queue (batch tested with PRs 40234, 45885, 42975)

Log how much time it takes e2e tests to clean up the namespace
2017-05-17 20:27:52 -07:00
Clayton Coleman fcab3a442d
Log how much time it takes e2e tests to clean up the namespace
Will get a better handle on deletion test wasted time
2017-05-17 17:45:04 -04:00
Janet Kuo 3f2d8ae682 Extract common code in deployment e2e and integration test 2017-05-17 14:41:59 -07:00
NickrenREN ec7bf948d4 Unregister some metrics
delete some registered metrics since they are not observed
2017-05-17 18:31:56 +08:00
Kubernetes Submit Queue 3386425475 Merge pull request #45831 from MrHohn/esipp-panic-fix
Automatic merge from submit-queue

Check endpoint subsets length before asserting addresses.

Fix #45824.

Panics were caused by [WaitForEndpointOnNode()](3227f44157/test/e2e/framework/service_util.go (L329)). Check subsets length ahead to prevent panicing.

/assign @freehan

cc @wojtek-t 

**Release note**:

```release-note
NONE
```
2017-05-16 00:32:58 -07:00
Zihong Zheng 6797f2a7a9 Check endpoint subsets length before asserting addresses. 2017-05-15 11:12:18 -07:00
Dmitry Shulyak 2612e0c78a Move client/unversioned/remotecommand to client-go
Module remotecommand originally part of kubernetes/pkg/client/unversioned was moved
to client-go/tools, and will be used as authoritative in kubectl, e2e and other places.

Module remotecommand relies on util/exec module which will be copied to client-go/pkg/util
2017-05-15 16:28:56 +03:00
Kubernetes Submit Queue 3619c33350 Merge pull request #42759 from mtaufen/kubelet-apis-reorg
Automatic merge from submit-queue

Reorganize kubelet tree so apis can be independently versioned

@yujuhong @lavalamp @thockin @bgrant0607 
This is an example of how we might reorganize `pkg/kubelet` so the apis it exposes can be independently versioned. This would also provide a logical place to put the `KubeletConfiguration` type, which currently lives in `pkg/apis/componentconfig`; it could live in e.g. `pkg/kubelet/apis/config` instead.

Take a look when you have a chance and let me know what you think. The most significant change in this PR is reorganizing `pkg/kubelet/api` to `pkg/kubelet/apis`, the rest is pretty much updating import paths and `BUILD` files.
2017-05-12 17:43:22 -07:00
Kubernetes Submit Queue 35eba22cc7 Merge pull request #41162 from MrHohn/esipp-ga
Automatic merge from submit-queue (batch tested with PRs 45623, 45241, 45460, 41162)

Promotes Source IP preservation for Virtual IPs from Beta to GA

Fixes #33625. Feature issue: kubernetes/features#27.

Bullet points:
- Declare 2 fields (ExternalTraffic and HealthCheckNodePort) that mirror the ESIPP annotations.
- ESIPP alpha annotations will be ignored.
- Existing ESIPP beta annotations will still be fully supported.
- Allow promoting beta annotations to first class fields or reversely.
- Disallow setting invalid ExternalTraffic and HealthCheckNodePort on services. Default ExternalTraffic field for nodePort or loadBalancer type service to "Global" if not set.

**Release note**:

```release-note
Promotes Source IP preservation for Virtual IPs to GA.

Two api fields are defined correspondingly:
- Service.Spec.ExternalTrafficPolicy <- 'service.beta.kubernetes.io/external-traffic' annotation.
- Service.Spec.HealthCheckNodePort <- 'service.beta.kubernetes.io/healthcheck-nodeport' annotation.
```
2017-05-12 15:00:46 -07:00
Kubernetes Submit Queue 7a9c2f7f01 Merge pull request #45733 from danwinship/network-test-timeout
Automatic merge from submit-queue (batch tested with PRs 45685, 45572, 45624, 45723, 45733)

Remove a test utility function that is redundant and kinda broken

Framework.WaitForAnEndpoint() has no timeout, so if something goes wrong and the endpoint doesn't get created, the test will hang forever. (This is happening for some reason sometimes in OpenShift right now, and when the CI system eventually times out and kills the VM, it loses the logs that would explain what failed.)

There's already another nearly-identical WaitForEndpoint() method that *does* take a timeout, so people can just use that instead.

```release-note
NONE
```
2017-05-12 14:01:00 -07:00
Kubernetes Submit Queue 5cce4e8583 Merge pull request #45719 from shyamjvs/podstartuplatency
Automatic merge from submit-queue (batch tested with PRs 45653, 45719, 45729, 45730, 44250)

Print pod startup latency metric as perfdata

Follows #45657 
This should print pod startup latency in same format as api calls latencies.

cc @wojtek-t @gmarek
2017-05-12 12:12:44 -07:00
Zihong Zheng 12b6c2b879 Autogenerated files 2017-05-12 10:59:00 -07:00
Zihong Zheng 7ed716a997 Change to use ESIPP first class fields and update comments 2017-05-12 10:59:00 -07:00
Michael Taufen cbad320205 Reorganize kubelet tree so apis can be independently versioned 2017-05-12 10:02:33 -07:00
Dan Winship 35bb7825fe Remove one slightly-broken wait-for-endpoints test util and fix another 2017-05-12 12:31:42 -04:00
Shyam Jeedigunta 48688fa70d Print pod startup latency metric as perfdata 2017-05-12 14:31:18 +02:00
Kubernetes Submit Queue 5c23dc7897 Merge pull request #45423 from jeffvance/e2e-nodeExec
Automatic merge from submit-queue

move  from daemon_restart.go to framework/util.go

**What this PR does / why we need it**:
Moves the func `nodeExec` from daemon_restart.go to framework/util.go. This is the correct file for this func and is a more intuitive pkg for other callers to use. This is a small step of the larger effort of restructuring e2e tests to be more logically structured and easier for newcomers to understand.

```release-note
NONE
```
cc @timothysc @copejon
2017-05-12 05:26:12 -07:00
jeff vance 6276a86577 move nodeExec() from daemon_restart to framework/util.go 2017-05-11 23:58:12 -07:00
gmarek 6dcbdfaf58 Print API latency metrics as perfdata 2017-05-12 08:51:17 +02:00
Kubernetes Submit Queue 6328ca6fc1 Merge pull request #45530 from zhangxiaoyu-zidif/e2e-delete-redundant-para
Automatic merge from submit-queue

util.go: format for

**What this PR does / why we need it**:
format for.
delete redundant para.
make code clean.

**Release note**:

```release-note
NONE
```
2017-05-10 19:54:47 -07:00
gmarek f68b884a9d Move rest of performance data gathered by tests to Summaries 2017-05-10 14:50:38 +02:00
zhangxiaoyu-zidif 3f9a31ef99 util.go: format for 2017-05-09 14:49:10 +08:00
Kubernetes Submit Queue e6e382563b Merge pull request #41903 from justinsb/clearer_test_logging
Automatic merge from submit-queue

Clearer logging from e2e DialFromNode

I was a little confused by the messages previously.

```release-note
NONE
```
2017-05-08 15:42:53 -07:00
Kubernetes Submit Queue 332b095ca9 Merge pull request #44968 from MrHohn/kube-proxy-healthcheck
Automatic merge from submit-queue (batch tested with PRs 44727, 45409, 44968, 45122, 45493)

Separate healthz server from metrics server in kube-proxy

From #14661, proposal is on kubernetes/community#552.

Couple bullet points as in commit:
- /healthz will be served on 0.0.0.0:10256 by default.
- /metrics and /proxyMode will be served on port 10249 as before.
- Healthz handler will verify timestamp in iptables mode.

/assign @nicksardo @bowei @thockin 

**Release note**:

```release-note
NONE
```
2017-05-08 14:54:38 -07:00
Kubernetes Submit Queue 17d33ea82e Merge pull request #44830 from NickrenREN/remove-NodeLegacyHostIP
Automatic merge from submit-queue

Remove deprecated NodeLegacyHostIP

**Release note**:
```release-note
Remove deprecated node address type `NodeLegacyHostIP`.
```

ref #44807
2017-05-05 15:38:58 -07:00
Zihong Zheng dc3f16a9b8 Update kube-proxy healthz port in e2e test 2017-05-05 14:44:25 -07:00
Jamie Hannaford 9440a68744 Use dedicated Unix User and Group ID types 2017-05-05 14:07:38 +02:00
Dong Liu 78f929a433 Fix namespace deletion log in e2e test framework. 2017-05-04 10:58:11 +08:00
Kubernetes Submit Queue d417dc5958 Merge pull request #45124 from msau42/increase-ns-timeout
Automatic merge from submit-queue (batch tested with PRs 43884, 44712, 45124, 43883)

Increase pv test ns deletion timeout to the framework's default.

**What this PR does / why we need it**:
Namespace deletion occasionally exceeds the test's timeout of 3 minutes.  The test framework uses a default timeout of 5 minutes, so just making it match here.

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

**Special notes for your reviewer**:

**Release note**:

NONE
2017-05-01 15:49:11 -07:00
Davanum Srinivas 5cd700ab2c Run SSH e2e test only if SSH keys are present
Not all CI systems support ssh keys to be present on the node. This
supports the case where "local" provider is being used when running
e2e test, but the environment does not have a SSH key.
2017-05-01 11:04:54 -04:00
Kubernetes Submit Queue 87792a0020 Merge pull request #45109 from rootfs/azure-e2e-pr
Automatic merge from submit-queue (batch tested with PRs 44044, 44766, 44930, 45109, 43301)

e2e test: test azure disk volume

**What this PR does / why we need it**:
E2E test Azure disk volume
**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #

**Special notes for your reviewer**:
@kubernetes/sig-testing-pr-reviews 

**Release note**:
```release-note
NONE
```
2017-04-28 17:49:12 -07:00
Michelle Au e4106e305a Increase pv test ns deletion timeout to the framework's default. 2017-04-28 15:53:51 -07:00
Kubernetes Submit Queue b5d4bbb6c6 Merge pull request #45097 from shyamjvs/report-metrics-grabber-error
Automatic merge from submit-queue (batch tested with PRs 45033, 44961, 45021, 45097, 44938)

Disable the kubelet part of metrics collection in kubemark

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

This should fix it, as we are just interested in getting the apiserver metrics from kubemark master.

cc @wojtek-t @gmarek
2017-04-28 13:16:45 -07:00
Kubernetes Submit Queue 01321936b6 Merge pull request #45021 from shyamjvs/add-request-count
Automatic merge from submit-queue (batch tested with PRs 45033, 44961, 45021, 45097, 44938)

Add request count to APICall metric

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

This should add beside the API call latencies, the count of the requests.

cc @wojtek-t @gmarek
2017-04-28 13:16:42 -07:00
Huamin Chen 165d46a0a8 e2e test: test azure disk volume
Signed-off-by: Huamin Chen <hchen@redhat.com>
2017-04-28 18:51:34 +00:00
Shyam Jeedigunta 3eba4ef93e Disable the kubelet part of metrics collection in kubemark 2017-04-28 13:54:03 +02:00
Kubernetes Submit Queue a3c4d9d603 Merge pull request #45039 from shyamjvs/report-metrics-grabber-error
Automatic merge from submit-queue (batch tested with PRs 42740, 44980, 45039, 41627, 45044)

Log the error (if any) in e2e metrics gathering step

Because why not.

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

cc @wojtek-t @gmarek
2017-04-27 13:27:04 -07:00
Kubernetes Submit Queue 6b38c11dbe Merge pull request #44979 from shyamjvs/fix-metrics-json-filename
Automatic merge from submit-queue (batch tested with PRs 41106, 44346, 44929, 44979, 45027)

Make metrics filenames for e2e tests indicate the test better

Currently the names of the json files with metrics for e2e tests are named by appending the `SummaryKind` with a timestamp of the test. It took me some time to figure out which file corresponds to which e2e test due to this. Changing it to have the testname instead of the timestamp.

cc @wojtek-t @gmarek
2017-04-27 12:11:06 -07:00
Shyam Jeedigunta 87bfad85b1 Log the error (if any) in e2e metrics gathering step 2017-04-27 18:37:52 +02:00
Shyam Jeedigunta d77378a688 Add request count to APICall metric 2017-04-27 15:48:51 +02:00
Shyam Jeedigunta 647a1563dc Make metrics filenames for e2e tests indicate the test 2017-04-27 13:03:39 +02:00
NickrenREN d4376599ba Cleanup: replace some hardcoded codes and remove unused functions 2017-04-25 09:38:25 +08:00
NickrenREN 7d00e5cfb6 remove deprecated NodeLegacyHostIP 2017-04-24 11:01:25 +08:00
Wojciech Tyczynski 4160d70ecf Remove spammy logs in tests 2017-04-21 12:14:55 +02:00
Kubernetes Submit Queue e07497b6b3 Merge pull request #44722 from gmarek/netstat_to_file
Automatic merge from submit-queue

Redirect some test spam to files instead of main log files

Ref #44707

@kubernetes/test-infra-maintainers @wojtek-t
2017-04-20 15:45:04 -07:00
Kubernetes Submit Queue 7b43f922aa Merge pull request #42176 from enisoc/controller-ref-job
Automatic merge from submit-queue (batch tested with PRs 42177, 42176, 44721)

Job: Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings Job into full compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

This ensures that Job does not fight with other controllers over control of Pods.

Ref: #24433

**Special notes for your reviewer**:

**Release note**:

```release-note
Job controller now respects ControllerRef to avoid fighting over Pods.
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-04-20 12:57:06 -07:00
Kubernetes Submit Queue f25a657574 Merge pull request #42177 from enisoc/controller-ref-cronjob
Automatic merge from submit-queue (batch tested with PRs 42177, 42176, 44721)

CronJob: Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings CronJob into compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

This ensures that other controllers do not fight over control of objects that a CronJob owns.

**Special notes for your reviewer**:

**Release note**:

```release-note
CronJob controller now respects ControllerRef to avoid fighting with other controllers.
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-04-20 12:57:03 -07:00
gmarek 7ad55c8a47 Output some spam to files instead of main log files 2017-04-20 16:13:40 +02:00
Kubernetes Submit Queue 33bdec3f22 Merge pull request #44696 from justinsb/fix_44695
Automatic merge from submit-queue (batch tested with PRs 42272, 44696)

e2e test fix: Wait longer when first creating ELB

On any cloud (GCE or AWS), a lag between creating the LoadBalancer and
having it actually start serving traffic is expected.  On AWS the lag is
larger, and we weren't correctly using the longer wait on our first
request.

Use a longer wait period on our first request.

Fix #44695

```release-note
NONE
```
2017-04-20 00:33:01 -07:00
Kubernetes Submit Queue a40fef5db7 Merge pull request #40890 from marun/e2e-use-kubeconfig-host
Automatic merge from submit-queue

e2e: Prefer kubeconfig host to default

Previously it was necessary to pass ``-host`` to ``e2e.test`` even if ``-kubeconfig`` was specified since otherwise a localhost default would be used.  This change ensures that the default is only used when kubeconfig is not set. 

cc: @jayunit100
2017-04-19 20:26:00 -07:00
Justin Santa Barbara 854900c4a1 e2e test fix: Wait longer when first creating ELB
On any cloud (GCE or AWS), a lag between creating the LoadBalancer and
having it actually start serving traffic is expected.  On AWS the lag is
larger, and we weren't correctly using the longer wait on our first
request.

Use a longer wait period on our first request.

Fix #44695
2017-04-19 22:12:59 -04:00
Anthony Yeh 33d7788793 CronJob: Add e2e test for adoption.
Currently, an e2e test is the only way to ensure we have the proper RBAC
permissions to adopt Jobs.
2017-04-19 15:42:34 -07:00
Maru Newby 9413071ce8 e2e: Prefer kubeconfig host to default 2017-04-19 14:58:43 -07:00
Anthony Yeh d5b86bbae4 Job: Add e2e test for Pod adopt/release.
An e2e test is currently the only way to ensure we have the correct RBAC
permissions to PATCH Pods.
2017-04-19 14:03:36 -07:00
Jeff Grafton df4e205460 Update gcr.io/google_containers/porter image to 4524579c0e 2017-04-19 11:50:41 -07:00
gmarek be987ac247 Allow summaries to be printed out to ReportDir instead of stdout 2017-04-19 16:17:36 +02:00
Kubernetes Submit Queue fe44d1f5ce Merge pull request #44073 from marun/fed-e2e-config-from-secrets
Automatic merge from submit-queue (batch tested with PRs 43500, 44073)

[Federation] Add option to retrieve e2e cluster config from secrets

Previously the federation e2e setup was reading member cluster configuration from the test run's kubeconfig. This change removes that dependency in favor of reading member cluster configuration from secrets in the hosting cluster, and caches the configuration to avoid having to read it separately for each test.

cc: @kubernetes/sig-federation-pr-reviews @perotinus
2017-04-18 22:27:58 -07:00
divyenpatel 2d137856a9 namespace deletion and kubelet restart tests for vSphere cloud provider 2017-04-18 11:34:07 -07:00
Maru Newby 9a9d897d94 fed: Add option to source e2e cluster config from host cluster
Add the option to configure e2e access to member clusters from the
same secrets in the host cluster used by the federation control plane.
The default behavior will continue to be sourcing this configuration
from the e2e kubeconfig.  The optional behavior can be enabled by
passing --federation-config-from-cluster=true as an argument to
ginkgo.
2017-04-17 23:38:03 -07:00
Michelle Au e6a008dac1 Add multizone PV tests 2017-04-17 16:51:31 -07:00
Kubernetes Submit Queue 2e677a5f80 Merge pull request #43956 from jeffvance/e2e-helpers
Automatic merge from submit-queue (batch tested with PRs 40055, 42085, 44509, 44568, 43956)

improve error handling in e2e helpers

**What this PR does / why we need it**:
Changes most of the volume related helper funcs to return error rather than calling `Expect`. This is a better programming practice, is consistent with Go and Kubernetes, and allows helper funcs that create multiple resources to perform cleanup.

```release-note
NONE
```
2017-04-17 15:39:12 -07:00
Kubernetes Submit Queue 4c8c2aaa85 Merge pull request #44509 from bowei/cluster-ip
Automatic merge from submit-queue (batch tested with PRs 40055, 42085, 44509, 44568, 43956)

Change the default CLUSTER_IP_RANGE used by e2e

The existing choice intersects with the range reserved for auto
subnets and cannot be used with some GCP features.

```release-note
NONE
```
2017-04-17 15:39:09 -07:00
Chao Xu 4f9591b1de move pkg/api/v1/ref.go and pkg/api/v1/resource.go to subpackages. move some functions in resource.go to pkg/api/v1/node and pkg/api/v1/pod 2017-04-17 11:38:11 -07:00
Chao Xu d4850b6c2b move pkg/api/v1/helpers.go to subpackage 2017-04-14 14:25:11 -07:00
Jeff Vance 0d81e4c87c improve error handling in e2e helpers by always returning error 2017-04-14 14:18:55 -07:00
Bowei Du 0e6af317a8 Change the default CLUSTER_IP_RANGE used by e2e
The existing choice intersects with the range reserved for auto
subnets and cannot be used with some GCP features.
2017-04-14 13:49:54 -07:00
Mike Danese a05c3c0efd autogenerated 2017-04-14 10:40:57 -07:00
gmarek fbeac32a70 Fix resource gatherer 2017-04-14 08:30:07 +02:00
Kubernetes Submit Queue 7ef8ad044f Merge pull request #44440 from gmarek/kubemark-etcd-resources
Automatic merge from submit-queue (batch tested with PRs 44440, 44038, 44302, 44316, 43876)

Make resource gatherer get data about etcd resource usage in kubemark…

… setup
2017-04-13 23:17:59 -07:00
Kubernetes Submit Queue 09fec90fdc Merge pull request #44424 from timothysc/in-cluster-config-e2e
Automatic merge from submit-queue (batch tested with PRs 44424, 44026, 43939, 44386, 42914)

Try in cluster config when input KubeConfig is empty

**What this PR does / why we need it**:
Allows for downstream providers to run e2es "incluster" sans kubeconfig

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

**Special notes for your reviewer**:

**Release note**:

```
NONE
```

/cc @kubernetes/sig-testing-pr-reviews @marun
2017-04-13 22:07:03 -07:00
Kubernetes Submit Queue 4653a9b280 Merge pull request #41543 from dshulyak/decouple_remotecommand
Automatic merge from submit-queue (batch tested with PRs 44406, 41543, 44071, 44374, 44299)

Decouple remotecommand

Refactored unversioned/remotecommand to decouple it from undesirable dependencies:

- term package now is not required, and functionality required to resize terminal size can be plugged in directly in kubectl
- in order to remove dependency on kubelet package - constants from kubelet/server/remotecommand were moved to separate util package (pkg/util/remotecommand)
- remotecommand_test.go moved to pkg/client/tests module
2017-04-13 19:52:05 -07:00
Kubernetes Submit Queue 9f92832fad Merge pull request #43942 from wanghaoran1988/fix_43323
Automatic merge from submit-queue (batch tested with PRs 44447, 44456, 43277, 41779, 43942)

Clean up pre-ControllerRef compatibility logic

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

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

**Special notes for your reviewer**:
No
**Release note**:

```
NONE
```
2017-04-13 15:02:03 -07:00
Kubernetes Submit Queue b0a724173a Merge pull request #41659 from jeffvance/kubelet-wedge2
Automatic merge from submit-queue

add kubelet tests to verify host clean up

**What this PR does / why we need it**:
Increasingly we're seeing more failures in persistent volume e2e tests where pv tests are run in parallel with disruptive tests. The quick solution is to tag the pv tests as Flaky. This pr addresses one cause of the flakiness and adds a disruptive kubelet test.
Once this pr is shown to not produce flakes the [Flaky] tag for the "HostCleanup" tests will be removed in a separate pr.
+ Adds volume tests to _kubelet.go_ motivated by issues [31272](https://github.com/kubernetes/kubernetes/issues/31272) and [37657](https://github.com/kubernetes/kubernetes/issues/37657)
+ Addresses  reverted pr [41178](https://github.com/kubernetes/kubernetes/pull/41178) and negates the need for pr [41229](https://github.com/kubernetes/kubernetes/pull/41229)

**Which issue this PR fixes** 
Adds regression tests to cover issues: #31272 and #37657

**Special notes for your reviewer**:
It's possible that one of the new tests, which relies on the existence of _/usr/sbin/rpc.nfsd_ in the nfs-server pod, will not work in the GCI container env. If this turns out to be true then I will add a `SkipIfProviderIs("gke")` to the `It` block.

**Release note**:
```release-note
NONE
```
2017-04-13 07:12:15 -07:00
gmarek c73266b509 Make resource gatherer get data about etcd resource usage in kubemark setup 2017-04-13 15:22:36 +02:00
Dmitry Shulyak f50480c714 Decouple remotecommand client from term/kubelet dependencies
In order to move client/unversioned/remotecommand to client-go as a followup
for this change we have to decouple it from tons of dependencies
2017-04-13 15:56:40 +03:00
Kubernetes Submit Queue a820e7bcae Merge pull request #44397 from MrHohn/e2e-service-source-ip-timeout
Automatic merge from submit-queue

[e2e] Bump up pod deletion time for source pod IP test

From #44225.

Source pod IP e2e test is pretty flaky lately, and most of the failures seem to be timeout waiting for pod "kube-proxy-mode-detector" to disappear. Didn't found any other thing suspicious.

This PR bumps pod deletion timeout to DefaultPodDeletionTimeout, which is 3 minutes. Hopefully it will mitigate the flakes.

/assign @freehan 

**Release note**:

```release-note
NONE
```
2017-04-13 02:38:59 -07:00
Kubernetes Submit Queue f1c0c0a73c Merge pull request #42395 from nicksardo/gce-src-ranges
Automatic merge from submit-queue

Adding load balancer src cidrs to GCE cloudprovider

**What this PR does / why we need it**:
As of January 31st, 2018, GCP will be sending health checks and l7 traffic from two CIDRs and legacy health checks from three CIDS. This PR moves them into the cloudprovider package and provides a flag for override.

Another PR will need to be address firewall rule creation for external L4 network loadbalancing #40778

**Which issue this PR fixes**
Step one of #40778
Step one of https://github.com/kubernetes/ingress/issues/197

**Release note**:
```release-note
Add flags to GCE cloud provider to override known L4/L7 proxy & health check source cidrs
```
2017-04-12 19:57:43 -07:00
Timothy St. Clair d401627a10 Try in cluster config when input KubeConfig is empty 2017-04-12 20:33:10 -05:00
Jeff Vance c4b14e0eaa rebase-1 2017-04-12 11:15:50 -07:00
Jeff Vance a192edd87f replace c.Core with c.CoreV1; DeletePodWithWait check 2017-04-12 11:15:50 -07:00
Zihong Zheng 07213b6dff [e2e] Bump up pod deletion time for source pod IP test 2017-04-12 09:16:47 -07:00
Kubernetes Submit Queue de1cee38bf Merge pull request #35284 from jsafrane/fix-class-tests
Automatic merge from submit-queue

Add test for provisioning with storage class

This PR re-introduces e2e test for dynamic provisioning with storage classes.

It adds the same test as it was merged in PR #32485 with an extra patch adding region to AWS calls. It works well on my AWS setup, however I'm using shared company account and I can't run kube-up.sh and run the tests in the "official" way.

@zmerlynn, can you please try to run tests that led to #34961?

@justinsb, you're my AWS guru, would there be a way how to introduce fully initialized AWS cloud provider into e2e test framework? It would simplify everything. GCE has it there, but it's easier to initialize, I guess. See https://github.com/kubernetes/kubernetes/blob/master/test/e2e/pd.go#L486 for example - IMO tests should not talk to AWS directly.
2017-04-07 11:40:34 -07:00
Kubernetes Submit Queue ad3e0903f3 Merge pull request #43804 from Crazykev/wrong-err
Automatic merge from submit-queue

fix wrong error return

Signed-off-by: Crazykev <crazykev@zju.edu.cn>



**What this PR does / why we need it**: The err return here is wrong, correct it.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-04-07 05:06:39 -07:00
Haoran Wang 866c599198 Clean up pre-ControllerRef compatibility logic 2017-04-07 14:09:23 +08:00
Kubernetes Submit Queue aa1bd2b3e0 Merge pull request #43818 from kargakis/reduce-deployment-replicas
Automatic merge from submit-queue (batch tested with PRs 41189, 43818)

Reduce deployment replicas in e2e tests

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

There are still two tests that run multiple replicas (testScaledRolloutDeployment, testIterativeDeployments), we may want to revisit them at some point.
2017-04-06 15:12:21 -07:00
Kubernetes Submit Queue c2f3c483a1 Merge pull request #42363 from copejon/extract-volume-utils
Automatic merge from submit-queue

Extract e2e utility code into framework

**What this PR does / why we need it**:
There's a growing dependency on Volume e2e utilities related to creating / test against NFS volumes.  For this reason, it's useful to relocate the relevant functions to the `framework` pkg.   Doing so makes these utility functions available to e2e tests outside the `e2e` package.


This PR only moves code from the `e2e` package to `framework` and handle the relevant changes in calls.  It does not change any logic.  


```release-note
NONE
```

@jingxu97 I think there's value here in reducing duplicate code in the `common` package, given that these functions have been copied down to it.  However, there's been some divergence.  Can you PTAL and let me know if there's any reason we can't remove the duplicate `common` code?

cc @jeffvance
2017-04-06 09:55:50 -07:00
Jan Safranek a327302200 e2e tests should be multizone aware
Pass MULTIZONE=true env. variable to e2e test framework.
2017-04-06 13:28:29 +02:00
Michail Kargakis 5f6a8c8d23
Reduce deployment replicas in e2e tests
Signed-off-by: Michail Kargakis <mkargaki@redhat.com>
2017-04-06 12:54:43 +02:00
Kubernetes Submit Queue 2d023d967d Merge pull request #44066 from marun/fed-improve-e2e-setup
Automatic merge from submit-queue (batch tested with PRs 44097, 42772, 43880, 44031, 44066)

[Federation] Improve e2e test setup

This PR improves federation e2e test setup:

 - reuses e2e framework setup (``NewDefaultFramework``) instead of duplicating it
 - ensures ``FederationAfterEach`` is called if an error occurs in ``FederationBeforeEach`` (as per the [example](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/framework/framework.go#L161) of the e2e framework)
 - skips creation of a test namespace in the hosting cluster (not used for a federation e2e test)

cc: @kubernetes/sig-federation-pr-reviews @kubernetes/sig-testing-pr-reviews
2017-04-05 16:41:25 -07:00
Maru Newby 6170378764 Configurably skip creation of namespace on e2e setup 2017-04-04 17:42:49 -07:00
Jon Cope ecca32641f Add skipUnlessNodeOS is GCI 2017-04-04 15:38:29 -05:00
Jon Cope cef9edcdee Extract volume test utils into framework.
Moved remaining util functions

moved cinder specific function back to volumes.go, will have to be extracted later when a cinder e2e package is created.

remove dupe code from common/volume.go

Moved [Volume] tags to KubeDescribe
2017-04-04 14:50:37 -05:00
Maciej Pytel 1c9f64c760 e2e for cluster-autoscaler unhealthy cluster handling
Moved testUnderNetworkFailure function to framework,
so it can be reused.
2017-04-04 14:36:44 +02:00
Marcin Wielgus 3f7bf0206f Extract commonly used functions from e2e/resize_nodes.go to e2e/framework 2017-04-04 00:01:20 +02:00
Wojciech Tyczynski dea98cbdd0 Don't run preserve pod IP test in userspace mode 2017-04-03 08:15:22 +02:00
Kubernetes Submit Queue 25a87fa19c Merge pull request #40804 from runcom/prepull-cri
Automatic merge from submit-queue

test/e2e_node: prepull images with CRI

Part of https://github.com/kubernetes/kubernetes/issues/40739

- This PR builds on top of #40525 (and contains one commit from #40525)
- The second commit contains a tiny change in the `Makefile`.
- Third commit is a patch to be able to prepull images using the CRI (as opposed to run `docker` to pull images which doesn't make sense if you're using CRI most of the times)

Marked WIP till #40525 makes its way into master

@Random-Liu @lucab @yujuhong @mrunalp @rhatdan
2017-04-01 03:08:35 -07:00
Antonio Murdaca 2634f57f7f
test/e2e_node: prepull images with CRI
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2017-04-01 10:18:56 +02:00
Kubernetes Submit Queue 7a03a095d2 Merge pull request #42667 from vmware/e2eTestUpdate-v5
Automatic merge from submit-queue (batch tested with PRs 42667, 43923)

Adding test to perform volume operations storm

**What this PR does / why we need it**:
Adding new test to perform volume operations storm
Test Steps
1. Create storage class for thin Provisioning.
2. Create 30 PVCs using above storage class in annotation, requesting 2 GB files.
3. Wait until all disks are ready and all PVs and PVCs get bind. (**CreateVolume** storm)
4. Create pod to mount volumes using PVCs created in step 2. (**AttachDisk** storm)
5. Wait for pod status to be running.
6. Verify all volumes accessible and available in the pod.
7. Delete pod.
8. wait until volumes gets detached. (**DetachDisk** storm)
9. Delete all PVCs. This should delete all Disks. (**DeleteVolume** storm)
10. Delete storage class.

This test will help validate issue reported at https://github.com/vmware/kubernetes/issues/71

**Which issue this PR fixes**
fixes #

**Special notes for your reviewer**:
executed test on 1.5.3 release with `VOLUME_OPS_SCALE` set to `5`
Will execute test with the changes made on PR - https://github.com/kubernetes/kubernetes/pull/42422, with the  `VOLUME_OPS_SCALE` set to `30`

**Release note**:

```release-note
None
```

cc: @abrarshivani @BaluDontu @tusharnt @pdhamdhere @luomiao @kerneltime
2017-03-31 15:11:17 -07:00
divyenpatel 6c20b67662 addressed jeffvance's review comments 2017-03-31 10:15:23 -07:00
Kubernetes Submit Queue c608e700b4 Merge pull request #43891 from porridge/2typos
Automatic merge from submit-queue

Fix a couple of typos.
2017-03-31 05:51:56 -07:00
Michail Kargakis e1e2d702c4 Log replica sets/pods for recreate test 2017-03-31 10:25:48 +02:00
Marcin Owsiany f73dce8fb5 Fix two typos. 2017-03-31 08:57:11 +02:00
Haoran Wang 0b3a6c80ca Initial the scheduler priority test 2017-03-30 10:54:27 +08:00
Kubernetes Submit Queue 8a62e2a4d6 Merge pull request #43820 from krousey/upgrades
Automatic merge from submit-queue (batch tested with PRs 42617, 43247, 43509, 43644, 43820)

Adding a SSH tunnel check to GKE upgrades

**What this PR does / why we need it**: After an upgrade, it takes some time fore the master to re-establish SSH tunnels to the nodes. This adds a wait for GKE since it runs in this configuration.

**Which issue this PR fixes**: fixes #43611, #43612
2017-03-29 16:05:28 -07:00
Kris f6c1993b84 Adding a SSH tunnel check to GKE upgrades 2017-03-29 11:37:29 -07:00
Crazykev 6f86cd1a32 fix wrong error return
Signed-off-by: Crazykev <crazykev@zju.edu.cn>
2017-03-29 20:44:10 +08:00
Jon Cope 1622406284 Encapsulate test resources with selector/labels, add pvcConfig
Comments, log lines, exported MakePersistentVolume

Moved pv/pvcConfig assignment out of diskName check, nil ptrs and configs afterEach

change label/selector code to use k8s defined types from generic string:string maps

adjust for gce refactor
2017-03-28 17:16:59 -05:00
Wojciech Tyczynski 2e3cd93fc8 Fix problems of not-starting image pullers 2017-03-28 11:05:57 +02:00
Bowei Du d3e4959104 Use ping to ip instead of wget google.com in net connectivity check
This is a flakey test and this commit reduces the number of dependent
systems involved with the flake.
2017-03-27 17:18:55 -07:00
Kubernetes Submit Queue c81e99d98d Merge pull request #41728 from vmware/e2eTestsUpdate-v3
Automatic merge from submit-queue (batch tested with PRs 41728, 42231)

Adding new tests to e2e/vsphere_volume_placement.go

**What this PR does / why we need it**:
Adding new tests to e2e/vsphere_volume_placement.go

Below is the tests description and test steps.

**Test Back-to-back pod creation/deletion with different volume sources on the same worker node**

1. Create volumes - vmdk2, vmdk1 is created in the test setup.
2. Create pod Spec - pod-SpecA with volume path of vmdk1 and NodeSelector set to label assigned to node1.
3. Create pod Spec - pod-SpecB with volume path of vmdk2 and NodeSelector set to label assigned to node1.
4. Create pod-A using pod-SpecA and wait for pod to become ready.
5. Create pod-B using pod-SpecB and wait for POD to become ready.
6. Verify volumes are attached to the node.
7. Create empty file on the volume to make sure volume is accessible. (Perform this step on pod-A and pod-B)
8. Verify file created in step 5 is present on the volume. (perform this step on pod-A and pod-B)
9. Delete pod-A and pod-B
10. Repeatedly (5 times) perform step 4 to 9 and verify associated volume's content is matching.
11. Wait for vmdk1 and vmdk2 to be detached from node.
12. Delete vmdk1 and vmdk2

**Test multiple volumes from different datastore within the same pod**

1. Create volumes - vmdk2 on non default shared datastore.
2. Create pod Spec with volume path of vmdk1 (vmdk1 is created in test setup on default datastore) and vmdk2.
3. Create pod using spec created in step-2 and wait for pod to become ready.
4. Verify both volumes are attached to the node on which pod are created. Write some data to make sure volume are accessible.
5. Delete pod.
6. Wait for vmdk1 and vmdk2 to be detached from node.
7. Create pod using spec created in step-2 and wait for pod to become ready.
8. Verify both volumes are attached to the node on which PODs are created. Verify volume contents are matching with the content written in step 4.
9. Delete POD.
10. Wait for vmdk1 and vmdk2 to be detached from node.
11. Delete vmdk1 and vmdk2

**Test multiple volumes from same datastore within the same pod**

1. Create volumes - vmdk2, vmdk1 is created in testsetup
2. Create pod Spec with volume path of vmdk1 (vmdk1 is created in test setup) and vmdk2.
3. Create pod using spec created in step-2 and wait for pod to become ready.
4. Verify both volumes are attached to the node on which pod are created. Write some data to make sure volume are accessible.
5. Delete pod.
6. Wait for vmdk1 and vmdk2 to be detached from node.
7. Create pod using spec created in step-2 and wait for pod to become ready.
8. Verify both volumes are attached to the node on which PODs are created. Verify volume contents are matching with the content written in step 4.
9. Delete POD.
10. Wait for vmdk1 and vmdk2 to be detached from node.
11. Delete vmdk1 and vmdk2


**Which issue this PR fixes** 
fixes #

**Special notes for your reviewer**:
Executed tests against K8S v1.5.3 release 

**Release note**:

```release-note
NONE
```

cc: @kerneltime @abrarshivani @BaluDontu @tusharnt @pdhamdhere
2017-03-27 11:54:25 -07:00
Kubernetes Submit Queue 5c2a8c252c Merge pull request #43641 from krousey/upgrades
Automatic merge from submit-queue

Better logging for PVC flakes

Addresses some logging ambiguities in https://github.com/kubernetes/kubernetes/issues/43610, but does not fix it.
2017-03-27 10:43:42 -07:00
Kubernetes Submit Queue d7332315b0 Merge pull request #42959 from smarterclayton/test_clean
Automatic merge from submit-queue (batch tested with PRs 42998, 42902, 42959, 43020, 42948)

Delete host exec pods rapidly
2017-03-25 17:17:25 -07:00
Nick Sardo baab99b823 Adding load balancer src ranges; support flag overrides 2017-03-24 16:36:19 -07:00
Madhusudan.C.S bec6b64db3 Add the ability to customize federation system namespace in e2e turn up scripts. 2017-03-24 14:42:50 -07:00
Kris d9a84e624c Better logging for PVC flakes 2017-03-24 14:25:25 -07:00
Kubernetes Submit Queue a34da7644f Merge pull request #42551 from shashidharatd/e2e-tests
Automatic merge from submit-queue (batch tested with PRs 42237, 42297, 42279, 42436, 42551)

Cleanup federation_util.go in e2e/framework

The only function GetValidDNSSubdomainName in  test/e2e/framework/federation_util.go is no longer used for some time now. so cleaning it up.

cc @kubernetes/sig-federation-pr-reviews @madhusudancs
2017-03-24 14:16:28 -07:00
Kubernetes Submit Queue 694088b3ad Merge pull request #42279 from copejon/fix-pvc-poll-error-message
Automatic merge from submit-queue (batch tested with PRs 42237, 42297, 42279, 42436, 42551)

Reword PVC polling message to log a more readable message.

**What this PR does / why we need it**:
Previous message used to report an error is misleading and poorly written.  This PR changes the log to be more readable.

```release-note
NONE
```
2017-03-24 14:16:25 -07:00
krousey 638044a1ec Revert "Fix the ETCD env vars for downgrade" 2017-03-23 15:29:13 -07:00
Kris da74b86b99 Fix the ETCD env vars for downgrade 2017-03-22 11:25:42 -07:00
Kris 723d301b47 Add ETCD env vars for downgrade 2017-03-21 15:13:50 -07:00
divyenpatel 57754d6c41 updated test/e2e/pvutil.go to use c.CoreV1() 2017-03-19 11:53:40 -07:00
divyenpatel 608638cb52 fixed common funcs to add support for new tests
added new tests to vsphere_volume_placement.go

addressed jeffvance's review comments
2017-03-19 11:53:30 -07:00
Anthony Yeh fa23729a6d kubectl: Use v1.5-compatible ownership logic when listing dependents.
In particular, we should not assume ControllerRefs are necessarily set.
However, we can still use ControllerRefs that do exist to avoid
interfering with controllers that do use it.
2017-03-16 12:28:38 -07:00
Kubernetes Submit Queue 0afdcfcaf6 Merge pull request #43114 from enisoc/deployment-upgrade-test
Automatic merge from submit-queue

Fix Deployment upgrade test.

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

When the upgrade test operates on Deployments in a pre-1.6 cluster (i.e. during the Setup phase), it needs to use the v1.5 deployment/util logic. In particular, the v1.5 logic does not filter children to only those with a matching ControllerRef.

**Which issue this PR fixes**:

Fixes #42738

**Special notes for your reviewer**:

**Release note**:
```release-note
```
cc @kubernetes/sig-apps-pr-reviews
2017-03-15 07:03:19 -07:00
Anthony Yeh 0c015927c4 Fix Deployment upgrade test.
When the upgrade test operates on Deployments in a pre-1.6 cluster
(i.e. during the Setup phase), it needs to use the v1.5 deployment/util
logic. In particular, the v1.5 logic does not filter children to only
those with a matching ControllerRef.
2017-03-14 17:39:29 -07:00
Anirudh 7698196fa5 Add a timeout to allow replacement pod to become ready 2017-03-14 17:09:39 -07:00
Kubernetes Submit Queue 1221779b18 Merge pull request #43018 from nicksardo/ingress-upgrade-cleanup-flake
Automatic merge from submit-queue (batch tested with PRs 43018, 42713)

Log instead of fail on GLBCs tendency to leak resources

**What this PR does / why we need it**:
Stops upgrade tests from flaking because the GLBC does not cleanup all resources due to a race condition.

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

**Special notes for your reviewer**:
To be reviewed by @mml 

```release-note
NONE
```
2017-03-14 15:59:18 -07:00
Kubernetes Submit Queue 42cdb052b6 Merge pull request #42968 from timothysc/sched_e2e_breakout
Automatic merge from submit-queue (batch tested with PRs 42775, 42991, 42968, 43029)

Initial breakout of scheduling e2es to help assist in assignment and refactoring

**What this PR does / why we need it**:
This PR segregates the scheduling specific e2es to isolate the library which will assist both in refactoring but also auto-assignment of issues.  

**Which issue this PR fixes** 
xref: https://github.com/kubernetes/kubernetes/issues/42691#issuecomment-285563265

**Special notes for your reviewer**:
All this change does is shuffle code around and quarantine.  Behavioral, and other cleanup changes, will be in follow on PRs.  As of today, the e2es are a monolith and there is massive symbol pollution, this 1st step allows us to segregate the e2es and tease apart the dependency mess. 

**Release note**:

```
NONE
```

/cc @kubernetes/sig-scheduling-pr-reviews @kubernetes/sig-testing-pr-reviews @marun @skriss 

/cc @gmarek - same trick for load + density, etc.
2017-03-14 13:52:43 -07:00
Anirudh bcc73dbe1a Fix StatefulSet apps flakes 2017-03-14 02:44:55 -07:00
Timothy St. Clair 6cc40678b6 Initial breakout of scheduling e2es to help assist in both assignment
and refactoring.
2017-03-13 22:34:57 -05:00
Nick Sardo 3e85c0f758 Log instead of fail on GLBCs tendency to leak resources 2017-03-13 15:31:03 -07:00
Clayton Coleman e3ca9570a5
Delete host exec pods rapidly
For some tests this makes namespace deletion faster (we poll for
resources at 1/2 their innate termination grace period), thus speeding
up the test.
2017-03-12 00:43:23 -05:00
shashidharatd a14f8dc346 auto generated bazel build files 2017-03-11 01:39:56 +05:30
shashidharatd 662f0ef531 Add framework for federation upgrade tests 2017-03-11 01:39:56 +05:30
shashidharatd 4443a1b40d Move few reusable functions to upgrade_utils.go 2017-03-11 01:39:56 +05:30
Kubernetes Submit Queue 4ff0af821a Merge pull request #42879 from jsafrane/test-pod-logs
Automatic merge from submit-queue

e2e test: Log container output on TestContainerOutput error

When a pod started with TestContainerOutput or TestContainerOutputRegexp
fails from unknown reason, we should log all output of all its containers
so we can analyze what went wrong.

This would help us to see what wrong in https://github.com/kubernetes/kubernetes/issues/40811 - a container is running there for 3 minutes and dies and we want to see what it did for these 3 minutes.

```release-note
NONE
```
2017-03-10 06:13:44 -08:00
Jan Safranek bc06c636d1 e2e test: Log container output on TestContainerOutput error
When a pod started with TestContainerOutput or TestContainerOutputRegexp
fails from unknown reason, we should log all output of all its containers
so we can analyze what went wrong.
2017-03-10 10:08:57 +01:00
Kubernetes Submit Queue 4540674b04 Merge pull request #42758 from krousey/downgrades
Automatic merge from submit-queue (batch tested with PRs 42734, 42745, 42758, 42814, 42694)

Implement automated downgrade testing.

Node version cannot be higher than the master version, so we must
switch the node version first. Also, we must use the upgrade script
from the appropriate version for GCE.
2017-03-09 15:06:56 -08:00
Kris cc84e0895a Implement automated downgrade testing.
Node version cannot be higher than the master version, so we must
switch the node version first. Also, we must use the upgrade script
from the appropriate version for GCE.
2017-03-09 12:45:20 -08:00
David Ashpole 3806d386df use default timeout for deletion 2017-03-08 14:40:19 -08:00
Kubernetes Submit Queue 1402cc588f Merge pull request #42681 from yujuhong/fix_restart
Automatic merge from submit-queue (batch tested with PRs 42652, 42681, 42708, 42730)

e2e: fix restarting the apiserver

The string used to match the image name of the apiserver (e.g., `gcr.io/google_containers/kube-apiserver:3be...`),
but this no longer works. Change the test to locate the kube-apiserver container by name.
2017-03-08 11:38:07 -08:00
Kubernetes Submit Queue d306acca86 Merge pull request #42175 from enisoc/controller-ref-dep
Automatic merge from submit-queue

Deployment: Fully Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings Deployment into full compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

This ensures that Deployment does not fight with other controllers over control of Pods and ReplicaSets.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Deployment now fully respects ControllerRef to avoid fighting over Pods and ReplicaSets. At the time of upgrade, **you must not have Deployments with selectors that overlap**, or else [ownership of ReplicaSets may change](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md#upgrading).
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-03-07 20:44:36 -08:00
Yu-Ju Hong 9401c39a4e e2e: fix restarting the apiserver 2017-03-07 14:54:59 -08:00
Kubernetes Submit Queue feb81270d1 Merge pull request #42346 from kargakis/e2e-deployment-fix
Automatic merge from submit-queue

e2e: require minimum completeness in deployment tests

@janetkuo should reduce deployment-related flakes

For example:
https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gke/5334#k8sio-deployment-scaled-rollout-deployment-should-not-block-on-annotation-check
Deployment with 5 pods, all of them updated to the latest replica set. For some reason one of them is never scheduled and even though the strategy parameters in the Deployment allow 2 maxUnavailable the test is stuck for 5mins waiting for the last pod.
```
I0228 12:33:31.406] Feb 28 12:33:20.255: INFO: Pod nginx-2629236890-r7z5n is not available:
I0228 12:33:31.406] {TypeMeta:{Kind: APIVersion:} ObjectMeta:{Name:nginx-2629236890-r7z5n GenerateName:nginx-2629236890- Namespace:e2e-tests-deployment-gctjw SelfLink:/api/v1/namespaces/e2e-tests-deployment-gctjw/pods/nginx-2629236890-r7z5n UID:7095ad3e-fdf4-11e6-af4a-42010af00010 ResourceVersion:7804 Generation:0 CreationTimestamp:2017-02-28 12:28:18.408376434 -0800 PST DeletionTimestamp:<nil> DeletionGracePeriodSeconds:<nil> Labels:map[pod-template-hash:2629236890 name:nginx] Annotations:map[kubernetes.io/created-by:{"kind":"SerializedReference","apiVersion":"v1","reference":{"kind":"ReplicaSet","namespace":"e2e-tests-deployment-gctjw","name":"nginx-2629236890","uid":"7085ba3f-fdf4-11e6-af4a-42010af00010","apiVersion":"extensions","resourceVersion":"7743"}}
I0228 12:33:31.407] ] OwnerReferences:[{APIVersion:extensions/v1beta1 Kind:ReplicaSet Name:nginx-2629236890 UID:7085ba3f-fdf4-11e6-af4a-42010af00010 Controller:0xc420beccf0}] Finalizers:[] ClusterName:} Spec:{Volumes:[{Name:default-token-58h80 VolumeSource:{HostPath:nil EmptyDir:nil GCEPersistentDisk:nil AWSElasticBlockStore:nil GitRepo:nil Secret:&SecretVolumeSource{SecretName:default-token-58h80,Items:[],DefaultMode:*420,Optional:nil,} NFS:nil ISCSI:nil Glusterfs:nil PersistentVolumeClaim:nil RBD:nil FlexVolume:nil Cinder:nil CephFS:nil Flocker:nil DownwardAPI:nil FC:nil AzureFile:nil ConfigMap:nil VsphereVolume:nil Quobyte:nil AzureDisk:nil PhotonPersistentDisk:nil Projected:nil}}] InitContainers:[] Containers:[{Name:nginx Image:gcr.io/google_containers/update-demo:kitten Command:[] Args:[] WorkingDir: Ports:[] EnvFrom:[] Env:[] Resources:{Limits:map[] Requests:map[]} VolumeMounts:[{Name:default-token-58h80 ReadOnly:true MountPath:/var/run/secrets/kubernetes.io/serviceaccount SubPath:}] LivenessProbe:nil ReadinessProbe:nil Lifecycle:nil TerminationMessagePath:/dev/termination-log TerminationMessagePolicy:File ImagePullPolicy:IfNotPresent SecurityContext:nil Stdin:false StdinOnce:false TTY:false}] RestartPolicy:Always TerminationGracePeriodSeconds:0xc420becd28 ActiveDeadlineSeconds:<nil> DNSPolicy:ClusterFirst NodeSelector:map[] ServiceAccountName:default DeprecatedServiceAccount:default AutomountServiceAccountToken:<nil> NodeName:gke-bootstrap-e2e-default-pool-800b6140-fsl5 HostNetwork:false HostPID:false HostIPC:false SecurityContext:&PodSecurityContext{SELinuxOptions:nil,RunAsUser:nil,RunAsNonRoot:nil,SupplementalGroups:[],FSGroup:nil,} ImagePullSecrets:[] Hostname: Subdomain: Affinity:nil SchedulerName:default-scheduler Tolerations:[]} Status:{Phase:Pending Conditions:[{Type:Initialized Status:True LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason: Message:} {Type:Ready Status:False LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason:ContainersNotReady Message:containers with unready status: [nginx]} {Type:PodScheduled Status:True LastProbeTime:0001-01-01 00:00:00 +0000 UTC LastTransitionTime:2017-02-28 12:28:18 -0800 PST Reason: Message:}] Message: Reason: HostIP:10.240.0.2 PodIP: StartTime:2017-02-28 12:28:18 -0800 PST InitContainerStatuses:[] ContainerStatuses:[{Name:nginx State:{Waiting:&ContainerStateWaiting{Reason:ContainerCreating,Message:,} Running:nil Terminated:nil} LastTerminationState:{Waiting:nil Running:nil Terminated:nil} Ready:false RestartCount:0 Image:gcr.io/google_containers/update-demo:kitten ImageID: ContainerID:}] QOSClass:BestEffort}}
```

@kubernetes/sig-apps-misc
2017-03-07 09:11:25 -08:00
Kubernetes Submit Queue ed04316828 Merge pull request #41890 from soltysh/issue37166
Automatic merge from submit-queue (batch tested with PRs 41890, 42593, 42633, 42626, 42609)

Remove everything that is not new from batch/v2alpha1

Fixes #37166.

@lavalamp you've asked for it 
@erictune this is a prereq for moving CronJobs to beta. I initially planned to put all in one PR, but after I did that I figured out it'll be easier to review separately. ptal 

@kubernetes/api-approvers @kubernetes/sig-api-machinery-pr-reviews ptal
2017-03-07 08:10:38 -08:00
Kubernetes Submit Queue 20c13c1564 Merge pull request #42555 from nicksardo/upgrade-ingress-flake
Automatic merge from submit-queue (batch tested with PRs 42080, 41653, 42598, 42555)

Fix resource cleanup in ingress_utils.go within e2e/framework

**What this PR does / why we need it**:
The GLBC is failing to delete resources during the etcd rollback tests and the e2e cleanup is leaking them. After a short while, tests are failing to create new resources. 
This PR addresses the e2e/framework's ability to delete GLBC-created resources and adds more logging.

**Which issue this PR fixes**:
Helps #38569 but does not completely close this flake

**Special notes for your reviewer**:
Resources were not being deleted because resource names were being truncated and then their ability to be deleted was determined by the entire cluster id existing in the name. Truncated names also have an extra '0' append to the end of their name (unknown origin). This PR tries to match on a common prefix. 

Minor changes were made to improve log readability. 

**Testing this PR**:
This was tested by running a master upgrade test and by adding a second forwarding-rule mid-run.  This forwarding rule referenced the same url-map used by the first forwarding-rule created by the GLBC. Therefore, the GLBC will be able to delete the forwarding-rule but not anymore L7 resources. This second forwarding rule's name was nearly identical to the first forwarding rule so that the cleanup code will find it. 

As you can see from the test run below, the cleanup code deleted all the resources that the GLBC could not.

```log
...
Mar  5 18:35:53.112: INFO: Monitoring glbc's cleanup of gce resources:
k8s-fws-e2e-tests-ingress-upgrsde-0px85-static-ip--5f38ac0e2420 (forwarding rule)
k8s-tps-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420 (target-https-proxy)
k8s-um-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e24260 (url-map)
k8s-be-32331--5f38ac0e2426f796 (backend-service)
k8s-be-32613--5f38ac0e2426f796 (backend-service)
k8s-be-32331--5f38ac0e2426f796 (http-health-check)
k8s-be-32613--5f38ac0e2426f796 (http-health-check)
k8s-ig--5f38ac0e2426f796 (instance-group)
k8s-ssl-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420 (ssl-certificate)

STEP: Performing final delete of any remaining resources
Mar  5 18:35:54.055: INFO: Deleting forwarding-rules: k8s-fws-e2e-tests-ingress-upgrsde-0px85-static-ip--5f38ac0e2420
Mar  5 18:36:06.945: INFO: Deleting target-https-proxies: k8s-tps-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420
Mar  5 18:36:14.301: INFO: Deleting url-map: k8s-um-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e24260
Mar  5 18:36:18.309: INFO: Deleting backed-service: k8s-be-32331--5f38ac0e2426f796
Mar  5 18:36:22.112: INFO: Deleting backed-service: k8s-be-32613--5f38ac0e2426f796
Mar  5 18:36:26.192: INFO: Deleting http-health-check: k8s-be-32331--5f38ac0e2426f796
Mar  5 18:36:29.846: INFO: Deleting http-health-check: k8s-be-32613--5f38ac0e2426f796
Mar  5 18:36:33.722: INFO: Deleting instance-group: k8s-ig--5f38ac0e2426f796
Mar  5 18:36:37.762: INFO: Deleting ssl-certificate: k8s-ssl-e2e-tests-ingress-upgrade-0px85-static-ip--5f38ac0e2420
STEP: No resources leaked.
Mar  5 18:36:46.441: INFO: Deleting addresses: e2e-tests-ingress-upgrade-0px85-static-ip
Mar  5 18:36:53.902: INFO: L7 controller failed to delete all cloud resources on time. timed out waiting for the condition
...
```
2017-03-06 17:16:17 -08:00
Kubernetes Submit Queue d50a59ec66 Merge pull request #42080 from enisoc/controller-ref-ss
Automatic merge from submit-queue (batch tested with PRs 42080, 41653, 42598, 42555)

StatefulSet: Respect ControllerRef

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

This is part of the completion of the [ControllerRef](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md) proposal. It brings StatefulSet into full compliance with ControllerRef. See the individual commit messages for details.

**Which issue this PR fixes**:

Fixes #36859

**Special notes for your reviewer**:

**Release note**:

```release-note
StatefulSet now respects ControllerRef to avoid fighting over Pods. At the time of upgrade, **you must not have StatefulSets with selectors that overlap** with any other controllers (such as ReplicaSets), or else [ownership of Pods may change](https://github.com/kubernetes/community/blob/master/contributors/design-proposals/controller-ref.md#upgrading).
```
cc @erictune @kubernetes/sig-apps-pr-reviews
2017-03-06 17:16:10 -08:00
Anthony Yeh f020c9ae6c Deployment: Update overlapping e2e test for ControllerRef. 2017-03-06 15:12:07 -08:00
Anthony Yeh 887acb07ea Deployment/util: Filter by ControllerRef.
The list functions in deployment/util are used outside the Deployment
controller itself. Therefore, they don't do actual adoption/orphaning.
However, they still need to avoid listing things that don't belong.
2017-03-06 15:12:06 -08:00
Anthony Yeh d8a0017559 StatefulSet: Use synchronous Delete of SS in e2e.
This is needed because we changed the default for SS to
OrphanDependents.
2017-03-06 09:46:04 -08:00
Seth Jennings ccd87fca3f kubelet: add cgroup manager metrics 2017-03-06 08:53:47 -06:00
Maciej Szulik 6c0cd24865 Drop NewDefultGroupVersionFramework in favor of client automatically handling proper GroupVersions 2017-03-06 12:12:38 +01:00
Nick Sardo 6bba665c81 Cleanup gce resources from ingress upgrade tests 2017-03-05 18:38:45 -08:00
shashidharatd 0fe664c264 auto generated bazel build file 2017-03-06 03:20:13 +05:30
shashidharatd 5f2df1f88f remove unused federation_util.go 2017-03-06 03:20:13 +05:30
Kubernetes Submit Queue f750721b84 Merge pull request #42367 from kow3ns/ss-flakes
Automatic merge from submit-queue (batch tested with PRs 42443, 38924, 42367, 42391, 42310)

Fix StatefulSet e2e flake

**What this PR does / why we need it**:
Fixes StatefulSet e2e flake by ensuring that the StatefulSet controller has observed the unreadiness of Pods prior to attempting to exercise scale functionality.
**Which issue this PR fixes** 
fixes #41889
```release-note
NONE
```
2017-03-03 18:08:42 -08:00
Kenneth Owens 08f95aff0f Fixes e2e flake by ensuring that the StatefulSet observes mutations to
Pods prior mutating the StatefulSet object to trigger sclaing.

Add ObervedVersion check
2017-03-03 11:24:47 -08:00
Kubernetes Submit Queue a2c7eb2754 Merge pull request #42266 from wojtek-t/fix_secret_tests_in_large_clusters
Automatic merge from submit-queue (batch tested with PRs 41306, 42187, 41666, 42275, 42266)

Bump test timeouts to make secret tests work in large clusters
2017-03-03 10:54:45 -08:00
Clayton Coleman f3d9ad678a
Handle potential conflicts on service endpoint test deletion
Cleanup should ignore conflicts and notfound errors
2017-03-03 01:29:57 -05:00
Anthony Yeh bdc4540e92 e2e/framework: Deflake cleanup of RCs in service_util.
The previous Get/Update pattern with no retry on resource version mismatch
would flake with the following error:

"the object has been modified; please apply your changes to the latest
version and try again"
2017-03-02 16:51:14 -08:00
Kubernetes Submit Queue effbad9ad0 Merge pull request #42020 from nicksardo/ingress_upgrade
Automatic merge from submit-queue (batch tested with PRs 41644, 42020, 41753, 42206, 42212)

Ingress-glbc upgrade tests

Basically #41676 but with some fixes and added comments.  @bprashanth has been away this week and it's desirable to have this in before code freeze.
2017-03-01 15:30:32 -08:00
Nick Sardo 9dc98f5296 upgrade tests: ingress/glbc 2017-03-01 11:52:55 -08:00
Michail Kargakis 3921a2a2f6 e2e: require minimum completeness in deployment tests 2017-03-01 19:25:12 +01:00
Wojciech Tyczynski 9db6aa50f0 Make secret tests work in large clusters 2017-03-01 17:58:30 +01:00
Kubernetes Submit Queue ed479163fa Merge pull request #42116 from vishh/gpu-experimental-support
Automatic merge from submit-queue

Extend experimental support to multiple Nvidia GPUs

Extended from #28216

```release-note
`--experimental-nvidia-gpus` flag is **replaced** by `Accelerators` alpha feature gate along with  support for multiple Nvidia GPUs. 
To use GPUs, pass `Accelerators=true` as part of `--feature-gates` flag.
Works only with Docker runtime.
```

1. Automated testing for this PR is not possible since creation of clusters with GPUs isn't supported yet in GCP.
1. To test this PR locally, use the node e2e.
```shell
TEST_ARGS='--feature-gates=DynamicKubeletConfig=true' FOCUS=GPU SKIP="" make test-e2e-node
```

TODO:

- [x] Run manual tests
- [x] Add node e2e
- [x] Add unit tests for GPU manager (< 100% coverage)
- [ ] Add unit tests in kubelet package
2017-03-01 04:52:50 -08:00
Chao Xu 31cb266340 tests 2017-02-28 23:05:41 -08:00
Jon Cope 6e317762fd Reword poll message to log a more readable message. 2017-02-28 15:54:43 -06:00
Vishnu kannan 318f4e102a adding an e2e for GPUs
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2017-02-28 13:42:08 -08:00
Kubernetes Submit Queue 5891fa021b Merge pull request #42193 from mml/etcd-upgrade-test
Automatic merge from submit-queue

Change etcd test image to 3.0.17.

Follow-up from #41540
2017-02-27 23:10:45 -08:00
Matt Liggett f37f7d42ba Change etcd test image to 3.0.17. 2017-02-27 14:23:14 -08:00
Kenneth Owens 116eda0909 Implements an upgrade test for Job. Job common functionality is refactored into the framework package to allow for code sharing between e2e and upgrade tests. 2017-02-27 09:24:59 -08:00
Kubernetes Submit Queue 37acb8423c Merge pull request #42019 from msau42/pv_upgrade_test
Automatic merge from submit-queue (batch tested with PRs 41962, 42055, 42062, 42019, 42054)

PV upgrade test

**What this PR does / why we need it**:
This PR adds a PV upgrade test to the new upgrade test framework.  Before, this test had to be done manually.  Currently the upgrade test framework only works on the GCE environment, so I plan to add support for other providers later.  In order to write the test, I had to modify and refactor some volume test util libraries.  I reran the impacted tests to make sure they still passed.

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

**Special notes for your reviewer**:
It's probably easier to review the two commits separately.  I split it up into the refactor changes, and the upgrade test changes.

**Release note**:

NONE


cc @saad-ali @krousey
2017-02-27 00:16:58 -08:00
Kubernetes Submit Queue f1fecc3074 Merge pull request #41964 from sttts/sttts-upgrade-test-sysctl
Automatic merge from submit-queue (batch tested with PRs 35408, 41915, 41992, 41964, 41925)

e2e/upgrade: add sysctls

Add sysctl upgrade tests.

How can these be effectively tested?
2017-02-26 18:07:59 -08:00
Kubernetes Submit Queue 16f87fe7d8 Merge pull request #40952 from dashpole/premption
Automatic merge from submit-queue (batch tested with PRs 41994, 41969, 41997, 40952, 40576)

Guaranteed admission for Critical Pods

This is the first step in implementing node-level preemption for critical pods.
It defines the AdmissionFailureHandler interface, which allows callers, like the kubelet, to define how failed predicates are handled, and take steps to correct failures if necessary.
In the kubelet's implementation, it triggers preemption if the pod being admitted is critical, and if the only failed predicates are InsufficientResourceErrors, then it prempts (not yet implemented) other other pods to allow admission of the critical pod.

cc: @vishh
2017-02-26 12:57:59 -08:00
Kubernetes Submit Queue f2c2791e87 Merge pull request #41852 from mml/etcd-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 42106, 42094, 42069, 42098, 41852)

Write etcd_upgrade test.

Part of the fix for #40636
2017-02-26 04:34:02 -08:00
Zihong Zheng 7eb9b81d67 Updates test/e2e/addon_update.go to match addon-manager's new behavior 2017-02-24 16:44:21 -08:00
Matt Liggett 281a57aeaa Add etcd upgrade test. 2017-02-24 10:40:04 -08:00
gmarek 6637592b1d generated 2017-02-24 09:24:33 +01:00
gmarek d88af7806c NodeController sets NodeTaints instead of deleting Pods 2017-02-24 09:24:33 +01:00
Michelle Au c522b77505 Enhance and refactor volume test util functions
Fix bash command's execution in MakePod().
Add isPriviledged as a parameter to MakePod().
Move PD utils to pv_util.go

Ran all the tests in pd.go, persistent_volumes.go,
persistent_volumes-disruptive.go.

These changes are needed for the PV upgrade test I am working on.
2017-02-23 21:05:12 -08:00
deads2k bf30b0c71b add WATCH to list of excluded verbs for latency metrics 2017-02-23 15:47:28 -05:00
David Ashpole c58970e47c critical pods can preempt other pods to be admitted 2017-02-23 10:31:20 -08:00
Kubernetes Submit Queue e5c2d716d9 Merge pull request #41887 from liggitt/watch-verb
Automatic merge from submit-queue (batch tested with PRs 39855, 41433, 41567, 41887, 41652)

Use watch param instead of deprecated /watch/ prefix

Reopen of https://github.com/kubernetes/kubernetes/pull/41722 after reverted in https://github.com/kubernetes/kubernetes/pull/41774

Required https://github.com/kubernetes/kubernetes/pull/41797 to merge first

cc @deads2k @wojtek-t
2017-02-23 09:36:35 -08:00
Dr. Stefan Schimanski ea52f59c8c e2e/upgrade: add sysctls 2017-02-23 10:49:41 +01:00
Wojciech Tyczynski 59cec9c1a6 Merge pull request #41886 from wojtek-t/allow_for_disabling_log_dump
Add ability to disable dumping logs
2017-02-23 08:08:25 +01:00
Kubernetes Submit Queue ffda545ce9 Merge pull request #41793 from wojtek-t/speedup_density_2
Automatic merge from submit-queue (batch tested with PRs 41797, 41793, 41795, 41807, 41781)

Slightly speedup density test
2017-02-22 22:06:32 -08:00
Kubernetes Submit Queue 4396f19c61 Merge pull request #41482 from ncdc/shared-informers-11-statefulset
Automatic merge from submit-queue (batch tested with PRs 41146, 41486, 41482, 41538, 41784)

Switch statefulset controller to shared informers

Originally part of #40097 

I *think* the controller currently makes a deep copy of a StatefulSet before it mutates it, but I'm not 100% sure. For those who are most familiar with this code, could you please confirm?

@beeps @smarterclayton @ingvagabund @sttts @liggitt @deads2k @kubernetes/sig-apps-pr-reviews @kubernetes/sig-scalability-pr-reviews @timothysc @gmarek @wojtek-t
2017-02-22 21:09:35 -08:00
Kubernetes Submit Queue 9cbaff9e0f Merge pull request #41373 from msau42/e2e-pvutil
Automatic merge from submit-queue (batch tested with PRs 38957, 41819, 41851, 40667, 41373)

Move pvutil.go from e2e package to framework package

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

This PR moves pvutil.go to the e2e/framework package.

I am working on a PV upgrade test, and would like to use some of the wrapper functions in pvutil.go.  However, the upgrade test is in the upgrade package, and not the e2e package, and it cannot import the e2e package because it would create a circular dependency.  So pvutil.go needs to be moved out of e2e in order to break the circular dependency.  This is a refactoring name change, no logic has been modified.

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

**Special notes for your reviewer**:

**Release note**:

NONE
2017-02-22 19:59:37 -08:00
Justin Santa Barbara ac87601f1e Clearer logging from e2e DialFromNode 2017-02-22 12:13:19 -05:00
Avesh Agarwal b4d3d24eaf Update tests. 2017-02-22 09:27:42 -05:00
Wojciech Tyczynski 0d8a492fbf Add ability to disable dumping logs 2017-02-22 15:26:29 +01:00
Jordan Liggitt e6dbe5f57e
Pass typed options to dynamic client 2017-02-22 08:53:57 -05:00
Andy Goldstein f6a186b1e1 Switch statefulset controller to shared informers 2017-02-22 08:53:51 -05:00
Wojciech Tyczynski 3c6a37193a Allow for not-ready pods in large clusters 2017-02-21 15:01:08 +01:00
Wojciech Tyczynski 70e8c9cb89 Slightly speedup density test 2017-02-21 13:26:03 +01:00
Wojciech Tyczynski a21b08d00f Revert "Use watch param instead of deprecated /watch/ prefix" 2017-02-21 08:37:51 +01:00
Kubernetes Submit Queue dfacc61c5f Merge pull request #41722 from liggitt/watch-prefix
Automatic merge from submit-queue (batch tested with PRs 41421, 41440, 36765, 41722)

Use watch param instead of deprecated /watch/ prefix

Switches clients to use watch param instead of /watch/ prefix

```release-note
Clients now use the `?watch=true` parameter to make watch API calls, instead of the `/watch/` path prefix
```
2017-02-20 10:37:44 -08:00
Wojciech Tyczynski f17765ab72 Speedup density test 2017-02-20 16:06:05 +01:00
Jordan Liggitt 308fdcd13f
Pass typed options to dynamic client 2017-02-19 22:12:55 -05:00
Kubernetes Submit Queue 078238a461 Merge pull request #41221 from kow3ns/ss-upgrade-test
Automatic merge from submit-queue (batch tested with PRs 41548, 41221)

StatefulSet Upgrade Test

Adds StatefulSet upgrade tests and moves common functionality into the framework package. This removes the potential for cyclic dependencies while allowing for code reuse.
```release-note
NONE
```
2017-02-17 04:34:35 -08:00
Michelle Au f2887af4f5 Move pv_util.go into framework package so that it can be used in tests
not in the e2e package.
2017-02-16 20:48:06 -08:00
Michelle Au c2cf3beda0 Move pvutil.go into framework/ folder.
This is the first step in a two step change.  First is to move the file.
 The second step is to change the package and callers.  It needs to be
 two steps in order to correctly transfer commit history.
2017-02-16 18:41:22 -08:00
gmarek 6b20bb790f generated 2017-02-16 09:25:27 +01:00
gmarek e1e4370ecd Promote taint addition/removal to api/v1/helpers.go 2017-02-16 09:25:27 +01:00
Kubernetes Submit Queue beed2ea460 Merge pull request #41252 from kargakis/drop-unnecessary-helper
Automatic merge from submit-queue (batch tested with PRs 41196, 41252, 41300, 39179, 41449)

Remove redundant pod helper
2017-02-15 04:14:12 -08:00
Jordan Liggitt 88a876b1d0
Update to use proxy subresource consistently 2017-02-13 22:05:00 -05:00
Kenneth Owens 4506744def Adds StatefulSet upgrade tests and moves common functionality into the
framework package. This removes the potential for cyclic dependencies
while allowing for code reuse.
2017-02-10 11:21:22 -08:00
Michail Kargakis fe137a8123 Remove redundant pod helper 2017-02-10 17:58:59 +01:00
Kubernetes Submit Queue 558c37aee3 Merge pull request #41112 from janetkuo/no-watch-until
Automatic merge from submit-queue (batch tested with PRs 41112, 41201, 41058, 40650, 40926)

e2e test flakes: remove some uses of watch.Until in e2e tests

`watch.Until` is somewhat broken and is causing quite a lot of test flakes. See https://github.com/kubernetes/kubernetes/issues/39879#issuecomment-277966375 and https://github.com/kubernetes/kubernetes/issues/31345 for more context.

@wojtek-t @yujuhong @kargakis
2017-02-10 01:40:41 -08:00
Kubernetes Submit Queue 6941925cb7 Merge pull request #41167 from mml/funk
Automatic merge from submit-queue (batch tested with PRs 41074, 41147, 40854, 41167, 40045)

Fix some funky funcs.

This is code cleanup.  Fix function declarations and remove stale comment.
2017-02-09 17:41:44 -08:00
Michail Kargakis ff83eb58eb Add more logs during the cleanup phase of a deployment 2017-02-09 10:31:15 +01:00
Matt Liggett 3e47013814 Fix some funky funcs. 2017-02-08 16:25:57 -08:00
Janet Kuo 7c89359cc8 Address comments: remove unused resourceVersion in e2e util wait loop; poll pods every 2 seconds 2017-02-08 13:05:11 -08:00
Kubernetes Submit Queue b57dc268d6 Merge pull request #41097 from kargakis/test-update
Automatic merge from submit-queue (batch tested with PRs 41103, 41042, 41097, 40946, 40770)

test: enhance still failing test

https://github.com/kubernetes/kubernetes/issues/39785 has stopped on gce-etcd3, gci-gce but not on gci-gke and kops
https://k8s-testgrid.appspot.com/sq-blocking#gce-etcd3&include-filter-by-regex=%5EOverall%24%7C%5C%5Bk8s%5C.io%5C%5D%5C%20Deployment%5C%20lack%5C%20of%5C%20progress%5C%20should%5C%20be%5C%20reported%5C%20in%5C%20the%5C%20deployment%5C%20status
2017-02-07 22:12:36 -08:00
Janet Kuo 4cef1008f4 Remove some uses of watch.Until in e2e tests 2017-02-07 16:50:49 -08:00
Michail Kargakis 6f44fbde52 test: enhance still failing test 2017-02-07 22:25:01 +01:00
Kubernetes Submit Queue d82e51edc5 Merge pull request #40900 from janetkuo/deployment-e2e-pod-running
Automatic merge from submit-queue (batch tested with PRs 40345, 38183, 40236, 40861, 40900)

Remove checks for pods responding in deployment e2e tests

Fixes #39879

Remove it because it caused deployment e2e tests sometimes timed out waiting for pods responding, and pods responding isn't related to deployment controller and is not a prerequisite of deployment e2e tests.

@kargakis
2017-02-07 11:33:46 -08:00
Kubernetes Submit Queue 4db40cbd94 Merge pull request #40971 from kargakis/lack-of-progress-fix
Automatic merge from submit-queue (batch tested with PRs 40971, 41027, 40709, 40903, 39369)

test: bump deployment condition timeout

@fejta @spxtr ptal

Fixes https://github.com/kubernetes/kubernetes/issues/39785
2017-02-06 20:57:12 -08:00
Janet Kuo ae5a901a8f Remove checks for pods responding in deployment e2e tests
Remove it because it caused deployment e2e tests sometimes timed out
waiting for pods responding, and pods responding isn't related to
deployment controller and is not a prerequisite of deployment e2e tests.
2017-02-06 10:07:19 -08:00
Michail Kargakis e8f1d9bac6 test: bump deployment condition timeout 2017-02-05 01:02:04 +01:00
Kubernetes Submit Queue d6a4394b53 Merge pull request #40747 from krousey/upgrades
Automatic merge from submit-queue

Add an upgrade test for secrets.

**What this PR does / why we need it**: This PR adds an upgrade test for secrets. It creates a secret and makes sure that pods can consume it before an after an upgrade.
2017-02-03 23:10:21 -08:00
Kubernetes Submit Queue 9642104e82 Merge pull request #39914 from kevin-wangzefeng/forgiveness-library-changes
Automatic merge from submit-queue (batch tested with PRs 40696, 39914, 40374)

Forgiveness library changes

**What this PR does / why we need it**:
Splited from #34825, contains library changes that are needed to implement forgiveness:

1. ~~make taints-tolerations matching respect timestamps, so that one toleration can just tolerate a taint for only a period of time.~~ As TaintManager is caching taints and observing taint changes, time-based checking is now outside the library (in TaintManager). see #40355.
2. make tolerations respect wildcard key.
3. add/refresh some related functions to wrap taints-tolerations operation.

**Which issue this PR fixes**: 
Related issue: #1574
Related PR: #34825, #39469 
~~Please note that the first 2 commits in this PR come from #39469 .~~

**Special notes for your reviewer**:

~~Since currently we have `pkg/api/helpers.go` and `pkg/api/v1/helpers.go`, there are some duplicated periods of code laying in these two files.~~

~~Ideally we should move taints-tolerations related functions into a separate package (pkg/util/taints), and make it a unified set of implementations. But I'd just suggest to do it in a follow-up PR after Forgiveness ones done, in case of feature Forgiveness getting blocked to long.~~

**Release note**:

```release-note
make tolerations respect wildcard key
```
2017-02-03 15:05:55 -08:00
Kubernetes Submit Queue 8a8f6ca849 Merge pull request #40525 from lucab/to-k8s/node-e2e-local-cri
Automatic merge from submit-queue (batch tested with PRs 40812, 39903, 40525, 40729)

test/node_e2e: wire-in cri-enabled local testing

This commit wires-in the pre-existing `--container-runtime` flag for
local node_e2e testing.
This is needed in order to further skip docker specific testing
and validation.

Local CRI node_e2e can now be performed via
`make test-e2e-node RUNTIME=remote REMOTE=false`
which will also take care of passing the appropriate argument to
the kubelet.
2017-02-02 13:57:48 -08:00
Luca Bruno 42bdbe5c82
test/node_e2e: wire-in "container-runtime" for local tests
This commit wires-in the pre-existing `--container-runtime` flag for
local node_e2e testing.
This is needed in order to further skip docker specific testing
and validation.

Local CRI node_e2e can now be performed via
`make test-e2e-node RUNTIME=remote REMOTE=false`
which will also take care of passing the appropriate arguments to
the kubelet.
2017-02-01 20:34:51 +00:00
Michail Kargakis 83c1ef489e test: move deployment helper in testing framework 2017-02-01 19:47:02 +01:00
deads2k 8a12000402 move client/record 2017-01-31 19:14:13 -05:00
Kris 8652a4f471 Add an upgrade test for secrets. 2017-01-31 13:05:36 -08:00
Kevin 36dcb57407 forgiveness library changes 2017-01-31 21:39:17 +08:00
deads2k c9a008dff3 move util/intstr to apimachinery 2017-01-30 12:46:59 -05:00
Kubernetes Submit Queue f83223091f Merge pull request #40319 from jeffvance/e2e-ssh-local
Automatic merge from submit-queue (batch tested with PRs 40584, 40319)

ssh support for local

**What this PR does / why we need it**: adds local deployment support for e2e tests. Useful for non-cloud, simple testing.

**Special notes for your reviewer**: Formerly this pr was part of #38214 

**Release note**:
```
NONE
```
2017-01-27 19:21:41 -08:00
deads2k 2734f8f892 move dynamic and discovery clients 2017-01-26 08:37:06 -05:00
Jeff Vance 975c5536ab ssh support for local 2017-01-25 15:48:16 -08:00
Dr. Stefan Schimanski a0137e9b28 Update generated files 2017-01-25 19:49:45 +01:00
Dr. Stefan Schimanski d7eb3b6870 pkg/util: move uuid and strategicpatch into k8s.io/apimachinery 2017-01-25 19:45:09 +01:00
Kubernetes Submit Queue 243dd9e426 Merge pull request #40215 from shashidharatd/federation-e2e
Automatic merge from submit-queue

Fix federation component logging when e2e test case fails

When a federation e2e test case fails, federation component logs (esp. controller-manager) were very useful in debugging the failure cause. Due to recent updates in framework, the logs were not captured. This PR will fix those issues.

cc @kubernetes/sig-federation-misc @nikhiljindal @madhusudancs
2017-01-24 18:18:35 -08:00
shashidharatd e46169f527 Expose options field in e2e framework structure 2017-01-25 01:39:33 +05:30
Clayton Coleman be6d2933df
refactor: Move *Options references to metav1 2017-01-24 13:41:51 -05:00
Clayton Coleman 469df12038
refactor: move ListOptions references to metav1 2017-01-23 17:52:46 -05:00
deads2k 335ef747d6 mechanical 2017-01-23 10:03:55 -05:00
deads2k ee6752ef20 find and replace 2017-01-20 08:04:53 -05:00
deads2k c587b8a21e re-run client-gen 2017-01-20 08:02:36 -05:00
deads2k 11e8068d3f move pkg/fields to apimachinery 2017-01-19 09:50:16 -05:00
deads2k cdb2934bbc remove kubernetes copy of clientcmd types 2017-01-19 07:39:19 -05:00
shashidharatd 85c3f0d6a0 auto-generated bazel BUILD file changes 2017-01-19 08:00:52 +05:30
shashidharatd d515eb4c9a segrageted federation related test code from e2e.framework 2017-01-19 07:56:30 +05:30
shashidharatd 79ce4cb67d Move some common functions in e2e to e2e.framework for reusability 2017-01-19 07:56:30 +05:30
deads2k d1fec7068f generated 2017-01-18 10:35:46 -05:00
deads2k e74efe41a0 add rbac v1beta1 2017-01-18 09:49:33 -05:00
Clayton Coleman 9a2a50cda7
refactor: use metav1.ObjectMeta in other types 2017-01-17 16:17:19 -05:00
Clayton Coleman 54d8ed001d
Move ObjectMeta to metav1 2017-01-17 16:17:13 -05:00
deads2k 8686d67c80 move pkg/util/rand 2017-01-16 16:04:03 -05:00
Kubernetes Submit Queue 6defc30337 Merge pull request #39882 from deads2k/api-59-errors
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

move api/errors to apimachinery

`pkg/api/errors` is a set of helpers around `meta/v1.Status` that help to create and interpret various apiserver errors.  Things like `.NewNotFound` and `IsNotFound` pairings.  This pull moves it into apimachinery for use by the clients and servers.

@smarterclayton @lavalamp First commit is the move plus minor fitting.  Second commit is straight replace and generation.
2017-01-16 10:37:42 -08:00
Kubernetes Submit Queue 4811ad0231 Merge pull request #38592 from krousey/client-context
Automatic merge from submit-queue (batch tested with PRs 38592, 39949, 39946, 39882)

Add optional per-request context to restclient

**What this PR does / why we need it**: It adds per-request contexts to restclient's API, and uses them to add timeouts to all proxy calls in the e2e tests. An entire e2e shouldn't hang for hours on a single API call.

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

**Special notes for your reviewer**:

This adds a feature to the low-level rest client request feature that is entirely optional. It doesn't affect any requests that don't use it. The api of the generated clients does not change, and they currently don't take advantage of this.

I intend to patch this in to 1.5 as a mostly test only change since it's not going to affect any controller, generated client, or user of the generated client.


cc @kubernetes/sig-api-machinery 
cc @saad-ali
2017-01-16 10:37:38 -08:00
deads2k 77b4d55982 mechanical 2017-01-16 09:35:12 -05:00
Kubernetes Submit Queue 212234ab3f Merge pull request #39807 from deads2k/client-02-client-go
Automatic merge from submit-queue

run staging client-go update

Chasing to see what real problems we have in staging-client-go.

@sttts you get similar results?
2017-01-13 13:21:19 -08:00
Kubernetes Submit Queue a6fa5c2bfd Merge pull request #39814 from deads2k/api-58-multi-register
Automatic merge from submit-queue

replace global registry in apimachinery with global registry in k8s.io/kubernetes

We'd like to remove all globals, but our immediate problem is that a shared registry between k8s.io/kubernetes and k8s.io/client-go doesn't work.  Since client-go makes a copy, we can actually keep a global registry with other globals in pkg/api for now.

@kubernetes/sig-api-machinery-misc @lavalamp @smarterclayton @sttts
2017-01-13 12:37:02 -08:00
deads2k 633e9d98fc use apimachinery packages instead of client-go packages 2017-01-13 14:04:54 -05:00
deads2k f1176d9c5c mechanical repercussions 2017-01-13 08:27:14 -05:00
NickrenREN a12dea14e0 fix redundant alias clientset 2017-01-12 10:21:05 +08:00
deads2k 6a4d5cd7cc start the apimachinery repo 2017-01-11 09:09:48 -05:00
Kubernetes Submit Queue 5fc2b3522c Merge pull request #39132 from madhusudancs/fed-newtest-refactor-develop-sh
Automatic merge from submit-queue

[Federation] Recompute registry name and version tag in the federation up script.sh and a bunch of other fixes.
2017-01-06 09:26:08 -08:00
Madhusudan.C.S 48f79cf600 Quote a bash variable, fix a typo and add some additional logging. 2017-01-06 19:17:48 +05:30
Jeff Grafton 20d221f75c Enable auto-generating sources rules 2017-01-05 14:14:13 -08:00
Zihong Zheng e5944f56dc Moves e2e service util functions into service_util.go and cleans up test codes 2017-01-03 15:36:15 -08:00
deads2k 3a265d0eec add permissions to kubectl test for rbac 2017-01-03 09:59:13 -05:00
deads2k 2444e0f270 tolerate missing subjectaccessreview in e2e 2016-12-22 14:03:57 -05:00
deads2k d9a4cfc09f fix e2e tests which use SAs for permissions 2016-12-21 16:25:32 -05:00
Kubernetes Submit Queue db5887aa83 Merge pull request #38891 from krousey/gceimageupgrade
Automatic merge from submit-queue (batch tested with PRs 38426, 38917, 38891, 38935)

Support different image during GCE node upgrade

**What this PR does / why we need it**: It lets GCE upgrade tests upgrade to a GCI node image.

**Which issue this PR fixes**: fixes #37855
2016-12-19 18:18:25 -08:00
Kris 3b5bf39cfa Support different image during GCE node upgrade 2016-12-19 13:18:50 -08:00
Zihong Zheng b43e2134a2 Adds e2e firewall tests.
For LoadBalancer type service:
- Verifies corresponding firewall rule has correct sourceRanges, ports
  & protocols, target tags.
- Verifies requests can reach all expected instances.
- Verifies requests can not reach instances that are not included.

For Ingress resrouce:
- Verifies the ingress firewall rule has correct sourceRanges, target
  tags and tcp ports.

For general e2e cluster:
- Verifies all required firewall rules has correct sourceRange, ports
  & protocols, source tags and target tags.
- Verifies well know ports on master and nodes are not
  exposed externally
2016-12-16 14:31:30 -08:00
Kubernetes Submit Queue 5b240ca897 Merge pull request #36748 from kargakis/remove-events-from-deployment-tests
Automatic merge from submit-queue

Fix Recreate for Deployments and stop using events in e2e tests

Fixes https://github.com/kubernetes/kubernetes/issues/36453 by removing events from the deployment tests. The test about events during a Rolling deployment is redundant so I just removed it (we already have another test specifically for Rolling deployments).

Closes https://github.com/kubernetes/kubernetes/issues/32567 (preferred to use pod LISTs instead of a new status API field for replica sets that would add many more writes to replica sets).

@kubernetes/deployment
2016-12-16 03:57:02 -08:00
Kubernetes Submit Queue cf2dc3968b Merge pull request #38750 from shashidharatd/federation-ci
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

[Federation] Stop cleaning federation namespace in e2e tests

when --clean-start=true flag is provided to e2e tests it would cleanup all the leftover namespaces except `default` and `kube-system` and because of this when we run e2e tests in federation soak test job, the federation control plane is destroyed before it runs the tests and all tests start to fail.

So adding federation-system to the list of namespace to be left intact and also changed the default federation namespace name from `federation` to `federation-system` to be consistent with the newer method of deploying federation using kubefed.

@madhusudancs  @nikhiljindal
2016-12-16 02:16:17 -08:00
Kubernetes Submit Queue 2a619d543f Merge pull request #38830 from krousey/e2eutil
Automatic merge from submit-queue (batch tested with PRs 38830, 38750)

Remove the ReadyReplica version guard

**What this PR does / why we need it**: Removes outlived version guards.

**Which issue this PR fixes**: fixes #37310
2016-12-16 02:16:16 -08:00
shashidharatd b58216e333 Stop cleaning federation namespace in e2e tests 2016-12-16 14:21:40 +05:30
Madhusudan.C.S 5a7644c502 [Federation][init-11] Switch federation e2e tests to use the new federation control plane bootstrap via the `kubefed init` command. 2016-12-16 11:22:44 +05:30
Kris 1d8bebeb2f Remove the ReadyReplica version guard 2016-12-15 11:14:38 -08:00
Kubernetes Submit Queue 32946c5bd0 Merge pull request #38820 from jszczepkowski/e2e-not-ready-nodes
Automatic merge from submit-queue (batch tested with PRs 38818, 38813, 38820)

E2E test lib: improved logging of not ready nodes.
2016-12-15 11:04:21 -08:00
Michail Kargakis 7ef3e6f7c9 controller: wait for all pods to be deleted before Recreating 2016-12-15 19:55:18 +01:00
Michail Kargakis 31a5b4218d test: remove deployment events from e2e tests 2016-12-15 19:53:36 +01:00
Jerzy Szczepkowski ec17af655f E2E test lib: improved logging of not ready nodes.
E2E test lib: improved logging of not ready nodes.
2016-12-15 18:23:18 +01:00
Kris 128af75b93 Add timeouts to proxy calls in e2e tests 2016-12-14 13:14:44 -08:00
Chao Xu 6709b7ada2 run hack/update-codegen.sh
run hack/verify-gofmt.sh
update bazel
2016-12-14 12:39:49 -08:00
Chao Xu c81057be2c move federation_release_1_5 to federation_clientset 2016-12-14 12:39:49 -08:00
Chao Xu 03d8820edc rename /release_1_5 to /clientset 2016-12-14 12:39:48 -08:00
Kubernetes Submit Queue 4505224cd3 Merge pull request #35436 from danwinship/utilversion
Automatic merge from submit-queue

Add a package for handling version numbers (including non-"Semantic" versions)

As noted in #32401, we are using Semantic Version-parsing libraries to parse version numbers that aren't necessarily "Semantic". Although, contrary to what I'd said there, it turns out that this wasn't actually currently a problem for the iptables code, because the regexp used to extract the version number out of the "iptables --version" output only pulled out three components, so given "iptables v1.4.19.1", it would have extracted just "1.4.19". Still, it could be a problem if they later release "1.5" rather than "1.5.0", or if we eventually need to _compare_ against a 4-digit version number.

Also, as noted in #23854, we were also using two different semver libraries in different parts of the code (plus a wrapper around one of them in pkg/version).

This PR adds pkg/util/version, with code to parse and compare both semver and non-semver version strings, and then updates kubernetes to use it everywhere (including getting rid of a bunch of code duplication in kubelet by making utilversion.Version implement the kubecontainer.Version interface directly).

Ironically, this does not actually allow us to get rid of either of the vendored semver libraries, because we still have other dependencies that depend on each of them. (cadvisor uses blang/semver and etcd uses coreos/go-semver)

fixes #32401, #23854
2016-12-13 12:10:38 -08:00
Kubernetes Submit Queue d13067ed37 Merge pull request #38507 from gmarek/res-gat-kubemark
Automatic merge from submit-queue (batch tested with PRs 38695, 38507)

Fix resource gatherer for kubemark

Not working yet...
2016-12-13 07:30:35 -08:00
gmarek 1b1a4aef6a Fix resource gatherer for kubemark 2016-12-13 14:59:22 +01:00
Kubernetes Submit Queue 380ad617f3 Merge pull request #38461 from gmarek/job
Automatic merge from submit-queue

Add an option to run Job in Density/Load config

cc @timothysc @jeremyeder 

@erictune @soltysh - I run this test and it seems to me that Job has noticeably worse performance than Deployment. I'll create an issue for this, but this PR is for easy repro.
2016-12-13 05:57:18 -08:00
Dan Winship f369372dad Drop version-parsing from pkg/version
pkg/version is now just version constants, etc, not version parsing
2016-12-13 08:53:19 -05:00
gmarek c9e78f1cd5 Add an option to run Job in Density/Load config 2016-12-13 13:21:30 +01:00
Kubernetes Submit Queue b14f57ca7e Merge pull request #38620 from wojtek-t/increase_wait_for_nodes_timeout
Automatic merge from submit-queue (batch tested with PRs 38617, 38620)

Increase timeout for waiting for nodes
2016-12-13 03:46:29 -08:00
Kubernetes Submit Queue 99f876bb78 Merge pull request #38609 from wojtek-t/cleanup_annoying_test_logs
Automatic merge from submit-queue

Reduce amount of annoing logs in large clusters
2016-12-13 02:12:07 -08:00
Wojciech Tyczynski 6051870a48 Allow for configuring timeout for waiting for nodes 2016-12-13 09:55:34 +01:00
Mike Danese c87de85347 autoupdate BUILD files 2016-12-12 13:30:07 -08:00
Wojciech Tyczynski ebdef4d57e Reduce amount of annoing logs in large clusters 2016-12-12 14:43:41 +01:00
Michail Kargakis 0d95d71e65 test: cleanup test logs for deployments 2016-12-12 12:19:51 +01:00
Clayton Coleman c52d510a24
refactor: generated 2016-12-10 18:05:53 -05:00
Clayton Coleman 42d410fdde
Switch to use pkg/apis/meta/v1/unstructured and the new interfaces
Avoid directly accessing an unstructured type if it is not required.
2016-12-10 18:05:28 -05:00
Kubernetes Submit Queue f5f109ca11 Merge pull request #38292 from gmarek/daemon
Automatic merge from submit-queue

Add Daemons to Load/Density tests

cc @jeremyeder @timstclair @sjug
2016-12-09 07:29:15 -08:00
Kubernetes Submit Queue 52e1b36961 Merge pull request #38462 from gmarek/print
Automatic merge from submit-queue

Make resource gatherer print the data about resource usage in case of…
2016-12-09 06:07:57 -08:00
gmarek bfe2a2b03c Add Daemons to Load/Density tests 2016-12-09 14:31:46 +01:00
gmarek 3361576f3b Make resource gatherer print the data about resource usage in case of failure 2016-12-09 11:55:40 +01:00
Wojciech Tyczynski a9ec31209e GetOptions - fix tests 2016-12-09 09:42:01 +01:00
Kubernetes Submit Queue 4b44926f90 Merge pull request #37325 from ivan4th/fix-e2e-with-complete-pods-in-kube-system-ns
Automatic merge from submit-queue (batch tested with PRs 37325, 38313, 38141, 38321, 38333)

Fix running e2e with 'Completed' kube-system pods

As of now, e2e runner keeps waiting for pods in `kube-system` namespace to be "Running and Ready" if there are any pods in `Completed` state in that namespace.
This for example happens after following [Kubernetes Hosted Installation](http://docs.projectcalico.org/v2.0/getting-started/kubernetes/installation/#kubernetes-hosted-installation) instructions for Calico, making it impossible to run conformance tests against the cluster. It's also to possible to reproduce the problem like that:
```
$ cat testjob.yaml
apiVersion: batch/v1
kind: Job
metadata:
  name: tst
  namespace: kube-system
spec:
  template:
    metadata:
      name: tst
    spec:
      containers:
      - name: tst
        image: busybox
        command: ["echo",  "test"]
      restartPolicy: Never
$ kubectl create -f testjob.yaml
$ go run hack/e2e.go -v --test --test_args='--ginkgo.focus=existing\s+RC'
```
2016-12-07 17:14:14 -08:00
Kubernetes Submit Queue 66f5d07e05 Merge pull request #38255 from bprashanth/svc_cleanup
Automatic merge from submit-queue

Delete regional static-ip instead of global for type=lb

Global vs region is the difference between 
```
$ gcloud compute addresses delete foo --global
$ gcloud compute addresses delete foo --region us-central1
```

Type=LoadBalancer users the second type and were were doing the first. 
Also adds some logging.
2016-12-07 13:38:50 -08:00
bprashanth e1daee5b37 Delete regional static-ip instead of global for type=lb 2016-12-07 11:33:04 -08:00
Marcin Wielgus eca87cfea8 Fix skip logic in e2e framework 2016-12-07 12:07:27 +01:00
Kubernetes Submit Queue 544ccd2e35 Merge pull request #38197 from kargakis/wait-for-readyrs-before-adopting
Automatic merge from submit-queue (batch tested with PRs 38173, 38151, 38197, 38221)

test: wait for ready replica set before adopting

Reworked version of https://github.com/kubernetes/kubernetes/pull/36439 which was reverted in https://github.com/kubernetes/kubernetes/pull/38049. This PR doesn't use any of the new status API added in replica sets so it should cause no trouble with upgrade tests.

@kubernetes/deployment @smarterclayton
2016-12-06 21:14:33 -08:00
Kubernetes Submit Queue f920391755 Merge pull request #38139 from sjug/clusterverify_ns
Automatic merge from submit-queue (batch tested with PRs 37032, 38119, 38186, 38200, 38139)

New ns param for NewClusterVerification

**What this PR does / why we need it**: Allows the test to specify alternate namespaces to when waiting for pods to be in a specific state.

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

**Special notes for your reviewer**: Minor fix

**Release note**: None
2016-12-06 18:29:40 -08:00
Michail Kargakis 884b0a6f20 test: wait for ready replica set before adopting 2016-12-06 17:37:37 +01:00
Kubernetes Submit Queue c3a2cc5370 Merge pull request #38185 from kargakis/restore-poll-for-test-util
Automatic merge from submit-queue

test: restore polling for stabilizing deployment tests

Discussed in 886052c225 (commitcomment-20081416)

@rmmh @janetkuo @wojtek-t ptal
2016-12-06 06:31:01 -08:00
gmarek 070f0979c2 Make it possible to run Load test using Deployments or ReplicaSets 2016-12-06 12:22:58 +01:00
Michail Kargakis 4949d61b39 test: restore polling for stabilizing deployment tests 2016-12-06 11:57:32 +01:00
Kubernetes Submit Queue 216a03749f Merge pull request #37261 from MrHohn/dnsautoscale-wait-pods
Automatic merge from submit-queue (batch tested with PRs 37328, 38102, 37261, 31321, 38146)

Fixes flake: wait for dns pods terminating after test completed

From #37194. Based on #36600. Please only look at the second commit.

As mentioned in [comment](https://github.com/kubernetes/kubernetes/issues/37194#issuecomment-262007174), "DNS horizontal autoscaling" test does not wait for the additional pods to be terminated and this may lead to the failure of later tests.

This fix adds a wait loop at the end of the serial test to ensure the cluster recovers to the original state. In the non-serial test it does not wait for the additional pods terminating because it will not affect other tests, given they are able to be run simultaneously. Plus wait for pods terminating will take certain amount of time.

Note this only fixes certain case of #37194. I noticed there are other failures irrelevant to dns autoscaler. LIke [this one](https://k8s-gubernator.appspot.com/build/kubernetes-jenkins/logs/ci-kubernetes-e2e-gci-gce-serial/34/).

@bprashanth @Random-Liu
2016-12-05 20:16:51 -08:00
Sebastain Jug 98864265a2 New ns param for NewClusterVerification 2016-12-05 16:27:07 -05:00
Kubernetes Submit Queue 4fed3269dd Merge pull request #36352 from kargakis/fix-deployment-helper
Automatic merge from submit-queue (batch tested with PRs 36352, 36538, 37976, 36374)

test: update deployment helper to return better error messages

@kubernetes/deployment the problem with https://github.com/kubernetes/kubernetes/issues/36270 is that the selector key is never added in the deployment but this change would make it clearer.
2016-12-05 11:08:42 -08:00
Dr. Stefan Schimanski 458d2b2fe4 Add verb support for discovery client 2016-12-05 12:36:05 +01:00
Clayton Coleman 3454a8d52c
refactor: update bazel, codec, and gofmt 2016-12-03 19:10:53 -05:00
Clayton Coleman 5df8cc39c9
refactor: generated 2016-12-03 19:10:46 -05:00
Clayton Coleman 7aacb61fe1
Revert "test: update rollover test to wait for available rs before adopting"
This reverts commit 5b7bf78f3f.
2016-12-03 14:42:50 -05:00