mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-28 05:57:25 +00:00
Wait for pods to become available before rolling over in deployment e2e test
This commit is contained in:
parent
6cecf2b357
commit
ecce9492cc
@ -454,12 +454,14 @@ func testRolloverDeployment(f *Framework) {
|
|||||||
Logf("error in waiting for pods to come up: %s", err)
|
Logf("error in waiting for pods to come up: %s", err)
|
||||||
Expect(err).NotTo(HaveOccurred())
|
Expect(err).NotTo(HaveOccurred())
|
||||||
}
|
}
|
||||||
|
deploymentMinReadySeconds := 5
|
||||||
|
err = waitForPodsReady(c, ns, podName, deploymentMinReadySeconds)
|
||||||
|
Expect(err).NotTo(HaveOccurred())
|
||||||
|
|
||||||
// Create a deployment to delete nginx pods and instead bring up redis-slave pods.
|
// Create a deployment to delete nginx pods and instead bring up redis-slave pods.
|
||||||
deploymentName, deploymentImageName := "redis-deployment", "redis-slave"
|
deploymentName, deploymentImageName := "redis-deployment", "redis-slave"
|
||||||
deploymentReplicas := 4
|
deploymentReplicas := 4
|
||||||
deploymentImage := "gcr.io/google_samples/gb-redisslave:v1"
|
deploymentImage := "gcr.io/google_samples/gb-redisslave:v1"
|
||||||
deploymentMinReadySeconds := 5
|
|
||||||
deploymentStrategyType := extensions.RollingUpdateDeploymentStrategyType
|
deploymentStrategyType := extensions.RollingUpdateDeploymentStrategyType
|
||||||
Logf("Creating deployment %s", deploymentName)
|
Logf("Creating deployment %s", deploymentName)
|
||||||
newDeployment := newDeployment(deploymentName, deploymentReplicas, deploymentPodLabels, deploymentImageName, deploymentImage, deploymentStrategyType, nil)
|
newDeployment := newDeployment(deploymentName, deploymentReplicas, deploymentPodLabels, deploymentImageName, deploymentImage, deploymentStrategyType, nil)
|
||||||
|
@ -2144,6 +2144,23 @@ func waitForDeploymentStatus(c clientset.Interface, ns, deploymentName string, d
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func waitForPodsReady(c *clientset.Clientset, ns, name string, minReadySeconds int) error {
|
||||||
|
label := labels.SelectorFromSet(labels.Set(map[string]string{"name": name}))
|
||||||
|
options := api.ListOptions{LabelSelector: label}
|
||||||
|
return wait.Poll(poll, 5*time.Minute, func() (bool, error) {
|
||||||
|
pods, err := c.Pods(ns).List(options)
|
||||||
|
if err != nil {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
for _, pod := range pods.Items {
|
||||||
|
if !deploymentutil.IsPodAvailable(&pod, minReadySeconds) {
|
||||||
|
return false, nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true, nil
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
// Waits for the deployment to clean up old rcs.
|
// Waits for the deployment to clean up old rcs.
|
||||||
func waitForDeploymentOldRSsNum(c *clientset.Clientset, ns, deploymentName string, desiredRSNum int) error {
|
func waitForDeploymentOldRSsNum(c *clientset.Clientset, ns, deploymentName string, desiredRSNum int) error {
|
||||||
return wait.Poll(poll, 5*time.Minute, func() (bool, error) {
|
return wait.Poll(poll, 5*time.Minute, func() (bool, error) {
|
||||||
|
Loading…
Reference in New Issue
Block a user