File: glusterd-coverage.t

package info (click to toggle)
glusterfs 11.2-2
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 28,244 kB
  • sloc: ansic: 471,238; sh: 45,610; python: 16,893; perl: 3,328; makefile: 2,014; yacc: 487; ruby: 171; lisp: 124; xml: 75; lex: 61
file content (78 lines) | stat: -rw-r--r-- 2,750 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
#!/bin/bash

. $(dirname $0)/../include.rc
. $(dirname $0)/../volume.rc
. $(dirname $0)/../cluster.rc

cleanup;

# Start glusterd on 2 nodes
TEST launch_cluster 2

# Create a volume
TEST $CLI_1 volume create ${V0}_1 $H1:$B1/${V0}_1_{1,2,3};
TEST $CLI_1 volume start ${V0}_1

# Negative scenarios for ganesha.enable option
TEST ! $CLI_1 volume set ${V0}_1 ganesha.enable invalid-value
TEST ! $CLI_1 volume set ${V0}_1 ganesha.enable enable

# Coverage for bitrot feature
TEST ! $CLI_1 volume bitrot ${V0}_1 disable
TEST $CLI_1 volume stop ${V0}_1
TEST ! $CLI_1 volume bitrot ${V0}_1 enable

TEST $CLI_1 volume start ${V0}_1
TEST $CLI_1 volume bitrot ${V0}_1 enable
TEST $CLI_1 volume bitrot ${V0}_1 disable

# Neagtive scenario for gfproxy, fsm log
TEST ! $CLI_1 volume set ${V0}_1 config.gfproxyd invalid-value
TEST ! $CLI_1 system:: fsm log localhost

# Create 2 volumes for vol list code coverage
TEST $CLI_1 volume create ${V0}_2 $H1:$B1/${V0}_2_{1,2,3};
TEST $CLI_1 volume list

# Check get option for individual volume
TEST ! $CLI_1 volume get ${V0}_3 all
TEST $CLI_1 volume get ${V0}_1 cluster.max-op-version
TEST $CLI_1 volume get ${V0}_1 cluster.op-version
TEST $CLI_1 volume get ${V0}_1 config.memory-accounting
TEST $CLI_1 volume get ${V0}_1 config.transport

# Create a 2 node cluster for peer code coverage
TEST $CLI_1 peer probe $H2

TEST $CLI_1 get-state

pid=$(ps aux | grep 'glusterd.pid' | grep -v 'grep' | awk '{print $2}')
TEST generate_statedump $pid

# Replace-brick negative scenarios
# Invalid syntax
TEST ! $CLI_1 volume replace-brick ${V0}_2 $H1:$B1/${V0}_2_1 ${V0}_2 $H1:$B1/${V0}_2_4 commit force
# On a volume which is not started
TEST ! $CLI_1 volume replace-brick ${V0}_2 $H1:$B1/${V0}_2_1 $H1:$B1/${V0}_2_4 commit force
TEST $CLI_1 volume start ${V0}_2
# On a distribute only volume
TEST ! $CLI_1 volume replace-brick ${V0}_2 $H1:$B1/${V0}_2_1 $H1:$B1/${V0}_2_4 commit force

# Create a replica volume for testing other negative scenarios
TEST $CLI_1 volume create ${V0}_3 replica 3 $H1:$B1/${V0}_3_{1,2,3};
TEST $CLI_1 volume start ${V0}_3

# Invalid source brick path
TEST ! $CLI_1 volume replace-brick ${V0}_3 $H1:$B1/${V0}_3_0 $H1:$B1/${V0}_3_4 commit force
# Source brick path with wrong hostname
TEST ! $CLI_1 volume replace-brick ${V0}_3 $H2:$B1/${V0}_3_1 $H2:$B1/${V0}_3_4 commit force
# Replacing with same brick
TEST ! $CLI_1 volume replace-brick ${V0}_3 $H1:$B1/${V0}_3_1 $H1:$B1/${V0}_3_1 commit force
# Replacing with another existing brick
TEST ! $CLI_1 volume replace-brick ${V0}_3 $H1:$B1/${V0}_3_1 $H1:$B1/${V0}_2_1 commit force

# Reset-brick negative scenario
# Reset-brick with different brick path
TEST ! $CLI_1 volume reset-brick ${V0}_3 $H1:$B1/${V0}_3_2 $H1:$B1/${V0}_3_4 commit force

cleanup;