Merge pull request #5784 from tstromberg/podwait-none2
Improve reliability of TestStartStop with none driverpull/5794/head
						commit
						ba8aeaae71
					
				| 
						 | 
					@ -37,9 +37,10 @@ SUDO_PREFIX="sudo -E "
 | 
				
			||||||
export KUBECONFIG="/root/.kube/config"
 | 
					export KUBECONFIG="/root/.kube/config"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# "none" driver specific cleanup from previous runs.
 | 
					# "none" driver specific cleanup from previous runs.
 | 
				
			||||||
 | 
					sudo kubeadm reset -f || true
 | 
				
			||||||
 | 
					# kubeadm reset may not stop pods immediately
 | 
				
			||||||
 | 
					docker rm -f $(docker ps -aq) >/dev/null 2>&1 || true
 | 
				
			||||||
 | 
					
 | 
				
			||||||
# Try without -f first, primarily because older kubeadm versions (v1.10) don't support it anyways.
 | 
					 | 
				
			||||||
sudo kubeadm reset || sudo kubeadm reset -f || true
 | 
					 | 
				
			||||||
# Cleanup data directory
 | 
					# Cleanup data directory
 | 
				
			||||||
sudo rm -rf /data/*
 | 
					sudo rm -rf /data/*
 | 
				
			||||||
# Cleanup old Kubernetes configs
 | 
					# Cleanup old Kubernetes configs
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -227,9 +227,8 @@ func PodWait(ctx context.Context, t *testing.T, profile string, ns string, selec
 | 
				
			||||||
	f := func() (bool, error) {
 | 
						f := func() (bool, error) {
 | 
				
			||||||
		pods, err := client.CoreV1().Pods(ns).List(listOpts)
 | 
							pods, err := client.CoreV1().Pods(ns).List(listOpts)
 | 
				
			||||||
		if err != nil {
 | 
							if err != nil {
 | 
				
			||||||
			t.Logf("Pod(%s).List(%v) returned error: %v", ns, selector, err)
 | 
								t.Logf("WARNING: pod list for %q %q returned: %v", ns, selector, err)
 | 
				
			||||||
			// Don't bother to retry: something is very wrong.
 | 
								return false, err
 | 
				
			||||||
			return true, err
 | 
					 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		if len(pods.Items) == 0 {
 | 
							if len(pods.Items) == 0 {
 | 
				
			||||||
			podStart = time.Time{}
 | 
								podStart = time.Time{}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -85,7 +85,7 @@ func TestStartStop(t *testing.T) {
 | 
				
			||||||
				ctx, cancel := context.WithTimeout(context.Background(), 40*time.Minute)
 | 
									ctx, cancel := context.WithTimeout(context.Background(), 40*time.Minute)
 | 
				
			||||||
				defer CleanupWithLogs(t, profile, cancel)
 | 
									defer CleanupWithLogs(t, profile, cancel)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				startArgs := append([]string{"start", "-p", profile, "--alsologtostderr", "-v=3"}, tc.args...)
 | 
									startArgs := append([]string{"start", "-p", profile, "--alsologtostderr", "-v=3", "--wait=true"}, tc.args...)
 | 
				
			||||||
				startArgs = append(startArgs, StartArgs()...)
 | 
									startArgs = append(startArgs, StartArgs()...)
 | 
				
			||||||
				rr, err := Run(t, exec.CommandContext(ctx, Target(), startArgs...))
 | 
									rr, err := Run(t, exec.CommandContext(ctx, Target(), startArgs...))
 | 
				
			||||||
				if err != nil {
 | 
									if err != nil {
 | 
				
			||||||
| 
						 | 
					@ -103,7 +103,7 @@ func TestStartStop(t *testing.T) {
 | 
				
			||||||
						t.Fatalf("%s failed: %v", rr.Args, err)
 | 
											t.Fatalf("%s failed: %v", rr.Args, err)
 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
					names, err := PodWait(ctx, t, profile, "default", "integration-test=busybox", 2*time.Minute)
 | 
										names, err := PodWait(ctx, t, profile, "default", "integration-test=busybox", 4*time.Minute)
 | 
				
			||||||
					if err != nil {
 | 
										if err != nil {
 | 
				
			||||||
						t.Fatalf("wait: %v", err)
 | 
											t.Fatalf("wait: %v", err)
 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue