Skip to content

Commit

Permalink
e2e: make recreateCSIRBDPods() function to a generic one
Browse files Browse the repository at this point in the history
This commit make recreateCSIRBDPods function to be a general one
so that it can be consumed by more clients.

Updates ceph#2509

Signed-off-by: Humble Chirammal <[email protected]>
  • Loading branch information
humblec authored and openshift-cherrypick-robot committed Jan 12, 2022
1 parent 9a770e5 commit 6119762
Show file tree
Hide file tree
Showing 4 changed files with 22 additions and 20 deletions.
2 changes: 1 addition & 1 deletion e2e/migration.go
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ func generateClusterIDConfigMapForMigration(f *framework.Framework, c kubernetes
return fmt.Errorf("failed to create configmap: %w", err)
}
// restart csi pods for the configmap to take effect.
err = recreateCSIRBDPods(f)
err = recreateCSIPods(f, rbdPodLabels, rbdDaemonsetName, rbdDeploymentName)
if err != nil {
return fmt.Errorf("failed to recreate rbd csi pods: %w", err)
}
Expand Down
19 changes: 19 additions & 0 deletions e2e/pod.go
Original file line number Diff line number Diff line change
Expand Up @@ -395,3 +395,22 @@ func getKernelVersionFromDaemonset(f *framework.Framework, ns, dsn, cn string) (

return kernelRelease, nil
}

// recreateCSIPods delete the daemonset and deployment pods based on the selectors passed in.
func recreateCSIPods(f *framework.Framework, podLabels, daemonsetName, deploymentName string) error {
err := deletePodWithLabel(podLabels, cephCSINamespace, false)
if err != nil {
return fmt.Errorf("failed to delete pods with labels (%s): %w", podLabels, err)
}
// wait for csi pods to come up
err = waitForDaemonSets(daemonsetName, cephCSINamespace, f.ClientSet, deployTimeout)
if err != nil {
return fmt.Errorf("timeout waiting for daemonset pods: %w", err)
}
err = waitForDeploymentComplete(f.ClientSet, deploymentName, cephCSINamespace, deployTimeout)
if err != nil {
return fmt.Errorf("timeout waiting for deployment to be in running state: %w", err)
}

return nil
}
19 changes: 0 additions & 19 deletions e2e/rbd_helper.go
Original file line number Diff line number Diff line change
Expand Up @@ -1013,22 +1013,3 @@ func waitToRemoveImagesFromTrash(f *framework.Framework, poolName string, t int)

return err
}

func recreateCSIRBDPods(f *framework.Framework) error {
err := deletePodWithLabel("app in (ceph-csi-rbd, csi-rbdplugin, csi-rbdplugin-provisioner)",
cephCSINamespace, false)
if err != nil {
return fmt.Errorf("failed to delete pods with labels: %w", err)
}
// wait for csi pods to come up
err = waitForDaemonSets(rbdDaemonsetName, cephCSINamespace, f.ClientSet, deployTimeout)
if err != nil {
return fmt.Errorf("timeout waiting for daemonset pods: %w", err)
}
err = waitForDeploymentComplete(f.ClientSet, rbdDeploymentName, cephCSINamespace, deployTimeout)
if err != nil {
return fmt.Errorf("timeout waiting for deployment to be in running state: %w", err)
}

return nil
}
2 changes: 2 additions & 0 deletions e2e/utils.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,8 @@ const (
appLabel = "write-data-in-pod"

noError = ""
// labels/selector used to list/delete rbd pods.
rbdPodLabels = "app in (ceph-csi-rbd, csi-rbdplugin, csi-rbdplugin-provisioner)"
)

var (
Expand Down

0 comments on commit 6119762

Please sign in to comment.