glusterfs
88 строк · 2.1 Кб
1#!/bin/bash
2
3. $(dirname $0)/../../include.rc4. $(dirname $0)/../../volume.rc5
6cleanup;7
8TESTS_EXPECTED_IN_LOOP=2009
10## Start glusterd
11TEST glusterd;12TEST pidof glusterd;13TEST $CLI volume info;14
15## Lets create volume
16TEST $CLI volume create $V0 $H0:$B0/${V0}{1,2};17
18## Verify volume is created
19EXPECT "$V0" volinfo_field $V0 'Volume Name';20EXPECT 'Created' volinfo_field $V0 'Status';21
22## Start volume and verify
23TEST $CLI volume start $V0;24EXPECT 'Started' volinfo_field $V0 'Status';25TEST glusterfs -s $H0 --volfile-id=$V0 $M026
27############################################################
28#TEST_PLAN#
29#Create a file
30#Store the hashed brick information
31#Create hard links to it
32#Remove the hashed brick
33#Check now all the hardlinks are migrated in to "OTHERBRICK"
34#Check also in mount point for all the files
35#check there is no failures and skips for migration
36############################################################
37
38TEST touch $M0/file1;39
40file_perm=`ls -l $M0/file1 | grep file1 | awk '{print $1}'`;41
42if [ -f $B0/${V0}1/file1 ]43then
44HASHED=$B0/${V0}145OTHER=$B0/${V0}246else
47HASHED=$B0/${V0}248OTHER=$B0/${V0}149fi
50
51#create hundred hard links
52for i in {1..50};53do
54TEST_IN_LOOP ln $M0/file1 $M0/link$i;55done
56
57
58TEST $CLI volume remove-brick $V0 $H0:${HASHED} start59EXPECT_WITHIN $REBALANCE_TIMEOUT "completed" remove_brick_status_completed_field "$V0" "$H0:${HASHED}";60
61#check consistency in mount point
62#And also check all the links are migrated to OTHER
63for i in {1..50}64do
65TEST_IN_LOOP [ -f ${OTHER}/link${i} ];66TEST_IN_LOOP [ -f ${M0}/link${i} ];67done;68
69#check in OTHER that all the files has proper permission (Means no
70#linkto files)
71
72for i in {1..50}73do
74link_perm=`ls -l $OTHER | grep -w link${i} | awk '{print $1}'`;75TEST_IN_LOOP [ "${file_perm}" == "${link_perm}" ]76
77done
78
79#check that remove-brick status should not have any failed or skipped files
80
81var=`$CLI volume remove-brick $V0 $H0:${HASHED} status | grep completed`82
83TEST [ `echo $var | awk '{print $5}'` = "0" ]84TEST [ `echo $var | awk '{print $6}'` = "0" ]85
86cleanup
87#G_TESTDEF_TEST_STATUS_CENTOS6=BAD_TEST,BUG=000000
88#G_TESTDEF_TEST_STATUS_NETBSD7=BAD_TEST,BUG=000000
89