...
1
16
17 package node
18
19 import (
20 "context"
21 "time"
22
23 "k8s.io/apimachinery/pkg/util/wait"
24 "k8s.io/kubernetes/test/e2e/framework"
25 e2ekubectl "k8s.io/kubernetes/test/e2e/framework/kubectl"
26 )
27
28
29 func WaitForSSHTunnels(ctx context.Context, namespace string) {
30 framework.Logf("Waiting for SSH tunnels to establish")
31 e2ekubectl.RunKubectl(namespace, "run", "ssh-tunnel-test",
32 "--image=busybox",
33 "--restart=Never",
34 "--command", "--",
35 "echo", "Hello")
36 defer e2ekubectl.RunKubectl(namespace, "delete", "pod", "ssh-tunnel-test")
37
38
39 wait.PollUntilContextTimeout(ctx, 5*time.Second, time.Minute, true, func(ctx context.Context) (bool, error) {
40 _, err := e2ekubectl.RunKubectl(namespace, "logs", "ssh-tunnel-test")
41 return err == nil, nil
42 })
43 }
44
View as plain text