]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
qa/workunits/rbd: Add test to list snapshots of consistency group
authorPrasanna Kumar Kalever <prasanna.kalever@redhat.com>
Wed, 19 Oct 2022 09:11:11 +0000 (14:41 +0530)
committerPrasanna Kumar Kalever <prasanna.kalever@redhat.com>
Wed, 9 Nov 2022 05:49:35 +0000 (11:19 +0530)
Signed-off-by: Prasanna Kumar Kalever <prasanna.kalever@redhat.com>
qa/workunits/rbd/rbd_groups.sh

index 2c9fd318f3c1db25196a2b4f307663db2f5224d8..4c684adfb0ea68c210878660d8b16f0a6c0f6c45 100755 (executable)
@@ -111,6 +111,16 @@ create_snapshot()
     rbd group snap create $group_name@$snap_name
 }
 
+create_snapshots()
+{
+    local group_name=$1
+    local snap_name=$2
+    local snap_count=$3
+    for i in `seq 1 $snap_count`; do
+        rbd group snap create $group_name@$snap_name$i
+    done
+}
+
 remove_snapshot()
 {
     local group_name=$1
@@ -118,6 +128,16 @@ remove_snapshot()
     rbd group snap remove $group_name@$snap_name
 }
 
+remove_snapshots()
+{
+    local group_name=$1
+    local snap_name=$2
+    local snap_count=$3
+    for i in `seq 1 $snap_count`; do
+        rbd group snap remove $group_name@$snap_name$i
+    done
+}
+
 rename_snapshot()
 {
     local group_name=$1
@@ -146,6 +166,16 @@ check_snapshot_in_group()
     list_snapshots $group_name | grep $snap_name
 }
 
+check_snapshots_count_in_group()
+{
+    local group_name=$1
+    local snap_name=$2
+    local expected_count=$3
+    local actual_count
+    actual_count=$(list_snapshots $group_name | grep -c $snap_name)
+    (( actual_count == expected_count ))
+}
+
 check_snapshot_not_in_group()
 {
     local group_name=$1
@@ -206,4 +236,21 @@ remove_group $group
 remove_image $image
 echo "PASSED"
 
+echo "TEST: list snapshots of consistency group"
+image="test_image"
+group="test_consistency_group"
+snap="group_snap"
+create_image $image
+create_group $group
+add_image_to_group $image $group
+create_snapshots $group $snap 10
+check_snapshots_count_in_group $group $snap 10
+remove_snapshots $group $snap 10
+create_snapshots $group $snap 100
+check_snapshots_count_in_group $group $snap 100
+remove_snapshots $group $snap 100
+remove_group $group
+remove_image $image
+echo "PASSED"
+
 echo "OK"