blob: f11d36df93cb5636379779691d28d6da0e76a29a (
plain)
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
|
# sg_persist
# Before use sg_persist ocft test case you have to prepare to make pacemaker
# can be started successfully because sg_persist RA needs to use the result of
# `crm_node -i` as sg_persist register key.
CONFIG
Agent sg_persist
AgentRoot /usr/lib/ocf/resource.d/heartbeat
InstallPackage sg3_utils
HangTimeout 20
VARIABLE
# Please set the disk you want to test
#OCFT_DEVS="/dev/disk/by-id/scsi-14945540000000000844965720e6e555176b19461345d68d5"
OCFT_DEVS=
# please set the IP addrees of the other server.
IP_2=
SETUP-AGENT
# start pacemaker to get node_id through crm_node -i
systemctl start pacemaker
CLEANUP-AGENT
CASE-BLOCK required_args
Env HA_SBIN_DIR=""
Env OCF_RESKEY_devs="$OCFT_DEVS"
Env OCF_RESKEY_reservation_type=1
Env OCF_RESKEY_CRM_meta_notify=true
Env OCF_RESKEY_CRM_meta_master_max=1
CASE-BLOCK required_args_error
Env HA_SBIN_DIR=""
Env OCF_RESKEY_devs="$OCFT_DEVS"
Env OCF_RESKEY_reservation_type=1
Env OCF_RESKEY_CRM_meta_notify=true
Env OCF_RESKEY_CRM_meta_master_max=2
CASE-BLOCK required_args_type_5
Env HA_SBIN_DIR=""
Env OCF_RESKEY_devs="$OCFT_DEVS"
Env OCF_RESKEY_reservation_type=5
Env OCF_RESKEY_CRM_meta_notify=true
Env OCF_RESKEY_CRM_meta_master_max=1
CASE-BLOCK required_args_type_7
Env HA_SBIN_DIR=""
Env OCF_RESKEY_devs="$OCFT_DEVS"
Env OCF_RESKEY_reservation_type=7
Env OCF_RESKEY_CRM_meta_notify=true
Env OCF_RESKEY_CRM_meta_master_max=2
CASE-BLOCK default_status
AgentRun stop
CASE-BLOCK prepare
Include required_args
Include default_status
CASE-BLOCK prepare_type_5
Include required_args_type_5
Include default_status
CASE-BLOCK prepare_type_7
Include required_args_type_7
Include default_status
CASE "check base env"
Include prepare
AgentRun start OCF_SUCCESS
CASE "check base env: unset 'OCF_RESKEY_sg_persist_devs'"
Include prepare
Unenv OCF_RESKEY_devs
AgentRun start OCF_ERR_INSTALLED
CASE "validate all"
Include required_args
AgentRun validate-all OCF_SUCCESS
CASE "validate all--type:5"
Include required_args_type_5
AgentRun validate-all OCF_SUCCESS
CASE "validate all--type:7"
Include required_args_type_7
AgentRun validate-all OCF_SUCCESS
CASE "validate all--error configured"
Include required_args_error
AgentRun validate-all OCF_ERR_CONFIGURED
CASE "normal start"
Include prepare
AgentRun start OCF_SUCCESS
CASE "normal stop"
Include prepare
AgentRun start
AgentRun stop OCF_SUCCESS
CASE "double start"
Include prepare
AgentRun start
AgentRun start OCF_SUCCESS
CASE "double stop"
Include prepare
AgentRun stop
AgentRun stop OCF_SUCCESS
CASE "monitor when running"
Include prepare
AgentRun start
AgentRun monitor OCF_SUCCESS
CASE "monitor when not running"
Include prepare
AgentRun stop
AgentRun monitor OCF_NOT_RUNNING
CASE "Primary/Secondary monitor"
Include prepare
AgentRun start
AgentRun promote
AgentRun monitor OCF_RUNNING_MASTER
AgentRun demote
AgentRun monitor OCF_SUCCESS
AgentRun stop
CASE "promote/demote test in single-primary mode"
Include prepare
Include@$IP_2 prepare
# start
AgentRun start
AgentRun@$IP_2 start
# promote local first
AgentRun promote OCF_SUCCESS
# demote local prepare for remote promote
AgentRun demote
# remote promote
AgentRun@$IP_2 promote OCF_SUCCESS
AgentRun@$IP_2 monitor OCF_RUNNING_MASTER
AgentRun monitor OCF_SUCCESS
# promote local then promote(by preempt) remote, which will cause local OCF_NOT_RUNNING
AgentRun promote OCF_SUCCESS
AgentRun monitor OCF_RUNNING_MASTER
AgentRun@$IP_2 monitor OCF_NOT_RUNNING
# remove all reservation registration
AgentRun demote
AgentRun stop
AgentRun@$IP_2 stop
CASE "normal start--type 5"
Include prepare_type_5
Include@$IP_2 prepare_type_5
AgentRun start OCF_SUCCESS
AgentRun@$IP_2 start OCF_SUCCESS
CASE "promote/demote test in single-primary mode"
Include prepare_type_5
Include@$IP_2 prepare_type_5
# start
AgentRun start
AgentRun@$IP_2 start
# promote local first
AgentRun promote OCF_SUCCESS
AgentRun monitor OCF_RUNNING_MASTER
# demote local prepare for remote promote
AgentRun demote
# remote promote
AgentRun@$IP_2 promote OCF_SUCCESS
AgentRun@$IP_2 monitor OCF_RUNNING_MASTER
AgentRun monitor OCF_SUCCESS
# promote local then promote(by preempt) remote, which will cause local OCF_NOT_RUNNING
AgentRun promote OCF_SUCCESS
AgentRun monitor OCF_RUNNING_MASTER
AgentRun@$IP_2 monitor OCF_NOT_RUNNING
# remove all reservation registration
AgentRun demote
AgentRun stop
AgentRun@$IP_2 stop
CASE "normal start--type 7: 2 masters"
Include prepare_type_7
Include@$IP_2 prepare_type_7
AgentRun start OCF_SUCCESS
AgentRun@$IP_2 start OCF_SUCCESS
CASE "Primary/Primary monitor--type 7"
Include prepare_type_7
Include@$IP_2 prepare_type_7
AgentRun start OCF_SUCCESS
AgentRun@$IP_2 start OCF_SUCCESS
AgentRun promote OCF_SUCCESS
AgentRun monitor OCF_RUNNING_MASTER
AgentRun@$IP_2 promote OCF_SUCCESS
AgentRun monitor OCF_RUNNING_MASTER
AgentRun@$IP_2 monitor OCF_RUNNING_MASTER
AgentRun demote OCF_SUCCESS
AgentRun monitor OCF_NOT_RUNNING
AgentRun@$IP_2 demote OCF_SUCCESS
AgentRun@$IP_2 monitor OCF_NOT_RUNNING
AgentRun stop
AgentRun@$IP_2 stop
|