kubernetes/test/e2e
Kubernetes Submit Queue d71154b910 Merge pull request #36439 from kargakis/update-rollover-test
Automatic merge from submit-queue

test: update rollover test to wait for available rs before adopting

Scenario that happened in https://github.com/kubernetes/kubernetes/issues/35355#issuecomment-257808460

-- Replica set that is about to be adopted has 2 out of 4 ready replicas
-- Deployment is created with 4 replicas, adopts pre-existing replica set, creates a new one, and starts rolling replicas over to the new replica set.
```
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled down replica set test-rollover-controller to 3
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 1
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747: {replicaset-controller } SuccessfulCreate: Created pod: test-rollover-deployment-2505289747-iuiei
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:04 -0700 PDT - event for test-rollover-deployment-2505289747-iuiei: {default-scheduler } Scheduled: Successfully assigned test-rollover-deployment-2505289747-iuiei to gke-jenkins-e2e-default-pool-33c0400e-6q5m
Nov  2 01:38:17.088: INFO: At 2016-11-02 01:38:05 -0700 PDT - event for test-rollover-deployment: {deployment-controller } ScalingReplicaSet: Scaled up replica set test-rollover-deployment-2505289747 to 2
```
At this point there is no minimum availability for the Deployment (maxUnavailable is 1 meaning desired minimum available is 3 but we only have 2), and the new replica set uses a non-existent image. New replica set is scaled up to 1 (maxSurge is 1), then old replica set is scaled down by one, because cleanupUnhealthyReplicas observes that it has 2 unhealthy replicas - it can only scale down one though because the [maximum replicas it can cleanup is one](d87dfa2723/pkg/controller/deployment/rolling.go (L125)) (4+1-3-1). New replica set is scaled to 2. Available replicas are still 2 (third replica from the old replica set has yet to come up).
-- Deployment is rolled over with a new update. Test reaches for the WaitForDeploymentStatus check but there are only 2 availableReplicas (maxUnavailable is still violated).

This change makes the test wait for a healthy replica set before proceeding thus it should never hit the scenario described above.

@kubernetes/deployment
2016-12-02 12:48:44 -08:00
..
chaosmonkey autogenerated 2016-10-21 17:32:32 -07:00
common Revert "Modify GCI mounter to enable NFSv3" 2016-12-01 11:47:24 -08:00
framework Merge pull request #36439 from kargakis/update-rollover-test 2016-12-02 12:48:44 -08:00
generated revert revert of test/e2e/generated/BUILD 2016-11-18 11:24:19 -08:00
perftype autogenerated 2016-10-21 17:32:32 -07:00
testing-manifests Remove initialized annotation from statefulset examples 2016-11-23 10:40:42 -08:00
addon_update.go test/e2e 2016-11-23 15:53:09 -08:00
autoscaling_utils.go test/e2e 2016-11-23 15:53:09 -08:00
batch_v1_jobs.go test/e2e 2016-11-23 15:53:09 -08:00
BUILD generated: refactor 2016-11-23 22:30:47 -06:00
cadvisor.go test/e2e 2016-11-23 15:53:09 -08:00
cluster_logging_es.go test/e2e 2016-11-23 15:53:09 -08:00
cluster_logging_gcl.go test/e2e 2016-11-23 15:53:09 -08:00
cluster_logging_utils.go test/e2e 2016-11-23 15:53:09 -08:00
cluster_size_autoscaling.go Fix kubectl call in autoscaling e2e test 2016-11-30 10:28:31 +01:00
cluster_upgrade.go test/e2e 2016-11-23 15:53:09 -08:00
cronjob.go generated: refactor 2016-11-23 22:30:47 -06:00
daemon_restart.go test/e2e 2016-11-23 15:53:09 -08:00
daemon_set.go test/e2e 2016-11-23 15:53:09 -08:00
dashboard.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
density.go test/e2e 2016-11-23 15:53:09 -08:00
deployment.go test: update rollover test to wait for available rs before adopting 2016-11-28 14:00:59 +01:00
disruption.go Skip some disruption e2e test in big clusters 2016-12-01 14:26:38 +01:00
dns.go test/e2e 2016-11-23 15:53:09 -08:00
dns_autoscaling.go Fixes dns autoscaling test flakes 2016-11-27 22:20:54 -08:00
dns_configmap.go pkg/dns 2016-11-23 15:53:09 -08:00
e2e-example-config.json Add viper support to core e2es 2016-09-15 18:38:01 -04:00
e2e.go test/e2e 2016-11-23 15:53:09 -08:00
e2e_test.go Add viper support to core e2es 2016-09-15 18:38:01 -04:00
empty.go Stricter timeouts for nodePort curling 2016-11-03 22:31:39 -07:00
empty_dir_wrapper.go test/e2e 2016-11-23 15:53:09 -08:00
etcd_failure.go test/e2e 2016-11-23 15:53:09 -08:00
events.go test/e2e 2016-11-23 15:53:09 -08:00
example_cluster_dns.go test/e2e 2016-11-23 15:53:09 -08:00
example_k8petstore.go test/e2e 2016-11-23 15:53:09 -08:00
examples.go test/e2e 2016-11-23 15:53:09 -08:00
federated-ingress.go Updating federation e2e tests to verify cascading deletion 2016-11-18 14:44:06 -08:00
federated-namespace.go test/e2e 2016-11-23 15:53:09 -08:00
federated-secret.go test/e2e 2016-11-23 15:53:09 -08:00
federated-service.go Merge pull request #37353 from nikhiljindal/serviceDelete 2016-11-30 06:02:39 -08:00
federation-apiserver.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
federation-authn.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
federation-daemonset.go Updating federation e2e tests to verify cascading deletion 2016-11-18 14:44:06 -08:00
federation-deployment.go Merge pull request #37290 from mwielgus/rev-fed-dep 2016-11-30 09:21:25 -08:00
federation-event.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
federation-replicaset.go Updating federation e2e tests to verify cascading deletion 2016-11-18 14:44:06 -08:00
federation-util-14.go Fix package aliases to follow golang convention 2016-11-30 15:40:50 +08:00
federation-util.go test/e2e 2016-11-23 15:53:09 -08:00
garbage_collector.go test/e2e 2016-11-23 15:53:09 -08:00
generated_clientset.go test/e2e 2016-11-23 15:53:09 -08:00
gke_local_ssd.go test/e2e 2016-11-23 15:53:09 -08:00
gke_node_pools.go Use clientset in GetReadySchedulableNodesOrDie 2016-10-19 15:55:39 +02:00
google_compute.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
ha_master.go Revert "Removed "feature" tag" 2016-11-24 11:52:31 +01:00
horizontal_pod_autoscaling.go test/e2e 2016-11-23 15:53:09 -08:00
ingress.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
ingress_utils.go Merge pull request #37418 from bprashanth/ing_cleanup 2016-12-02 03:31:38 -08:00
initial_resources.go test/e2e 2016-11-23 15:53:09 -08:00
job.go test/e2e 2016-11-23 15:53:09 -08:00
kibana_logging.go test/e2e 2016-11-23 15:53:09 -08:00
kube_proxy.go test/e2e 2016-11-23 15:53:09 -08:00
kubectl.go test/e2e 2016-11-23 15:53:09 -08:00
kubelet.go test/e2e 2016-11-23 15:53:09 -08:00
kubelet_perf.go test/e2e 2016-11-23 15:53:09 -08:00
limit_range.go test/e2e 2016-11-23 15:53:09 -08:00
load.go test/e2e 2016-11-23 15:53:09 -08:00
logging_soak.go test/e2e 2016-11-23 15:53:09 -08:00
mesos.go test/e2e 2016-11-23 15:53:09 -08:00
metrics_grabber_test.go test/e2e 2016-11-23 15:53:09 -08:00
monitoring.go test/e2e 2016-11-23 15:53:09 -08:00
namespace.go test/e2e 2016-11-23 15:53:09 -08:00
network_partition.go test/e2e 2016-11-23 15:53:09 -08:00
networking.go Replace client with clientset in code 2016-10-23 22:00:35 +02:00
networking_perf.go test/e2e 2016-11-23 15:53:09 -08:00
node_problem_detector.go test/e2e 2016-11-23 15:53:09 -08:00
nodeoutofdisk.go test/e2e 2016-11-23 15:53:09 -08:00
opaque_resource.go test/e2e 2016-11-23 15:53:09 -08:00
pd.go test/e2e 2016-11-23 15:53:09 -08:00
persistent_volumes.go test/e2e 2016-11-23 15:53:09 -08:00
petset.go Merge pull request #37412 from janetkuo/revert-revert-remove-slow-statefulset 2016-11-30 21:11:09 -08:00
pod_gc.go test/e2e 2016-11-23 15:53:09 -08:00
pods.go test/e2e 2016-11-23 15:53:09 -08:00
portforward.go test/e2e 2016-11-23 15:53:09 -08:00
pre_stop.go test/e2e 2016-11-23 15:53:09 -08:00
proxy.go test/e2e 2016-11-23 15:53:09 -08:00
rc.go test/e2e 2016-11-23 15:53:09 -08:00
reboot.go Adds termination hook in reboot test for debugging 2016-11-29 10:10:38 -08:00
replica_set.go test/e2e 2016-11-23 15:53:09 -08:00
rescheduler.go test/e2e 2016-11-23 15:53:09 -08:00
resize_nodes.go test/e2e 2016-11-23 15:53:09 -08:00
resource_quota.go test/e2e 2016-11-23 15:53:09 -08:00
restart.go test/e2e 2016-11-23 15:53:09 -08:00
scheduler_predicates.go test/e2e 2016-11-23 15:53:09 -08:00
security_context.go test/e2e 2016-11-23 15:53:09 -08:00
service.go add e2e test for updating lb source range 2016-12-01 13:56:21 -08:00
service_accounts.go test/e2e 2016-11-23 15:53:09 -08:00
service_latency.go test/e2e 2016-11-23 15:53:09 -08:00
serviceloadbalancers.go test/e2e 2016-11-23 15:53:09 -08:00
ssh.go Use clientset in GetReadySchedulableNodesOrDie 2016-10-19 15:55:39 +02:00
third-party.go test/e2e 2016-11-23 15:53:09 -08:00
ubernetes_lite.go test/e2e 2016-11-23 15:53:09 -08:00
util_iperf.go Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
volume_provisioning.go test/e2e 2016-11-23 15:53:09 -08:00
volumes.go test/e2e 2016-11-23 15:53:09 -08:00