mirror of
				https://github.com/optim-enterprises-bv/kubernetes.git
				synced 2025-11-04 04:08:16 +00:00 
			
		
		
		
	Wait for pod not running or gone in storage tests
This commit is contained in:
		@@ -421,6 +421,25 @@ func WaitForPodNameUnschedulableInNamespace(c clientset.Interface, podName, name
 | 
				
			|||||||
	})
 | 
						})
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					// WaitTimeoutForPodNoLongerRunningOrNotFoundInNamespace waits default amount of time (defaultPodDeletionTimeout)
 | 
				
			||||||
 | 
					// for the specified pod to stop running or disappear. Returns an error if timeout occurs first.
 | 
				
			||||||
 | 
					func WaitTimeoutForPodNoLongerRunningOrNotFoundInNamespace(c clientset.Interface, podName, namespace string) error {
 | 
				
			||||||
 | 
						return wait.PollImmediate(poll, defaultPodDeletionTimeout, func() (bool, error) {
 | 
				
			||||||
 | 
							pod, err := c.CoreV1().Pods(namespace).Get(context.TODO(), podName, metav1.GetOptions{})
 | 
				
			||||||
 | 
							if apierrors.IsNotFound(err) {
 | 
				
			||||||
 | 
								return true, nil
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							if err != nil {
 | 
				
			||||||
 | 
								return handleWaitingAPIError(err, true, "getting pod %s", podIdentifier(namespace, podName))
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							switch pod.Status.Phase {
 | 
				
			||||||
 | 
							case v1.PodFailed, v1.PodSucceeded:
 | 
				
			||||||
 | 
								return true, nil
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							return false, nil
 | 
				
			||||||
 | 
						})
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
// WaitForPodNameRunningInNamespace waits default amount of time (PodStartTimeout) for the specified pod to become running.
 | 
					// WaitForPodNameRunningInNamespace waits default amount of time (PodStartTimeout) for the specified pod to become running.
 | 
				
			||||||
// Returns an error if timeout occurs first, or pod goes in to failed state.
 | 
					// Returns an error if timeout occurs first, or pod goes in to failed state.
 | 
				
			||||||
func WaitForPodNameRunningInNamespace(c clientset.Interface, podName, namespace string) error {
 | 
					func WaitForPodNameRunningInNamespace(c clientset.Interface, podName, namespace string) error {
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -93,7 +93,7 @@ func PodsUseStaticPVsOrFail(f *framework.Framework, podCount int, image string)
 | 
				
			|||||||
			e2epod.DeletePodOrFail(c, ns, config.pod.Name)
 | 
								e2epod.DeletePodOrFail(c, ns, config.pod.Name)
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		for _, config := range configs {
 | 
							for _, config := range configs {
 | 
				
			||||||
			e2epod.WaitForPodNoLongerRunningInNamespace(c, config.pod.Name, ns)
 | 
								e2epod.WaitTimeoutForPodNoLongerRunningOrNotFoundInNamespace(c, config.pod.Name, ns)
 | 
				
			||||||
			e2epv.PVPVCCleanup(c, ns, config.pv, config.pvc)
 | 
								e2epv.PVPVCCleanup(c, ns, config.pv, config.pvc)
 | 
				
			||||||
			err = e2epv.DeletePVSource(config.pvSource)
 | 
								err = e2epv.DeletePVSource(config.pvSource)
 | 
				
			||||||
			framework.ExpectNoError(err)
 | 
								framework.ExpectNoError(err)
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user