Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unify test timeouts under a common name. #43411

Merged
merged 1 commit into from
Mar 21, 2017
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
4 changes: 2 additions & 2 deletions test/e2e_federation/deployment.go
Original file line number Diff line number Diff line change
Expand Up @@ -185,7 +185,7 @@ func waitForDeploymentOrFail(c *fedclientset.Clientset, namespace string, deploy
}

func waitForDeployment(c *fedclientset.Clientset, namespace string, deploymentName string, clusters map[string]*cluster) error {
err := wait.Poll(10*time.Second, federatedDeploymentTimeout, func() (bool, error) {
err := wait.Poll(10*time.Second, federatedDefaultTestTimeout, func() (bool, error) {
fdep, err := c.Deployments(namespace).Get(deploymentName, metav1.GetOptions{})
if err != nil {
return false, err
Expand Down Expand Up @@ -259,7 +259,7 @@ func deleteDeploymentOrFail(clientset *fedclientset.Clientset, nsName string, de
}

// Wait for the deployment to be deleted.
err = wait.Poll(10*time.Second, federatedDeploymentTimeout, func() (bool, error) {
err = wait.Poll(10*time.Second, federatedDefaultTestTimeout, func() (bool, error) {
_, err := clientset.Extensions().Deployments(nsName).Get(deploymentName, metav1.GetOptions{})
if err != nil && errors.IsNotFound(err) {
return true, nil
Expand Down
18 changes: 6 additions & 12 deletions test/e2e_federation/ingress.go
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,7 @@ var _ = framework.KubeDescribe("Federated ingresses [Feature:Federation]", func(

AfterEach(func() {
// Delete all ingresses.
nsName := f.FederationNamespace.Name
deleteAllIngressesOrFail(f.FederationClientset, nsName)
deleteAllIngressesOrFail(f.FederationClientset, ns)
if secret != nil {
By("Deleting secret")
orphanDependents := false
Expand Down Expand Up @@ -202,24 +201,21 @@ var _ = framework.KubeDescribe("Federated ingresses [Feature:Federation]", func(

It("should be deleted from underlying clusters when OrphanDependents is false", func() {
fedframework.SkipUnlessFederated(f.ClientSet)
nsName := f.FederationNamespace.Name
orphanDependents := false
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, &orphanDependents, nsName)
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, &orphanDependents, ns)
By(fmt.Sprintf("Verified that ingresses were deleted from underlying clusters"))
})

It("should not be deleted from underlying clusters when OrphanDependents is true", func() {
fedframework.SkipUnlessFederated(f.ClientSet)
nsName := f.FederationNamespace.Name
orphanDependents := true
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, &orphanDependents, nsName)
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, &orphanDependents, ns)
By(fmt.Sprintf("Verified that ingresses were not deleted from underlying clusters"))
})

It("should not be deleted from underlying clusters when OrphanDependents is nil", func() {
fedframework.SkipUnlessFederated(f.ClientSet)
nsName := f.FederationNamespace.Name
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, nil, nsName)
verifyCascadingDeletionForIngress(f.FederationClientset, clusters, nil, ns)
By(fmt.Sprintf("Verified that ingresses were not deleted from underlying clusters"))
})

Expand All @@ -240,10 +236,8 @@ var _ = framework.KubeDescribe("Federated ingresses [Feature:Federation]", func(
deleteBackendPodsOrFail(clusters, ns)
if jig.ing != nil {
By(fmt.Sprintf("Deleting ingress %v on all clusters", jig.ing.Name))
deleteIngressOrFail(f.FederationClientset, ns, jig.ing.Name, nil)
for clusterName, cluster := range clusters {
deleteClusterIngressOrFail(clusterName, cluster.Clientset, ns, jig.ing.Name)
}
orphanDependents := false
deleteIngressOrFail(f.FederationClientset, ns, jig.ing.Name, &orphanDependents)
jig.ing = nil
} else {
By("No ingress to delete. Ingress is nil")
Expand Down
2 changes: 1 addition & 1 deletion test/e2e_federation/replicaset.go
Original file line number Diff line number Diff line change
Expand Up @@ -388,7 +388,7 @@ func waitForReplicaSetOrFail(c *fedclientset.Clientset, namespace string, replic

func waitForReplicaSet(c *fedclientset.Clientset, namespace string, replicaSetName string, clusters map[string]*cluster, expect map[string]int32) error {
framework.Logf("waitForReplicaSet: %s/%s; clusters: %v; expect: %v", namespace, replicaSetName, clusters, expect)
err := wait.Poll(10*time.Second, federatedReplicasetTimeout, func() (bool, error) {
err := wait.Poll(10*time.Second, federatedDefaultTestTimeout, func() (bool, error) {
frs, err := c.ReplicaSets(namespace).Get(replicaSetName, metav1.GetOptions{})
if err != nil {
return false, err
Expand Down
22 changes: 10 additions & 12 deletions test/e2e_federation/util.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,7 @@ var (
)

const (
federatedNamespaceTimeout = 5 * time.Minute
federatedReplicasetTimeout = 5 * time.Minute
federatedServiceTimeout = 5 * time.Minute
federatedDeploymentTimeout = 5 * time.Minute
federatedDefaultTestTimeout = 5 * time.Minute
federatedClustersWaitTimeout = 1 * time.Minute

// [30000, 32767] is the allowed default service nodeport range and our
Expand Down Expand Up @@ -234,7 +231,7 @@ func getRegisteredClusters(userAgentName string, f *fedframework.Framework) (map
Expect(framework.TestContext.KubeConfig).ToNot(Equal(""), "KubeConfig must be specified to load clusters' client config")
clusters[c.Name] = &cluster{c.Name, createClientsetForCluster(c, i, userAgentName), false, nil}
}
waitForNamespaceInFederatedClusters(clusters, f.FederationNamespace.Name, federatedNamespaceTimeout)
waitForNamespaceInFederatedClusters(clusters, f.FederationNamespace.Name, federatedDefaultTestTimeout)
return clusters, primaryClusterName
}

Expand Down Expand Up @@ -265,7 +262,7 @@ func waitForServiceOrFail(clientset *kubeclientset.Clientset, namespace string,
func waitForServiceShardsOrFail(namespace string, service *v1.Service, clusters map[string]*cluster) {
framework.Logf("Waiting for service %q in %d clusters", service.Name, len(clusters))
for _, c := range clusters {
waitForServiceOrFail(c.Clientset, namespace, service, true, federatedServiceTimeout)
waitForServiceOrFail(c.Clientset, namespace, service, true, federatedDefaultTestTimeout)
}
}

Expand Down Expand Up @@ -320,14 +317,15 @@ func deleteServiceOrFail(clientset *fedclientset.Clientset, namespace string, se
err := clientset.Services(namespace).Delete(serviceName, &metav1.DeleteOptions{OrphanDependents: orphanDependents})
framework.ExpectNoError(err, "Error deleting service %q from namespace %q", serviceName, namespace)
// Wait for the service to be deleted.
err = wait.Poll(5*time.Second, federatedServiceTimeout, func() (bool, error) {
err = wait.Poll(5*time.Second, federatedDefaultTestTimeout, func() (bool, error) {
_, err := clientset.Core().Services(namespace).Get(serviceName, metav1.GetOptions{})
if err != nil && errors.IsNotFound(err) {
return true, nil
}
return false, err
})
if err != nil {
framework.DescribeSvc(namespace)
framework.Failf("Error in deleting service %s: %v", serviceName, err)
}
}
Expand All @@ -337,7 +335,7 @@ func cleanupServiceShardsAndProviderResources(namespace string, service *v1.Serv
for name, c := range clusters {
var cSvc *v1.Service

err := wait.PollImmediate(framework.Poll, federatedServiceTimeout, func() (bool, error) {
err := wait.PollImmediate(framework.Poll, federatedDefaultTestTimeout, func() (bool, error) {
var err error
cSvc, err = c.Clientset.Services(namespace).Get(service.Name, metav1.GetOptions{})
if err != nil && !errors.IsNotFound(err) {
Expand All @@ -354,15 +352,15 @@ func cleanupServiceShardsAndProviderResources(namespace string, service *v1.Serv
})

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, federatedDefaultTestTimeout))
continue
}

err = cleanupServiceShard(c.Clientset, name, namespace, cSvc, federatedServiceTimeout)
err = cleanupServiceShard(c.Clientset, name, namespace, cSvc, federatedDefaultTestTimeout)
if err != nil {
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, federatedDefaultTestTimeout)
if err != nil {
framework.Logf("Failed to delete cloud provider resources for service %q in namespace %q, in cluster %q", service.Name, namespace, name)
}
Expand Down Expand Up @@ -554,7 +552,7 @@ func deleteBackendPodsOrFail(clusters map[string]*cluster, namespace string) {
// waitForReplicatSetToBeDeletedOrFail waits for the named ReplicaSet in namespace to be deleted.
// If the deletion fails, the enclosing test fails.
func waitForReplicaSetToBeDeletedOrFail(clientset *fedclientset.Clientset, namespace string, replicaSet string) {
err := wait.Poll(5*time.Second, federatedReplicasetTimeout, func() (bool, error) {
err := wait.Poll(5*time.Second, federatedDefaultTestTimeout, func() (bool, error) {
_, err := clientset.Extensions().ReplicaSets(namespace).Get(replicaSet, metav1.GetOptions{})
if err != nil && errors.IsNotFound(err) {
return true, nil
Expand Down