From def8890d5ea7e73dfa37023e5d324be0bc289f5a Mon Sep 17 00:00:00 2001 From: Krutika Dhananjay Date: Mon, 2 Dec 2013 11:37:55 +0530 Subject: cli: Fail creation of bricks on root partition in script mode Also added an option 'wignore' to save ourselves the trouble of modifying test scripts in our regression test suite as well as those that are still under review. Change-Id: Id320c03595506e9da187e766991c19640bd000c5 BUG: 1028281 Signed-off-by: Krutika Dhananjay Reviewed-on: http://review.gluster.org/6409 Reviewed-by: Kaushal M Reviewed-by: Krishnan Parthasarathi Tested-by: Gluster Build System Reviewed-by: Anand Avati --- tests/bugs/bug-948729/bug-948729-mode-script.t | 43 +++++++------------------- tests/bugs/bug-948729/bug-948729.t | 3 +- tests/include.rc | 2 +- 3 files changed, 15 insertions(+), 33 deletions(-) (limited to 'tests') diff --git a/tests/bugs/bug-948729/bug-948729-mode-script.t b/tests/bugs/bug-948729/bug-948729-mode-script.t index 541ca897d..5a1fdd3b1 100644 --- a/tests/bugs/bug-948729/bug-948729-mode-script.t +++ b/tests/bugs/bug-948729/bug-948729-mode-script.t @@ -13,10 +13,6 @@ uuid1=`uuidgen`; uuid2=`uuidgen`; uuid3=`uuidgen`; -V1=patchy1 -V2=patchy2 -V3=patchy3 - TEST launch_cluster 2; TEST $CLI_1 peer probe $H2; @@ -24,17 +20,11 @@ TEST $CLI_1 peer probe $H2; EXPECT_WITHIN 20 1 check_peers; B3=/d/backends/3 -B4=/d/backends/4 -B5=/d/backends/5 -B6=/d/backends/6 -mkdir -p $B3 $B4 $B5 $B6 +mkdir -p $B3 TEST truncate -s 16M $B1/brick1 TEST truncate -s 16M $B2/brick2 TEST truncate -s 16M $B3/brick3 -TEST truncate -s 16M $B4/brick4 -TEST truncate -s 16M $B5/brick5 -TEST truncate -s 16M $B6/brick6 TEST LD1=`losetup --find --show $B1/brick1` TEST mkfs.xfs $LD1 @@ -42,44 +32,35 @@ TEST LD2=`losetup --find --show $B2/brick2` TEST mkfs.xfs $LD2 TEST LD3=`losetup --find --show $B3/brick3` TEST mkfs.xfs $LD3 -TEST LD4=`losetup --find --show $B4/brick4` -TEST mkfs.xfs $LD4 -TEST LD5=`losetup --find --show $B5/brick5` -TEST mkfs.xfs $LD5 -TEST LD6=`losetup --find --show $B6/brick6` -TEST mkfs.xfs $LD6 -mkdir -p $B1/$V0 $B2/$V0 $B3/$V0 $B4/$V0 $B5/$V0 $B6/$V0 +mkdir -p $B1/$V0 $B2/$V0 $B3/$V0 TEST mount -t xfs $LD1 $B1/$V0 TEST mount -t xfs $LD2 $B2/$V0 TEST mount -t xfs $LD3 $B3/$V0 -TEST mount -t xfs $LD4 $B4/$V0 -TEST mount -t xfs $LD5 $B5/$V0 -TEST mount -t xfs $LD6 $B6/$V0 + +cli1=$(echo $CLI1 | sed 's/ --wignore//') #Case 0: Parent directory of the brick is absent -TEST ! $CLI_1 volume create $V0 $H1:$B1/$V0/nonexistent/b1 $H2:$B2/$V0/nonexistent/b2 +TEST ! $cli1 volume create $V0 $H1:$B1/$V0/nonexistent/b1 $H2:$B2/$V0/nonexistent/b2 #Case 1: File system root being used as brick directory -TEST $CLI_1 volume create $V0 $H1:$B5/$V0 $H2:$B6/$V0 +TEST ! $cli1 volume create $V0 $H1:$B1/$V0 $H2:$B2/$V0 #Case 2: Brick directory contains only one component -TEST $CLI_1 volume create $V1 $H1:/$uuid1 $H2:/$uuid2 +TEST ! $cli1 volume create $V0 $H1:/$uuid1 $H2:/$uuid2 #Case 3: Sub-directories of the backend FS being used as brick directory -TEST $CLI_1 volume create $V2 $H1:$B1/$V0/brick1 $H2:$B2/$V0/brick2 +TEST $cli1 volume create $V0 $H1:$B1/$V0/brick1 $H2:$B2/$V0/brick2 #add-brick tests -TEST ! $CLI_1 volume add-brick $V0 $H1:$B3/$V0/nonexistent/brick3 -TEST $CLI_1 volume add-brick $V0 $H1:$B3/$V0 -TEST $CLI_1 volume add-brick $V1 $H1:/$uuid3 -TEST $CLI_1 volume add-brick $V2 $H1:$B4/$V0/brick3 +TEST ! $cli1 volume add-brick $V0 $H1:$B3/$V0/nonexistent/brick3 +TEST ! $cli1 volume add-brick $V0 $H1:$B3/$V0 +TEST ! $cli1 volume add-brick $V0 $H1:/$uuid3 +TEST $cli1 volume add-brick $V0 $H1:$B3/$V0/brick3 #####replace-brick tests #FIX-ME : replace-brick does not currently work in the newly introduced #####cluster test framework -rmdir /$uuid1 /$uuid2 /$uuid3 - cleanup; diff --git a/tests/bugs/bug-948729/bug-948729.t b/tests/bugs/bug-948729/bug-948729.t index f94db1ea0..3914a454c 100644 --- a/tests/bugs/bug-948729/bug-948729.t +++ b/tests/bugs/bug-948729/bug-948729.t @@ -40,8 +40,9 @@ TEST mount -t xfs $LD1 $B1/$V0 TEST mount -t xfs $LD2 $B2/$V0 TEST mount -t xfs $LD3 $B3/$V0 -#Tests without --mode=script option +#Tests without options 'mode=script' and 'wignore' cli1=$(echo $CLI1 | sed 's/ --mode=script//') +cli1=$(echo $cli1 | sed 's/ --wignore//') #Case 0: Parent directory of the brick is absent TEST ! $cli1 volume create $V0 $H1:$B1/$V0/nonexistent/b1 $H2:$B2/$V0/nonexistent/b2 diff --git a/tests/include.rc b/tests/include.rc index 40dd8ac96..0369d2610 100644 --- a/tests/include.rc +++ b/tests/include.rc @@ -8,7 +8,7 @@ H0=${H0:=`hostname --fqdn`}; # hostname DEBUG=${DEBUG:=0} # turn on debugging? statedumpdir=`gluster --print-statedumpdir`; # Default directory for statedump -CLI="gluster --mode=script"; +CLI="gluster --mode=script --wignore"; mkdir -p $B0; mkdir -p $M0 $M1; -- cgit