Merge pull request #42705 from shashidharatd/federation-e2e-1

Automatic merge from submit-queue (batch tested with PRs 42705, 42647)

[federation][e2e] Increase timeout waiting for service shard to appear

Most of recent federation service tests are failing with timeouts. although some times they do pass, giving kind of flaky nature. So increasing the timeout waiting for service shard to appear in federated cluster from 1 min to 5 mins.

cc @madhusudancs @kubernetes/sig-federation-bugs
This commit is contained in:
Kubernetes Submit Queue
2017-03-08 05:02:05 -08:00
committed by GitHub
2 changed files with 9 additions and 12 deletions

View File

@@ -37,13 +37,8 @@ import (
) )
const ( const (
FederatedServiceTimeout = 60 * time.Second
FederatedServiceName = "federated-service" FederatedServiceName = "federated-service"
FederatedServicePodName = "federated-service-test-pod" FederatedServicePodName = "federated-service-test-pod"
KubeDNSConfigMapName = "kube-dns"
KubeDNSConfigMapNamespace = "kube-system"
) )
var FederatedServiceLabels = map[string]string{ var FederatedServiceLabels = map[string]string{

View File

@@ -56,6 +56,8 @@ var (
const ( const (
federatedNamespaceTimeout = 5 * time.Minute federatedNamespaceTimeout = 5 * time.Minute
federatedServiceTimeout = 5 * time.Minute
federatedClustersWaitTimeout = 1 * time.Minute
) )
var FederationSuite common.Suite var FederationSuite common.Suite
@@ -110,7 +112,7 @@ func clusterIsReadyOrFail(f *fedframework.Framework, context *fedframework.E2ECo
// return ClusterList until the listed cluster items equals clusterCount // return ClusterList until the listed cluster items equals clusterCount
func waitForAllRegisteredClusters(f *fedframework.Framework, clusterCount int) *federationapi.ClusterList { func waitForAllRegisteredClusters(f *fedframework.Framework, clusterCount int) *federationapi.ClusterList {
var clusterList *federationapi.ClusterList var clusterList *federationapi.ClusterList
if err := wait.PollImmediate(framework.Poll, FederatedServiceTimeout, func() (bool, error) { if err := wait.PollImmediate(framework.Poll, federatedClustersWaitTimeout, func() (bool, error) {
var err error var err error
clusterList, err = f.FederationClientset.Federation().Clusters().List(metav1.ListOptions{}) clusterList, err = f.FederationClientset.Federation().Clusters().List(metav1.ListOptions{})
if err != nil { if err != nil {
@@ -260,7 +262,7 @@ func waitForServiceOrFail(clientset *kubeclientset.Clientset, namespace string,
func waitForServiceShardsOrFail(namespace string, service *v1.Service, clusters map[string]*cluster) { func waitForServiceShardsOrFail(namespace string, service *v1.Service, clusters map[string]*cluster) {
framework.Logf("Waiting for service %q in %d clusters", service.Name, len(clusters)) framework.Logf("Waiting for service %q in %d clusters", service.Name, len(clusters))
for _, c := range clusters { for _, c := range clusters {
waitForServiceOrFail(c.Clientset, namespace, service, true, FederatedServiceTimeout) waitForServiceOrFail(c.Clientset, namespace, service, true, federatedServiceTimeout)
} }
} }
@@ -326,7 +328,7 @@ func cleanupServiceShardsAndProviderResources(namespace string, service *v1.Serv
for name, c := range clusters { for name, c := range clusters {
var cSvc *v1.Service var cSvc *v1.Service
err := wait.PollImmediate(framework.Poll, FederatedServiceTimeout, func() (bool, error) { err := wait.PollImmediate(framework.Poll, federatedServiceTimeout, func() (bool, error) {
var err error var err error
cSvc, err = c.Clientset.Services(namespace).Get(service.Name, metav1.GetOptions{}) cSvc, err = c.Clientset.Services(namespace).Get(service.Name, metav1.GetOptions{})
if err != nil && !errors.IsNotFound(err) { if err != nil && !errors.IsNotFound(err) {
@@ -343,15 +345,15 @@ func cleanupServiceShardsAndProviderResources(namespace string, service *v1.Serv
}) })
if err != nil || cSvc == nil { if err != nil || cSvc == nil {
By(fmt.Sprintf("Failed to find service %q in namespace %q, in cluster %q in %s", service.Name, namespace, name, FederatedServiceTimeout)) By(fmt.Sprintf("Failed to find service %q in namespace %q, in cluster %q in %s", service.Name, namespace, name, federatedServiceTimeout))
continue continue
} }
err = cleanupServiceShard(c.Clientset, name, namespace, cSvc, FederatedServiceTimeout) err = cleanupServiceShard(c.Clientset, name, namespace, cSvc, federatedServiceTimeout)
if err != nil { if err != nil {
framework.Logf("Failed to delete service %q in namespace %q, in cluster %q: %v", service.Name, namespace, name, err) framework.Logf("Failed to delete service %q in namespace %q, in cluster %q: %v", service.Name, namespace, name, err)
} }
err = cleanupServiceShardLoadBalancer(name, cSvc, FederatedServiceTimeout) err = cleanupServiceShardLoadBalancer(name, cSvc, federatedServiceTimeout)
if err != nil { if err != nil {
framework.Logf("Failed to delete cloud provider resources for service %q in namespace %q, in cluster %q", service.Name, namespace, name) framework.Logf("Failed to delete cloud provider resources for service %q in namespace %q, in cluster %q", service.Name, namespace, name)
} }