blob: 3c5d5244a73f99a9d7ebb0ba07e65d1549dfbd86 (
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
|
# iscsi
CONFIG
Agent iscsi
AgentRoot /usr/lib/ocf/resource.d/heartbeat
InstallPackage open-iscsi targetcli
HangTimeout 20
VARIABLE
OCFT_rundir="`get_rundir`"
OCFT_disk="$OCFT_rundir/resource-agents/ocft-iscsi"
OCFT_target="iqn.2003-01.org.linux-iscsi:ocft"
OCFT_portal="127.0.0.1:3260"
OCFT_loop="`loopbackeddev make $OCFT_disk 16M`"
OCF_RESKEY_iqn=$OCFT_target
OCF_RESKEY_portals=$OCFT_portal
OCF_RESKEY_target_iqn=$OCFT_target
OCF_RESKEY_path=$OCFT_loop
OCF_RESKEY_lun=1
SETUP-AGENT
if systemctl list-unit-files 2>/dev/null | fgrep -q iscsid.service; then
systemctl start iscsid.service
else
/etc/init.d/open-iscsi start
fi
if systemctl list-unit-files 2>/dev/null | fgrep -q target.service; then
systemctl start target.service
else
/etc/init.d/target start
fi
export OCF_RESKEY_iqn=$OCFT_target
export OCF_RESKEY_portals=$OCFT_portal
export OCF_RESKEY_target_iqn=$OCFT_target
export OCF_RESKEY_path=$OCFT_loop
export OCF_RESKEY_lun=1
/usr/lib/ocf/resource.d/heartbeat/iSCSITarget start
/usr/lib/ocf/resource.d/heartbeat/iSCSILogicalUnit start
CLEANUP-AGENT
export OCF_RESKEY_iqn=$OCFT_target
export OCF_RESKEY_portals=$OCFT_portal
export OCF_RESKEY_target_iqn=$OCFT_target
export OCF_RESKEY_path=$OCFT_loop
export OCF_RESKEY_lun=1
/usr/lib/ocf/resource.d/heartbeat/iSCSILogicalUnit stop
/usr/lib/ocf/resource.d/heartbeat/iSCSITarget stop
if systemctl list-unit-files 2>/dev/null | fgrep -q target.service; then
systemctl stop target.service
fi
loopbackeddev unmake $OCFT_disk
CASE-BLOCK required_args
Env OCF_RESKEY_portal=$OCFT_portal
Env OCF_RESKEY_target=$OCFT_target
CASE-BLOCK default_status
AgentRun stop
CASE-BLOCK prepare
Include required_args
Include default_status
CASE "check base env"
Include prepare
AgentRun start OCF_SUCCESS
CASE "check base env: invalid 'OCF_RESKEY_portal'"
Include prepare
Unenv OCF_RESKEY_portal
AgentRun start OCF_ERR_CONFIGURED
CASE "check base env: unset 'OCF_RESKEY_target'"
Include prepare
Unenv OCF_RESKEY_target
AgentRun start 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 OCF_SUCCESS
CASE "monitor when running"
Include prepare
AgentRun start
AgentRun monitor OCF_SUCCESS
CASE "monitor when not running"
Include prepare
AgentRun monitor OCF_NOT_RUNNING
CASE "unimplemented command"
Include prepare
AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|