mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-18 02:50:30 +00:00
e2e: introduce writeDataInPod() to write data to an attached PVC
writeDataInPod() write data to the attached PVC using `dd` command It leave the pod and pvc state as it is. Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
This commit is contained in:
parent
53fa00dee8
commit
2d72550a39
22
e2e/utils.go
22
e2e/utils.go
@ -283,7 +283,6 @@ func createCephfsStorageClass(c kubernetes.Interface, f *framework.Framework, en
|
|||||||
Expect(stdErr).Should(BeEmpty())
|
Expect(stdErr).Should(BeEmpty())
|
||||||
// remove new line present in fsID
|
// remove new line present in fsID
|
||||||
fsID = strings.Trim(fsID, "\n")
|
fsID = strings.Trim(fsID, "\n")
|
||||||
|
|
||||||
if clusterID != "" {
|
if clusterID != "" {
|
||||||
fsID = clusterID
|
fsID = clusterID
|
||||||
}
|
}
|
||||||
@ -928,6 +927,27 @@ func listRBDImages(f *framework.Framework) []string {
|
|||||||
return imgInfos
|
return imgInfos
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// writeDataInPod fill zero content to a file in the provided POD volume.
|
||||||
|
func writeDataInPod(app *v1.Pod, f *framework.Framework) error {
|
||||||
|
app.Labels = map[string]string{"app": "write-data-in-pod"}
|
||||||
|
app.Namespace = f.UniqueName
|
||||||
|
|
||||||
|
err := createApp(f.ClientSet, app, deployTimeout)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
opt := metav1.ListOptions{
|
||||||
|
LabelSelector: "app=write-data-in-pod",
|
||||||
|
}
|
||||||
|
// write data to PVC. The idea here is to fill some content in the file
|
||||||
|
// instead of filling and reverifying the md5sum/data integrity
|
||||||
|
filePath := app.Spec.Containers[0].VolumeMounts[0].MountPath + "/test"
|
||||||
|
// While writing more data we are encountering issues in E2E timeout, so keeping it low for now
|
||||||
|
_, writeErr := execCommandInPod(f, fmt.Sprintf("dd if=/dev/zero of=%s bs=1M count=10 status=none", filePath), app.Namespace, &opt)
|
||||||
|
Expect(writeErr).Should(BeEmpty())
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
func checkDataPersist(pvcPath, appPath string, f *framework.Framework) error {
|
func checkDataPersist(pvcPath, appPath string, f *framework.Framework) error {
|
||||||
data := "checking data persist"
|
data := "checking data persist"
|
||||||
pvc, err := loadPVC(pvcPath)
|
pvc, err := loadPVC(pvcPath)
|
||||||
|
Loading…
Reference in New Issue
Block a user