glusterfs

Форк
0
/
gfid-access.t 
80 строк · 2.7 Кб
1
#!/bin/bash
2

3
. $(dirname $0)/../include.rc
4
. $(dirname $0)/../volume.rc
5

6
cleanup;
7

8
TEST glusterd
9
TEST pidof glusterd
10
TEST $CLI volume create $V0 $H0:$B0/${V0}0
11
TEST $CLI volume start $V0
12
TEST $GFS --volfile-id=/$V0 --volfile-server=$H0 $M0 --aux-gfid-mount;
13
TEST mkdir $M0/a
14
TEST touch $M0/b
15
a_gfid_str=$(gf_gfid_xattr_to_str $(gf_get_gfid_xattr $B0/${V0}0/a))
16
b_gfid_str=$(gf_gfid_xattr_to_str $(gf_get_gfid_xattr $B0/${V0}0/b))
17

18
#Operations on Directory
19
TEST setfattr -n trusted.abc -v abc $M0/a
20
EXPECT "abc" echo $(getfattr -n trusted.abc --only-values $M0/a)
21
EXPECT "abc" echo $(getfattr -n trusted.abc --only-values $M0/.gfid/$a_gfid_str)
22
TEST setfattr -x trusted.abc $M0/a
23
TEST ! getfattr -n trusted.abc $M0/a
24
TEST ! getfattr -n trusted.abc $M0/.gfid/$a_gfid_str
25
TEST chmod 0777 $M0/a
26
EXPECT "777" stat -c "%a" $M0/a
27
EXPECT "777" stat -c "%a" $M0/.gfid/$a_gfid_str
28

29
TEST setfattr -n trusted.abc -v def $M0/.gfid/$a_gfid_str
30
EXPECT "def" echo $(getfattr -n trusted.abc --only-values $M0/a)
31
EXPECT "def" echo $(getfattr -n trusted.abc --only-values $M0/.gfid/$a_gfid_str)
32
TEST setfattr -x trusted.abc $M0/.gfid/$a_gfid_str
33
TEST ! getfattr -n trusted.abc $M0/a
34
TEST ! getfattr -n trusted.abc $M0/.gfid/$a_gfid_str
35
TEST chmod 0777 $M0/.gfid/$a_gfid_str
36
EXPECT "777" stat -c "%a" $M0/a
37
EXPECT "777" stat -c "%a" $M0/.gfid/$a_gfid_str
38

39
#Entry operations on directory
40
#Test that virtual directories are not allowed to be deleted.
41
TEST ! mkdir $M0/.gfid
42
TEST ! rmdir $M0/.gfid
43
TEST ! touch $M0/.gfid
44
TEST ! rm -f $M0/.gfid
45
TEST ! mv $M0/.gfid $M0/dont-rename
46
TEST ! ln -s $M0/symlink $M0/.gfid
47
TEST ! ln $M0/.gfid $M0/hlink
48
TEST ! mknod $M0/.gfid b 0 0
49

50
#Test that first level directory/file creations inside .gfid are not allowed.
51
tmpfile=$(mktemp)
52
TEST ! mkdir $M0/.gfid/a
53
TEST ! touch $M0/.gfid/a
54
TEST ! mv $tmpfile $M0/.gfid
55
TEST ! mv $M0/a $M0/.gfid
56
TEST ! mknod $M0/.gfid/b b 0 0
57
rm -f $tmpfile
58

59
#Operations on File
60
TEST setfattr -n trusted.abc -v abc $M0/b
61
EXPECT "abc" echo $(getfattr -n trusted.abc --only-values $M0/b)
62
EXPECT "abc" echo $(getfattr -n trusted.abc --only-values $M0/.gfid/$b_gfid_str)
63
TEST setfattr -x trusted.abc $M0/b
64
TEST ! getfattr -n trusted.abc $M0/b
65
TEST ! getfattr -n trusted.abc $M0/.gfid/$b_gfid_str
66
TEST chmod 0777 $M0/b
67
EXPECT "777" stat -c "%a" $M0/b
68
EXPECT "777" stat -c "%a" $M0/.gfid/$b_gfid_str
69

70
TEST setfattr -n trusted.abc -v def $M0/.gfid/$b_gfid_str
71
EXPECT "def" echo $(getfattr -n trusted.abc --only-values $M0/b)
72
EXPECT "def" echo $(getfattr -n trusted.abc --only-values $M0/.gfid/$b_gfid_str)
73
TEST setfattr -x trusted.abc $M0/.gfid/$b_gfid_str
74
TEST ! getfattr -n trusted.abc $M0/b
75
TEST ! getfattr -n trusted.abc $M0/.gfid/$b_gfid_str
76
TEST chmod 0777 $M0/.gfid/$b_gfid_str
77
EXPECT "777" stat -c "%a" $M0/b
78
EXPECT "777" stat -c "%a" $M0/.gfid/$b_gfid_str
79

80
cleanup
81

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.