summaryrefslogtreecommitdiffstats
path: root/test/crm-interface
blob: b825dab4c99be02e26fd2c81276acd166baf9111 (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
# Copyright (C) 2008-2011 Dejan Muhamedagic <dmuhamedagic@suse.de>
# See COPYING for license information.

CIB=__crmsh_regtest

filter_epoch() {
	sed '/^<cib /s/ epoch="[0-9]*"/ epoch="1"/'
}
filter_date() {
	sed '/^<cib /s/cib-last-written=".*"/cib-last-written="Sun Apr 12 21:37:48 2009"/'
}
filter_cib() {
	sed -n '/^<?xml/,/^<\/cib>/p' | filter_date | filter_epoch
}

crm_setup() {
	$CRM_NO_REG options reset
	$CRM_NO_REG options check-frequency on-verify
	$CRM_NO_REG options check-mode relaxed
	$CRM_NO_REG cib delete $CIB >/dev/null 2>&1
}

crm_mksample() {
	$CRM_NO_REG cib new $CIB empty >/dev/null 2>&1
	$CRM_NO_REG -c $CIB<<EOF
configure
node node1
primitive p0 ocf:pacemaker:Dummy
primitive p1 ocf:pacemaker:Dummy
primitive p2 ocf:heartbeat:Delay \
	params startdelay=2 mondelay=2 stopdelay=2
primitive p3 ocf:pacemaker:Dummy
primitive st stonith:null params hostlist=node1
clone c1 p1
clone m1 p2 meta promotable=true
op_defaults timeout=60s
commit
up
EOF
}
crm_show() {
	$CRM -c $CIB<<EOF
configure
_regtest on
erase
erase nodes
`cat`
show
commit
EOF
}
crm_showxml() {
	$CRM -c $CIB<<EOF | filter_cib
configure
_regtest on
erase
erase nodes
`cat`
show xml
commit
EOF
}
crm_session() {
	$CRM -c $CIB <<EOF
`cat`
EOF
}
crm_filesession() {
	local _file=`mktemp`
        $CRM_NO_REG -c $CIB<<EOF
configure
delete node1
EOF
	$CRM -c $CIB configure save xml $_file
	CIB_file=$_file $CRM <<EOF
`cat`
EOF
	rm -f $_file
}
crm_single() {
	$CRM -c $CIB $*
}
crm_showobj() {
	$CRM -c $CIB<<EOF | filter_date | filter_epoch
configure
_regtest on
show xml $1
EOF
}