Skip to content

Commit 9af5950

Browse files
committed
fix(test): using context.TODO() in test steps to reduce flakiness of test
Signed-off-by: Alex Castilio dos Santos <[email protected]>
1 parent 63996c7 commit 9af5950

10 files changed

+13
-42
lines changed

test/e2e/framework/kubernetes/check-pod-status.go

+3-5
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,8 @@ import (
1414
)
1515

1616
const (
17-
RetryTimeoutPodsReady = 5 * time.Minute
18-
RetryIntervalPodsReady = 5 * time.Second
19-
timeoutWaitForPodsSeconds = 1200
17+
RetryTimeoutPodsReady = 5 * time.Minute
18+
RetryIntervalPodsReady = 5 * time.Second
2019

2120
printInterval = 5 // print to stdout every 5 iterations
2221
)
@@ -49,8 +48,7 @@ func (w *WaitPodsReady) Run() error {
4948
return fmt.Errorf("error creating Kubernetes client: %w", err)
5049
}
5150

52-
ctx, cancel := context.WithTimeout(context.Background(), timeoutWaitForPodsSeconds*time.Second)
53-
defer cancel()
51+
ctx := context.TODO()
5452

5553
return WaitForPodReady(ctx, clientset, w.Namespace, w.LabelSelector)
5654
}

test/e2e/framework/kubernetes/create-namespace.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package kubernetes
33
import (
44
"context"
55
"fmt"
6-
"time"
76

87
v1 "k8s.io/api/core/v1"
98
"k8s.io/apimachinery/pkg/api/errors"
@@ -52,8 +51,7 @@ func CreateNamespaceFn(kubeconfigpath, namespace string) error {
5251
return fmt.Errorf("error creating Kubernetes client: %w", err)
5352
}
5453

55-
ctx, cancel := context.WithTimeout(context.Background(), defaultTimeoutSeconds*time.Second)
56-
defer cancel()
54+
ctx := context.TODO()
5755

5856
_, err = clientset.CoreV1().Namespaces().Create(ctx, &v1.Namespace{
5957
ObjectMeta: metav1.ObjectMeta{

test/e2e/framework/kubernetes/delete-namespace.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -30,8 +30,7 @@ func (d *DeleteNamespace) Run() error {
3030
return fmt.Errorf("error creating Kubernetes client: %w", err)
3131
}
3232

33-
ctx, cancel := context.WithTimeout(context.Background(), 1200*time.Second)
34-
defer cancel()
33+
ctx := context.TODO()
3534

3635
err = clientset.CoreV1().Namespaces().Delete(ctx, d.Namespace, metaV1.DeleteOptions{})
3736
if err != nil {

test/e2e/framework/scaletest/add-shared-labels.go

+1-7
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import (
55
"encoding/json"
66
"fmt"
77
"log"
8-
"time"
98

109
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1110
"k8s.io/apimachinery/pkg/types"
@@ -51,8 +50,7 @@ func (a *AddSharedLabelsToAllPods) Run() error {
5150
return fmt.Errorf("error creating Kubernetes client: %w", err)
5251
}
5352

54-
ctx, cancel := contextToLabelAllPods()
55-
defer cancel()
53+
ctx := context.TODO()
5654

5755
resources, err := clientset.CoreV1().Pods(a.Namespace).List(ctx, metav1.ListOptions{})
5856
if err != nil {
@@ -109,7 +107,3 @@ func getSharedLabelsPatch(numLabels int) ([]byte, error) {
109107

110108
return b, nil
111109
}
112-
113-
func contextToLabelAllPods() (context.Context, context.CancelFunc) {
114-
return context.WithTimeout(context.Background(), 120*time.Minute)
115-
}

test/e2e/framework/scaletest/add-unique-labels.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package scaletest
22

33
import (
4+
"context"
45
"encoding/json"
56
"fmt"
67

@@ -41,8 +42,7 @@ func (a *AddUniqueLabelsToAllPods) Run() error {
4142
return fmt.Errorf("error creating Kubernetes client: %w", err)
4243
}
4344

44-
ctx, cancel := contextToLabelAllPods()
45-
defer cancel()
45+
ctx := context.TODO()
4646

4747
resources, err := clientset.CoreV1().Pods(a.Namespace).List(ctx, metav1.ListOptions{})
4848
if err != nil {

test/e2e/framework/scaletest/create-network-policies.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package scaletest
33
import (
44
"context"
55
"fmt"
6-
"time"
76

87
e2ekubernetes "github.com/microsoft/retina/test/e2e/framework/kubernetes"
98

@@ -45,8 +44,7 @@ func (c *CreateNetworkPolicies) Run() error {
4544
return fmt.Errorf("error creating Kubernetes client: %w", err)
4645
}
4746

48-
ctx, cancel := context.WithTimeout(context.Background(), defaultTimeoutSeconds*time.Second)
49-
defer cancel()
47+
ctx := context.TODO()
5048

5149
networkPolicies := c.generateNetworkPolicies(c.NumNetworkPolicies)
5250

test/e2e/framework/scaletest/create-resources.go

+1-3
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ import (
44
"context"
55
"fmt"
66
"log"
7-
"time"
87

98
e2ekubernetes "github.com/microsoft/retina/test/e2e/framework/kubernetes"
109
"github.com/microsoft/retina/test/retry"
@@ -49,8 +48,7 @@ func (c *CreateResources) Run() error {
4948
return fmt.Errorf("error creating Kubernetes client: %w", err)
5049
}
5150

52-
ctx, cancel := context.WithTimeout(context.Background(), 1800*time.Second)
53-
defer cancel()
51+
ctx := context.TODO()
5452

5553
retrier := retry.Retrier{Attempts: defaultRetryAttempts, Delay: defaultRetryDelay}
5654

test/e2e/framework/scaletest/delete-and-re-add-labels.go

+1-8
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,7 @@ func (d *DeleteAndReAddLabels) Run() error {
4848
return fmt.Errorf("error creating Kubernetes client: %w", err)
4949
}
5050

51-
ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
52-
defer cancel()
51+
ctx := context.TODO()
5352

5453
labelsToDelete := `"shared-lab-00000": null, "shared-lab-00001": null, "shared-lab-00002": null`
5554
labelsToAdd := `"shared-lab-00000": "val", "shared-lab-00001": "val", "shared-lab-00002": "val"`
@@ -74,9 +73,6 @@ func (d *DeleteAndReAddLabels) Run() error {
7473

7574
patch := fmt.Sprintf(`{"metadata": {"labels": {%s}}}`, labelsToDelete)
7675

77-
ctx, cancel = contextToLabelAllPods()
78-
defer cancel()
79-
8076
err = d.deleteLabels(ctx, clientset, pods, patch)
8177
if err != nil {
8278
return fmt.Errorf("error deleting labels: %w", err)
@@ -89,9 +85,6 @@ func (d *DeleteAndReAddLabels) Run() error {
8985

9086
patch = fmt.Sprintf(`{"metadata": {"labels": {%s}}}`, labelsToAdd)
9187

92-
ctx, cancel = contextToLabelAllPods()
93-
defer cancel()
94-
9588
err = d.addLabels(ctx, clientset, pods, patch)
9689
if err != nil {
9790
return fmt.Errorf("error adding labels: %w", err)

test/e2e/framework/scaletest/get-publish-metrics.go

+1-2
Original file line numberDiff line numberDiff line change
@@ -136,8 +136,7 @@ func (g *GetAndPublishMetrics) Prevalidate() error {
136136

137137
func (g *GetAndPublishMetrics) getAndPublishMetrics() error {
138138

139-
ctx, cancel := context.WithTimeout(context.Background(), defaultTimeoutSeconds*time.Second)
140-
defer cancel()
139+
ctx := context.TODO()
141140

142141
labelSelector := labels.Set(g.Labels).String()
143142

test/e2e/framework/scaletest/validate-nodes.go

+1-7
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ package scaletest
33
import (
44
"context"
55
"fmt"
6-
"time"
76

87
"github.com/pkg/errors"
98
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@@ -12,10 +11,6 @@ import (
1211
"k8s.io/client-go/tools/clientcmd"
1312
)
1413

15-
const (
16-
defaultTimeoutSeconds = 300
17-
)
18-
1914
type ValidateNumOfNodes struct {
2015
NumNodesRequired int
2116
Label map[string]string
@@ -43,8 +38,7 @@ func (v *ValidateNumOfNodes) Run() error {
4338
return fmt.Errorf("error creating Kubernetes client: %w", err)
4439
}
4540

46-
ctx, cancel := context.WithTimeout(context.Background(), defaultTimeoutSeconds*time.Second)
47-
defer cancel()
41+
ctx := context.TODO()
4842

4943
labelSelector := labels.Set(v.Label).String()
5044
nodes, err := clientset.CoreV1().Nodes().List(ctx, metav1.ListOptions{LabelSelector: labelSelector})

0 commit comments

Comments
 (0)