You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
7216 lines
180 KiB
7216 lines
180 KiB
7 years ago
|
From 01587177c39423763f0ad7bbcc55adf22685d706 Mon Sep 17 00:00:00 2001
|
||
|
From: David Vossel <dvossel@redhat.com>
|
||
|
Date: Wed, 6 Nov 2013 16:39:06 -0600
|
||
|
Subject: [PATCH] fedora ocft
|
||
|
|
||
|
---
|
||
|
configure.ac | 9 +
|
||
|
tools/ocft/Filesystem | 110 --------------
|
||
|
tools/ocft/IPaddr2 | 127 ----------------
|
||
|
tools/ocft/IPaddr2v4 | 323 ----------------------------------------
|
||
|
tools/ocft/IPaddr2v6 | 250 -------------------------------
|
||
|
tools/ocft/IPsrcaddr | 63 --------
|
||
|
tools/ocft/IPv6addr | 150 -------------------
|
||
|
tools/ocft/LVM | 86 -----------
|
||
|
tools/ocft/MailTo | 57 -------
|
||
|
tools/ocft/Makefile.am | 67 ++++++---
|
||
|
tools/ocft/Raid1 | 146 ------------------
|
||
|
tools/ocft/SendArp | 74 ---------
|
||
|
tools/ocft/Xinetd | 56 -------
|
||
|
tools/ocft/apache | 63 --------
|
||
|
tools/ocft/db2 | 164 --------------------
|
||
|
tools/ocft/default/Filesystem | 110 ++++++++++++++
|
||
|
tools/ocft/default/IPaddr2 | 137 +++++++++++++++++
|
||
|
tools/ocft/default/IPaddr2v4 | 323 ++++++++++++++++++++++++++++++++++++++++
|
||
|
tools/ocft/default/IPaddr2v6 | 250 +++++++++++++++++++++++++++++++
|
||
|
tools/ocft/default/IPsrcaddr | 63 ++++++++
|
||
|
tools/ocft/default/IPv6addr | 150 +++++++++++++++++++
|
||
|
tools/ocft/default/LVM | 86 +++++++++++
|
||
|
tools/ocft/default/MailTo | 57 +++++++
|
||
|
tools/ocft/default/Raid1 | 146 ++++++++++++++++++
|
||
|
tools/ocft/default/SendArp | 74 +++++++++
|
||
|
tools/ocft/default/Xinetd | 56 +++++++
|
||
|
tools/ocft/default/apache | 63 ++++++++
|
||
|
tools/ocft/default/db2 | 164 ++++++++++++++++++++
|
||
|
tools/ocft/default/drbd.linbit | 183 +++++++++++++++++++++++
|
||
|
tools/ocft/default/exportfs | 74 +++++++++
|
||
|
tools/ocft/default/iscsi | 82 ++++++++++
|
||
|
tools/ocft/default/jboss | 83 ++++++++++
|
||
|
tools/ocft/default/mysql | 77 ++++++++++
|
||
|
tools/ocft/default/mysql-proxy | 83 ++++++++++
|
||
|
tools/ocft/default/named | 69 +++++++++
|
||
|
tools/ocft/default/nfsserver | 75 +++++++++
|
||
|
tools/ocft/default/oracle | 81 ++++++++++
|
||
|
tools/ocft/default/pgsql | 71 +++++++++
|
||
|
tools/ocft/default/portblock | 69 +++++++++
|
||
|
tools/ocft/default/postfix | 102 +++++++++++++
|
||
|
tools/ocft/default/tomcat | 73 +++++++++
|
||
|
tools/ocft/drbd.linbit | 183 -----------------------
|
||
|
tools/ocft/fedora/Filesystem | 110 ++++++++++++++
|
||
|
tools/ocft/fedora/IPaddr2v4 | 323 ++++++++++++++++++++++++++++++++++++++++
|
||
|
tools/ocft/fedora/IPaddr2v6 | 250 +++++++++++++++++++++++++++++++
|
||
|
tools/ocft/fedora/IPsrcaddr | 61 ++++++++
|
||
|
tools/ocft/fedora/SendArp | 73 +++++++++
|
||
|
tools/ocft/fedora/Xinetd | 62 ++++++++
|
||
|
tools/ocft/fedora/apache | 81 ++++++++++
|
||
|
tools/ocft/fedora/mysql | 76 ++++++++++
|
||
|
tools/ocft/fedora/nfsserver | 74 +++++++++
|
||
|
tools/ocft/fedora/pgsql | 72 +++++++++
|
||
|
tools/ocft/fedora/tomcat | 72 +++++++++
|
||
|
tools/ocft/iscsi | 82 ----------
|
||
|
tools/ocft/mysql | 77 ----------
|
||
|
tools/ocft/mysql-proxy | 83 ----------
|
||
|
tools/ocft/named | 69 ---------
|
||
|
tools/ocft/nfsserver | 75 ---------
|
||
|
tools/ocft/oracle | 81 ----------
|
||
|
tools/ocft/pgsql | 71 ---------
|
||
|
tools/ocft/portblock | 69 ---------
|
||
|
tools/ocft/postfix | 102 -------------
|
||
|
62 files changed, 4108 insertions(+), 2584 deletions(-)
|
||
|
delete mode 100644 tools/ocft/Filesystem
|
||
|
delete mode 100644 tools/ocft/IPaddr2
|
||
|
delete mode 100644 tools/ocft/IPaddr2v4
|
||
|
delete mode 100644 tools/ocft/IPaddr2v6
|
||
|
delete mode 100644 tools/ocft/IPsrcaddr
|
||
|
delete mode 100644 tools/ocft/IPv6addr
|
||
|
delete mode 100644 tools/ocft/LVM
|
||
|
delete mode 100644 tools/ocft/MailTo
|
||
|
delete mode 100644 tools/ocft/Raid1
|
||
|
delete mode 100644 tools/ocft/SendArp
|
||
|
delete mode 100644 tools/ocft/Xinetd
|
||
|
delete mode 100644 tools/ocft/apache
|
||
|
delete mode 100644 tools/ocft/db2
|
||
|
create mode 100644 tools/ocft/default/Filesystem
|
||
|
create mode 100644 tools/ocft/default/IPaddr2
|
||
|
create mode 100644 tools/ocft/default/IPaddr2v4
|
||
|
create mode 100644 tools/ocft/default/IPaddr2v6
|
||
|
create mode 100644 tools/ocft/default/IPsrcaddr
|
||
|
create mode 100644 tools/ocft/default/IPv6addr
|
||
|
create mode 100644 tools/ocft/default/LVM
|
||
|
create mode 100644 tools/ocft/default/MailTo
|
||
|
create mode 100644 tools/ocft/default/Raid1
|
||
|
create mode 100644 tools/ocft/default/SendArp
|
||
|
create mode 100644 tools/ocft/default/Xinetd
|
||
|
create mode 100644 tools/ocft/default/apache
|
||
|
create mode 100644 tools/ocft/default/db2
|
||
|
create mode 100644 tools/ocft/default/drbd.linbit
|
||
|
create mode 100644 tools/ocft/default/exportfs
|
||
|
create mode 100644 tools/ocft/default/iscsi
|
||
|
create mode 100644 tools/ocft/default/jboss
|
||
|
create mode 100644 tools/ocft/default/mysql
|
||
|
create mode 100644 tools/ocft/default/mysql-proxy
|
||
|
create mode 100644 tools/ocft/default/named
|
||
|
create mode 100644 tools/ocft/default/nfsserver
|
||
|
create mode 100644 tools/ocft/default/oracle
|
||
|
create mode 100644 tools/ocft/default/pgsql
|
||
|
create mode 100644 tools/ocft/default/portblock
|
||
|
create mode 100644 tools/ocft/default/postfix
|
||
|
create mode 100644 tools/ocft/default/tomcat
|
||
|
delete mode 100644 tools/ocft/drbd.linbit
|
||
|
create mode 100644 tools/ocft/fedora/Filesystem
|
||
|
create mode 100644 tools/ocft/fedora/IPaddr2v4
|
||
|
create mode 100644 tools/ocft/fedora/IPaddr2v6
|
||
|
create mode 100644 tools/ocft/fedora/IPsrcaddr
|
||
|
create mode 100644 tools/ocft/fedora/SendArp
|
||
|
create mode 100644 tools/ocft/fedora/Xinetd
|
||
|
create mode 100644 tools/ocft/fedora/apache
|
||
|
create mode 100644 tools/ocft/fedora/mysql
|
||
|
create mode 100644 tools/ocft/fedora/nfsserver
|
||
|
create mode 100644 tools/ocft/fedora/pgsql
|
||
|
create mode 100644 tools/ocft/fedora/tomcat
|
||
|
delete mode 100644 tools/ocft/iscsi
|
||
|
delete mode 100644 tools/ocft/mysql
|
||
|
delete mode 100644 tools/ocft/mysql-proxy
|
||
|
delete mode 100644 tools/ocft/named
|
||
|
delete mode 100644 tools/ocft/nfsserver
|
||
|
delete mode 100644 tools/ocft/oracle
|
||
|
delete mode 100644 tools/ocft/pgsql
|
||
|
delete mode 100644 tools/ocft/portblock
|
||
|
delete mode 100644 tools/ocft/postfix
|
||
|
|
||
|
diff --git a/configure.ac b/configure.ac
|
||
|
index d2d58cf..15344e0 100644
|
||
|
--- a/configure.ac
|
||
|
+++ b/configure.ac
|
||
|
@@ -28,6 +28,7 @@ AC_USE_SYSTEM_EXTENSIONS
|
||
|
CRM_DTD_VERSION="1.0"
|
||
|
|
||
|
PKG_FEATURES=""
|
||
|
+OCFT_TEST_CASES="default"
|
||
|
|
||
|
AC_CONFIG_AUX_DIR(.)
|
||
|
AC_CANONICAL_HOST
|
||
|
@@ -56,6 +57,14 @@ AC_ARG_WITH(pkg-name,
|
||
|
[ --with-pkg-name=name Override package name (if you're a packager needing to pretend) ],
|
||
|
[ PACKAGE_NAME="$withval" ])
|
||
|
|
||
|
+
|
||
|
+AC_ARG_WITH(ocft-cases,
|
||
|
+ [ --with-ocft-cases=cases Set which ocft test cases to install. ],
|
||
|
+ [ OCFT_TEST_CASES="$withval" ])
|
||
|
+
|
||
|
+AM_CONDITIONAL(OCFT_FEDORA_CASES, test "x$OCFT_TEST_CASES" = "xfedora" )
|
||
|
+AM_CONDITIONAL(OCFT_DEFAULT_CASES, test "x$OCFT_TEST_CASES" = "xdefault" )
|
||
|
+
|
||
|
dnl
|
||
|
dnl AM_INIT_AUTOMAKE([1.11.1 foreign dist-bzip2 dist-xz])
|
||
|
dnl
|
||
|
diff --git a/tools/ocft/Filesystem b/tools/ocft/Filesystem
|
||
|
deleted file mode 100644
|
||
|
index 75203d7..0000000
|
||
|
--- a/tools/ocft/Filesystem
|
||
|
+++ /dev/null
|
||
|
@@ -1,110 +0,0 @@
|
||
|
-# Filesystem
|
||
|
-# by dejan@suse.de on
|
||
|
-# Tue Feb 15 18:50:04 CET 2011
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent Filesystem
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_fs=/var/run/resource-agents/ocft-Filesystem-fs
|
||
|
- OCFT_loop=/dev/loop7
|
||
|
- OCFT_dir=/var/run/resource-agents/ocft-Filesystem-mnt
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- losetup $OCFT_loop 2>/dev/null && exit 1
|
||
|
- rmdir $OCFT_dir 2>/dev/null || true
|
||
|
- mkdir $OCFT_dir
|
||
|
- dd if=/dev/zero of=$OCFT_fs bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- mke2fs -j -Fq -m 0 $OCFT_fs
|
||
|
- losetup $OCFT_loop $OCFT_fs
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- rmdir $OCFT_dir
|
||
|
- rm $OCFT_fs
|
||
|
- losetup -d $OCFT_loop
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_device=$OCFT_loop
|
||
|
- Env OCF_RESKEY_fstype=ext3
|
||
|
- Env OCF_RESKEY_directory=$OCFT_dir
|
||
|
-
|
||
|
-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_device'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_device=/dev/no_such_device
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_device'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_device
|
||
|
- 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 "monitor depth 10 when running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- Env OCF_CHECK_LEVEL=10
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor depth 20 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- Env OCF_CHECK_LEVEL=20
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "start insert failure (remove device)"
|
||
|
- Include prepare
|
||
|
- Bash losetup -d $OCFT_loop
|
||
|
- BashAtExit losetup $OCFT_loop $OCFT_fs
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-CASE "monitor depth 20 insert failure (r/o fs)"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- Bash mount -o remount,ro $OCFT_dir
|
||
|
- BashAtExit mount -o remount,rw $OCFT_dir
|
||
|
- Env OCF_CHECK_LEVEL=20
|
||
|
- AgentRun monitor OCF_ERR_GENERIC
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
diff --git a/tools/ocft/IPaddr2 b/tools/ocft/IPaddr2
|
||
|
deleted file mode 100644
|
||
|
index bfa8283..0000000
|
||
|
--- a/tools/ocft/IPaddr2
|
||
|
+++ /dev/null
|
||
|
@@ -1,127 +0,0 @@
|
||
|
-# IPaddr2
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent IPaddr2
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- ip addr add 192.168.144.1/24 dev eth0 brd 192.168.144.255
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- ip addr del 192.168.144.1/24 dev eth0
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ip=192.168.144.2
|
||
|
-
|
||
|
-CASE-BLOCK check_iflabel_assigned
|
||
|
- Bash ip -4 -o addr show eth0 | grep -w 192.168.144.2/24 | grep -w eth0:iflabel >/dev/null # checking iflabel was assigned correctly
|
||
|
-
|
||
|
-CASE-BLOCK check_iflabel_removed
|
||
|
- Bash ! ip -4 -o addr show eth0 | grep -w 192.168.144.2/24 | grep -w eth0:iflabel >/dev/null # checking iflabel was removed correctly
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_ip'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_ip
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_ip'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=not_ip_address
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set 'OCF_RESKEY_cidr_netmask'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=24
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_cidr_netmask'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=not_netmask
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set 'OCF_RESKEY_broadcast'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_broadcast=192.168.144.255
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_broadcast'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_broadcast=not_broadcast
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set 'OCF_RESKEY_nic'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=eth0
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_nic'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=not_nic
|
||
|
- 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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-CASE "Attachment to loopback interface"
|
||
|
- Env OCF_RESKEY_ip=127.0.0.3
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check additional env: set 'OCF_RESKEY_iflabel'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=eth0
|
||
|
- Env OCF_RESKEY_iflabel=iflabel
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_iflabel_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_iflabel_removed
|
||
|
-
|
||
|
-# This is deprecated but still supported for the compatibility.
|
||
|
-CASE "check additional env: specify iflabel in 'OCF_RESKEY_nic'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=eth0:iflabel
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_iflabel_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_iflabel_removed
|
||
|
diff --git a/tools/ocft/IPaddr2v4 b/tools/ocft/IPaddr2v4
|
||
|
deleted file mode 100644
|
||
|
index 4d37168..0000000
|
||
|
--- a/tools/ocft/IPaddr2v4
|
||
|
+++ /dev/null
|
||
|
@@ -1,323 +0,0 @@
|
||
|
-# IPaddr2v4
|
||
|
-
|
||
|
-# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
-# a IPv4 address prefix (192.168.144.0/24).
|
||
|
-# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent IPaddr2
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_target_ip=192.168.144.2
|
||
|
- OCFT_target_nic=eth0
|
||
|
- OCFT_target_prefix=24
|
||
|
- OCFT_target_netaddr=192.168.144.1/$OCFT_target_prefix
|
||
|
- OCFT_target_brd=192.168.144.255
|
||
|
- OCFT_wrong_ip=192.168.120.1
|
||
|
- OCFT_force_nic=eth1
|
||
|
- OCFT_force_prefix=16
|
||
|
- OCFT_force_prefix2=28
|
||
|
- OCFT_force_brd=192.168.255.255
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
- Env OCFT_check_ip=$OCFT_target_ip
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_assigned
|
||
|
- Bash ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was assigned correctly
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_removed
|
||
|
- Bash ! ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was removed correctly
|
||
|
-
|
||
|
-CASE-BLOCK base_ip_assigned
|
||
|
- Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
-
|
||
|
-CASE-BLOCK base_ip_removed
|
||
|
- Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include required_args
|
||
|
- Include default_status
|
||
|
-
|
||
|
-# CASE No.0
|
||
|
-#
|
||
|
-CASE "normal start"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
-
|
||
|
-# CASE No.1
|
||
|
-#
|
||
|
-CASE "normal stop"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.2
|
||
|
-#
|
||
|
-CASE "double start"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.3
|
||
|
-#
|
||
|
-CASE "double stop"
|
||
|
- Include prepare
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.4
|
||
|
-#
|
||
|
-CASE "monitor with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.5
|
||
|
-#
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-# CASE No.6
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 succeeds if the ip matched based on the netmask of the subnet
|
||
|
-# or fails if it did not match to any.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
-#
|
||
|
-CASE "params with nic, no cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.7
|
||
|
-#
|
||
|
-CASE "params with nic, cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.8
|
||
|
-#
|
||
|
-CASE "error params with wrong ip"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-# CASE No.9
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
-# When it could not get base ip, it becomes the error.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
-#
|
||
|
-CASE "params with force nic"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
- Unenv OCF_RESKEY_nic
|
||
|
-
|
||
|
-# CASE No.10
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 fails when it could not determine the broadcast.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
-#
|
||
|
-CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.11
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 succeeds but the broadcast is not set.
|
||
|
-# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
- Unenv OCF_RESKEY_cidr_netmask
|
||
|
-
|
||
|
-
|
||
|
-# CASE No.12
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
-# When it could not get base ip, it becomes the error.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
-#
|
||
|
-CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.13
|
||
|
-#
|
||
|
-CASE "params with cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.14
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 does not override the broadcast by cidr_netmask.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 overrode the broadcast calculated by cidr_netmask.
|
||
|
-#
|
||
|
-CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.15
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 fails when it could not determine the broadcast.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
-#
|
||
|
-CASE "error params with wrong ip and cidr_netmask (not exist base_ip)"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.16
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 succeeds but the broadcast is not set.
|
||
|
-# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.17
|
||
|
-# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
-# IPaddr2 succeeds but the broadcast is not set.
|
||
|
-# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
-# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
-# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask (not exist base_ip)"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Unenv OCF_RESKEY_nic
|
||
|
- Unenv OCF_RESKEY_cidr_netmask
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.18
|
||
|
-#
|
||
|
-CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.19
|
||
|
-#
|
||
|
-CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.20
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
- Unenv OCF_RESKEY_cidr_netmask
|
||
|
-
|
||
|
-# CASE No.21
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCF_RESKEY_broadcast=$OCFT_target_brd
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
diff --git a/tools/ocft/IPaddr2v6 b/tools/ocft/IPaddr2v6
|
||
|
deleted file mode 100644
|
||
|
index d24d890..0000000
|
||
|
--- a/tools/ocft/IPaddr2v6
|
||
|
+++ /dev/null
|
||
|
@@ -1,250 +0,0 @@
|
||
|
-# IPaddr2v6
|
||
|
-
|
||
|
-# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
-# a IPv6 address prefix (2001:db8::/32, RFC3849).
|
||
|
-# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent IPaddr2
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_target_ip=2001:db8:1234::2
|
||
|
- OCFT_target_nic=eth0
|
||
|
- OCFT_target_prefix=64
|
||
|
- OCFT_target_netaddr=2001:db8:1234::1/$OCFT_target_prefix
|
||
|
- OCFT_target_linklocal=fe80::2
|
||
|
- OCFT_wrong_ip=2001:db8:5678::2
|
||
|
- OCFT_force_nic=eth1
|
||
|
- OCFT_force_prefix=80
|
||
|
- OCFT_force_prefix2=48
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
- Env OCFT_check_ip=$OCFT_target_ip
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_assigned
|
||
|
- Bash ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was assigned correctly
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_removed
|
||
|
- Bash ! ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was removed correctly
|
||
|
-
|
||
|
-CASE-BLOCK base_ip_assigned
|
||
|
- Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK base_ip_removed
|
||
|
- Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include required_args
|
||
|
- Include default_status
|
||
|
-
|
||
|
-# CASE No.0
|
||
|
-#
|
||
|
-CASE "normal start"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
-
|
||
|
-# CASE No.1
|
||
|
-#
|
||
|
-CASE "normal stop"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.2
|
||
|
-#
|
||
|
-CASE "double start"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.3
|
||
|
-#
|
||
|
-CASE "double stop"
|
||
|
- Include prepare
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.4
|
||
|
-#
|
||
|
-CASE "monitor with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-# CASE No.5
|
||
|
-#
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-# CASE No.6
|
||
|
-#
|
||
|
-CASE "error params with wrong ip"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-# CASE No.7
|
||
|
-#
|
||
|
-CASE "error params with no nic for a link-local IPv6 address"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
- Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
- # nic is mandatory for a link-local address
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-# CASE No.8
|
||
|
-#
|
||
|
-CASE "params with nic, no cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.9
|
||
|
-#
|
||
|
-CASE "normal usage for a link-local IPv6 address, params with nic"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
- Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
- # nic is mandatory for a link-local address
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.10
|
||
|
-#
|
||
|
-CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.11
|
||
|
-#
|
||
|
-CASE "params with force nic"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
- Unenv OCF_RESKEY_nic
|
||
|
-
|
||
|
-# CASE No.12
|
||
|
-#
|
||
|
-CASE "params with force cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.13
|
||
|
-#
|
||
|
-CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.14
|
||
|
-#
|
||
|
-CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.15
|
||
|
-#
|
||
|
-CASE "params with cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
-# CASE No.16
|
||
|
-#
|
||
|
-CASE "params with nic, cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.17
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask (base netmask < assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.18
|
||
|
-# This use case is now valid. It was not allowed until v3.9.2.
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-# CASE No.19
|
||
|
-#
|
||
|
-CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
- Include prepare
|
||
|
- Include base_ip_removed
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
- Include base_ip_assigned
|
||
|
-
|
||
|
diff --git a/tools/ocft/IPsrcaddr b/tools/ocft/IPsrcaddr
|
||
|
deleted file mode 100644
|
||
|
index d95142e..0000000
|
||
|
--- a/tools/ocft/IPsrcaddr
|
||
|
+++ /dev/null
|
||
|
@@ -1,63 +0,0 @@
|
||
|
-# IPsrcaddr
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent IPsrcaddr
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage iproute2
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ipaddress= # put here your IP
|
||
|
- Env OCF_RESKEY_cidr_netmask= # and the netmask
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_ipaddress'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_ipaddress
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_ipaddress'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ipaddress=not_ip_address
|
||
|
- 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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/IPv6addr b/tools/ocft/IPv6addr
|
||
|
deleted file mode 100644
|
||
|
index 36a9642..0000000
|
||
|
--- a/tools/ocft/IPv6addr
|
||
|
+++ /dev/null
|
||
|
@@ -1,150 +0,0 @@
|
||
|
-# IPv6addr
|
||
|
-
|
||
|
-# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
-# a IPv6 address prefix (2001:db8::/32, RFC3849).
|
||
|
-# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent IPv6addr
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_target_ipv6addr=2001:db8:1234::2
|
||
|
- OCFT_target_nic=eth0
|
||
|
- OCFT_target_prefix=64
|
||
|
- OCFT_target_netaddr=2001:db8:1234::1/$OCFT_target_prefix
|
||
|
- OCFT_target_linklocal=fe80::2
|
||
|
- OCFT_wrong_ipv6addr=2001:db8:5678::2
|
||
|
- OCFT_force_nic=eth1
|
||
|
- OCFT_force_prefix=80
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ipv6addr=$OCFT_target_ipv6addr
|
||
|
- Env OCFT_check_ipv6addr=$OCFT_target_ipv6addr
|
||
|
- Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_target_nic
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_assigned
|
||
|
- Bash ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ipv6addr/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was assigned correctly
|
||
|
-
|
||
|
-CASE-BLOCK check_ip_removed
|
||
|
- Bash ! ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ipv6addr/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was removed correctly
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include required_args
|
||
|
- Include default_status
|
||
|
-
|
||
|
-
|
||
|
-CASE "normal start"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
-
|
||
|
-CASE "normal stop"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-CASE "double start"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "double stop"
|
||
|
- Include prepare
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "params with nic, no cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-CASE "params with nic, cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-CASE "normal usage for a link-local IPv6 address"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ipv6addr=$OCFT_target_linklocal
|
||
|
- Env OCFT_check_ipv6addr=$OCFT_target_linklocal
|
||
|
- # nic is mandatory for a link-local address
|
||
|
- Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-CASE "error start for a link-local IPv6 address when no nic"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ipv6addr=$OCFT_target_linklocal
|
||
|
- # nic is mandatory for a link-local address
|
||
|
- Unenv OCF_RESKEY_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
- Include check_ip_removed
|
||
|
-
|
||
|
-CASE "error params with wrong ipv6addr"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ipv6addr=$OCFT_wrong_ipv6addr
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-# Note: this result is different from IPaddr2/findif
|
||
|
-# IPaddr2 succeeds if the ip matched based on the netmask of the subnet
|
||
|
-# or fails if it did not match to any.
|
||
|
-# Recommended to always specify both nic and cidr_netmask when you needed.
|
||
|
-CASE "error params with wrong cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-# Note: this result is different from IPaddr2/findif
|
||
|
-# IPaddr2 succeeds but it uses /32 as a guessed cidr_netmask which
|
||
|
-# does not seem to be expected.
|
||
|
-# Recommended to always specify both nic and cidr_netmask when you needed.
|
||
|
-CASE "error params with wrong nic"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-# Note: This use case is now valid. It was not allowed until v3.9.2.
|
||
|
-CASE "force to use the specified nic and cidr_netmask"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
- Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
- Env OCFT_check_nic=$OCFT_force_nic
|
||
|
- Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include check_ip_assigned
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include check_ip_removed
|
||
|
diff --git a/tools/ocft/LVM b/tools/ocft/LVM
|
||
|
deleted file mode 100644
|
||
|
index 4bd2b22..0000000
|
||
|
--- a/tools/ocft/LVM
|
||
|
+++ /dev/null
|
||
|
@@ -1,86 +0,0 @@
|
||
|
-# LVM
|
||
|
-# by dejan@suse.de on
|
||
|
-# Wed Feb 16 13:15:01 CET 2011
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent LVM
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_pv=/var/run/resource-agents/ocft-LVM-pv
|
||
|
- OCFT_vg=ocft-vg
|
||
|
- OCFT_lv=ocft-lv
|
||
|
- OCFT_loop=/dev/loop7
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- losetup $OCFT_loop 2>/dev/null && exit 1
|
||
|
- dd if=/dev/zero of=$OCFT_pv bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- losetup $OCFT_loop $OCFT_pv
|
||
|
- pvcreate $OCFT_loop
|
||
|
- vgcreate -s 4K $OCFT_vg $OCFT_loop
|
||
|
- lvcreate -n $OCFT_lv -L 600K $OCFT_vg
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- vgchange -an $OCFT_vg
|
||
|
- lvremove -f /dev/$OCFT_vg/$OCFT_lv
|
||
|
- vgremove -f $OCFT_vg
|
||
|
- pvremove $OCFT_loop
|
||
|
- losetup -d $OCFT_loop
|
||
|
- rm $OCFT_pv
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_volgrpname=$OCFT_vg
|
||
|
-
|
||
|
-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_volgrpname'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_volgrpname=/dev/no_such_device
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_volgrpname'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_volgrpname
|
||
|
- 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
|
||
|
-
|
||
|
diff --git a/tools/ocft/MailTo b/tools/ocft/MailTo
|
||
|
deleted file mode 100644
|
||
|
index 8754035..0000000
|
||
|
--- a/tools/ocft/MailTo
|
||
|
+++ /dev/null
|
||
|
@@ -1,57 +0,0 @@
|
||
|
-# MailTo
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent MailTo
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage mailx
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_email=root@localhost
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_email'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_email
|
||
|
- 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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/Makefile.am b/tools/ocft/Makefile.am
|
||
|
index 733e487..9eab648 100644
|
||
|
--- a/tools/ocft/Makefile.am
|
||
|
+++ b/tools/ocft/Makefile.am
|
||
|
@@ -22,29 +22,50 @@ EXTRA_DIST = $(ocftcfgs_DATA) $(ocft_DATA)
|
||
|
sbin_SCRIPTS = ocft
|
||
|
|
||
|
ocftcfgsdir = $(datadir)/$(PACKAGE_NAME)/ocft/configs
|
||
|
-ocftcfgs_DATA = apache \
|
||
|
- IPaddr2 \
|
||
|
- IPaddr2v4 \
|
||
|
- IPaddr2v6 \
|
||
|
- IPv6addr \
|
||
|
- Filesystem \
|
||
|
- LVM \
|
||
|
- Raid1 \
|
||
|
- IPsrcaddr \
|
||
|
- MailTo \
|
||
|
- mysql \
|
||
|
- mysql-proxy \
|
||
|
- pgsql \
|
||
|
- db2 \
|
||
|
- oracle \
|
||
|
- drbd.linbit \
|
||
|
- nfsserver \
|
||
|
- portblock \
|
||
|
- iscsi \
|
||
|
- named \
|
||
|
- postfix \
|
||
|
- Xinetd \
|
||
|
- SendArp
|
||
|
+
|
||
|
+ocftcfgs_DATA =
|
||
|
+if OCFT_FEDORA_CASES
|
||
|
+ocftcfgs_DATA += fedora/Filesystem \
|
||
|
+ fedora/IPaddr2v4 \
|
||
|
+ fedora/IPaddr2v6 \
|
||
|
+ fedora/IPsrcaddr \
|
||
|
+ fedora/SendArp \
|
||
|
+ fedora/Xinetd \
|
||
|
+ fedora/apache \
|
||
|
+ fedora/mysql \
|
||
|
+ fedora/nfsserver \
|
||
|
+ fedora/pgsql \
|
||
|
+ fedora/tomcat
|
||
|
+endif
|
||
|
+
|
||
|
+if OCFT_DEFAULT_CASES
|
||
|
+ocftcfgs_DATA += default/apache \
|
||
|
+ default/IPaddr2 \
|
||
|
+ default/IPaddr2v4 \
|
||
|
+ default/IPaddr2v6 \
|
||
|
+ default/IPv6addr \
|
||
|
+ default/Filesystem \
|
||
|
+ default/LVM \
|
||
|
+ default/Raid1 \
|
||
|
+ default/IPsrcaddr \
|
||
|
+ default/MailTo \
|
||
|
+ default/jboss \
|
||
|
+ default/mysql \
|
||
|
+ default/mysql-proxy \
|
||
|
+ default/pgsql \
|
||
|
+ default/db2 \
|
||
|
+ default/oracle \
|
||
|
+ default/drbd.linbit \
|
||
|
+ default/exportfs \
|
||
|
+ default/nfsserver \
|
||
|
+ default/portblock \
|
||
|
+ default/iscsi \
|
||
|
+ default/named \
|
||
|
+ default/postfix \
|
||
|
+ default/tomcat \
|
||
|
+ default/Xinetd \
|
||
|
+ default/SendArp
|
||
|
+endif
|
||
|
|
||
|
ocftdir = $(datadir)/$(PACKAGE_NAME)/ocft
|
||
|
ocft_DATA = README \
|
||
|
diff --git a/tools/ocft/Raid1 b/tools/ocft/Raid1
|
||
|
deleted file mode 100644
|
||
|
index 1c239c8..0000000
|
||
|
--- a/tools/ocft/Raid1
|
||
|
+++ /dev/null
|
||
|
@@ -1,146 +0,0 @@
|
||
|
-# Raid1
|
||
|
-# by dejan@suse.de on
|
||
|
-# Fri Aug 24 17:01:40 CEST 2012
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent Raid1
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage mdadm
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_disk0=/var/run/resource-agents/ocft-Raid1-disk0
|
||
|
- OCFT_disk1=/var/run/resource-agents/ocft-Raid1-disk1
|
||
|
- OCFT_disk2=/var/run/resource-agents/ocft-Raid1-disk2
|
||
|
- OCFT_disk3=/var/run/resource-agents/ocft-Raid1-disk3
|
||
|
- OCFT_raidconf=/var/run/resource-agents/ocft-mdadm.conf
|
||
|
- OCFT_raiddev=/dev/md8
|
||
|
- OCFT_raiddev2=/dev/md9
|
||
|
- OCFT_loop0=/dev/loop6
|
||
|
- OCFT_loop1=/dev/loop7
|
||
|
- OCFT_loop2=/dev/loop4
|
||
|
- OCFT_loop3=/dev/loop5
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- losetup $OCFT_loop0 2>/dev/null && exit 1
|
||
|
- losetup $OCFT_loop1 2>/dev/null && exit 1
|
||
|
- losetup $OCFT_loop2 2>/dev/null && exit 1
|
||
|
- losetup $OCFT_loop3 2>/dev/null && exit 1
|
||
|
- dd if=/dev/zero of=$OCFT_disk0 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- dd if=/dev/zero of=$OCFT_disk1 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- dd if=/dev/zero of=$OCFT_disk2 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- dd if=/dev/zero of=$OCFT_disk3 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
- losetup $OCFT_loop0 $OCFT_disk0
|
||
|
- losetup $OCFT_loop1 $OCFT_disk1
|
||
|
- losetup $OCFT_loop2 $OCFT_disk2
|
||
|
- losetup $OCFT_loop3 $OCFT_disk3
|
||
|
- mdadm --create $OCFT_raiddev -l 0 --raid-devices=2 $OCFT_loop0 $OCFT_loop1
|
||
|
- mdadm --create $OCFT_raiddev2 -l 0 --raid-devices=2 $OCFT_loop2 $OCFT_loop3
|
||
|
- echo DEVICE $OCFT_loop0 $OCFT_loop1 > $OCFT_raidconf
|
||
|
- echo DEVICE $OCFT_loop2 $OCFT_loop3 >> $OCFT_raidconf
|
||
|
- echo ARRAY $OCFT_raiddev devices=$OCFT_loop0,$OCFT_loop1 >> $OCFT_raidconf
|
||
|
- echo ARRAY $OCFT_raiddev2 devices=$OCFT_loop2,$OCFT_loop3 >> $OCFT_raidconf
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- mdadm --zero-superblock $OCFT_loop0
|
||
|
- mdadm --zero-superblock $OCFT_loop1
|
||
|
- mdadm --zero-superblock $OCFT_loop2
|
||
|
- mdadm --zero-superblock $OCFT_loop3
|
||
|
- mdadm --remove $OCFT_raiddev 2>/dev/null
|
||
|
- mdadm --remove $OCFT_raiddev2 2>/dev/null
|
||
|
- losetup -d $OCFT_loop0
|
||
|
- losetup -d $OCFT_loop1
|
||
|
- losetup -d $OCFT_loop2
|
||
|
- losetup -d $OCFT_loop3
|
||
|
- rm $OCFT_disk0 $OCFT_disk1 $OCFT_raidconf
|
||
|
- rm $OCFT_disk2 $OCFT_disk3
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_raidconf=$OCFT_raidconf
|
||
|
- Env OCF_RESKEY_raiddev=$OCFT_raiddev
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include required_args
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE-BLOCK prepare_auto
|
||
|
- Include required_args
|
||
|
- Env OCF_RESKEY_raiddev="auto"
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE-BLOCK prepare_multiple
|
||
|
- Include required_args
|
||
|
- Env OCF_RESKEY_raiddev="$OCFT_raiddev $OCFT_raiddev2"
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_raiddev'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_raiddev=/dev/no_such_device
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_raiddev'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_raiddev
|
||
|
- 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 "normal start (auto)"
|
||
|
- Include prepare_auto
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "normal stop (auto)"
|
||
|
- Include prepare_auto
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "normal start (multiple)"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "normal stop (multiple)"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_raiddev="$OCFT_raiddev $OCFT_raiddev2"
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
diff --git a/tools/ocft/SendArp b/tools/ocft/SendArp
|
||
|
deleted file mode 100644
|
||
|
index 7880388..0000000
|
||
|
--- a/tools/ocft/SendArp
|
||
|
+++ /dev/null
|
||
|
@@ -1,74 +0,0 @@
|
||
|
-# SendArp
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent SendArp
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage resource-agents
|
||
|
- HangTimeout 15
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_ip=127.0.0.1
|
||
|
- Env OCF_RESKEY_nic=lo
|
||
|
- Env OCF_RESKEY_background=false
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_ip'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_ip
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_ip'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ip=not_ip_address
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_nic'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_nic
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set invalid 'OCF_RESKEY_nic'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nic=not_nic
|
||
|
- AgentRun start OCF_ERR_GENERIC
|
||
|
-
|
||
|
-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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/Xinetd b/tools/ocft/Xinetd
|
||
|
deleted file mode 100644
|
||
|
index ba9c85c..0000000
|
||
|
--- a/tools/ocft/Xinetd
|
||
|
+++ /dev/null
|
||
|
@@ -1,56 +0,0 @@
|
||
|
-# Xinetd
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent Xinetd
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage xinetd
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_service=discard
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_protocol'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_service
|
||
|
- 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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/apache b/tools/ocft/apache
|
||
|
deleted file mode 100644
|
||
|
index 797412d..0000000
|
||
|
--- a/tools/ocft/apache
|
||
|
+++ /dev/null
|
||
|
@@ -1,63 +0,0 @@
|
||
|
-# apache
|
||
|
-# make sure that your apache configuration loads mod_status
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent apache
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage apache2
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- /etc/init.d/apache2 start
|
||
|
- /etc/init.d/apache2 stop
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: set non-existing OCF_RESKEY_statusurl"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_statusurl="yoyoyoyo"
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: set non-existing OCF_RESKEY_configfile"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_configfile="/yoyoyoyo/nosuchfile"
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-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 "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/db2 b/tools/ocft/db2
|
||
|
deleted file mode 100644
|
||
|
index 7013a99..0000000
|
||
|
--- a/tools/ocft/db2
|
||
|
+++ /dev/null
|
||
|
@@ -1,164 +0,0 @@
|
||
|
-# db2
|
||
|
-#
|
||
|
-# This test assumes a db2 ESE instance with two partions and a database.
|
||
|
-# Default is instance=db2inst1, database=ocft
|
||
|
-# adapt this in set_testenv below
|
||
|
-#
|
||
|
-# Simple steps to generate a test environment (if you don't have one):
|
||
|
-#
|
||
|
-# A virtual machine with 1200MB RAM is sufficient
|
||
|
-#
|
||
|
-# - download an eval version of DB2 server from IBM
|
||
|
-# - create an user "db2inst1" in group "db2inst1"
|
||
|
-#
|
||
|
-# As root
|
||
|
-# - install DB2 software in some location
|
||
|
-# - create instance
|
||
|
-# cd <this_location>/instance
|
||
|
-# ./db2icrt -s ese -u db2inst1 db2inst1
|
||
|
-# - adapt profile of db2inst1 as instructed by db2icrt
|
||
|
-#
|
||
|
-# As db2inst1
|
||
|
-# # allow to run with small memory footprint
|
||
|
-# db2set DB2_FCM_SETTINGS=FCM_MAXIMIZE_SET_SIZE:FALSE
|
||
|
-# db2start
|
||
|
-# db2start dbpartitionnum 1 add dbpartitionnum hostname $(uname -n) port 1 without tablespaces
|
||
|
-# db2stop
|
||
|
-# db2start
|
||
|
-# db2 create database ocft
|
||
|
-# Done
|
||
|
-# In order to install a real cluster refer to http://www.linux-ha.org/wiki/db2_(resource_agent)
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent db2
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 40
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- # nothing
|
||
|
-
|
||
|
-CASE-BLOCK set_testenv
|
||
|
- Env OCFT_instance=db2inst1
|
||
|
- Env OCFT_db=ocft
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_instance=$OCFT_instance
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=30000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include set_testenv
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_instance'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_instance=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "invalid instance config"
|
||
|
- Include prepare
|
||
|
- Bash eval mv ~$OCFT_instance/sqllib ~$OCFT_instance/sqllib-
|
||
|
- BashAtExit eval mv ~$OCFT_instance/sqllib- ~$OCFT_instance/sqllib
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-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 "started: monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not started: monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "killed instance: monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- BashAtExit rm /tmp/ocft-helper1
|
||
|
- Bash echo "su $OCFT_instance -c '. ~$OCFT_instance/sqllib/db2profile; db2nkill 0 >/dev/null 2>&1'" > /tmp/ocft-helper1
|
||
|
- Bash sh -x /tmp/ocft-helper1
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "overload param instance by admin"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_instance=no_such
|
||
|
- Env OCF_RESKEY_admin=$OCFT_instance
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check start really activates db"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
- BashAtExit rm /tmp/ocft-helper2
|
||
|
- Bash echo "su $OCFT_instance -c '. ~$OCFT_instance/sqllib/db2profile; db2 get snapshot for database on $OCFT_db>/dev/null'" > /tmp/ocft-helper2
|
||
|
- Bash sh -x /tmp/ocft-helper2
|
||
|
-
|
||
|
-CASE "multipartion test"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
- # start does not start partion 1
|
||
|
- Env OCF_RESKEY_dbpartitionnum=1
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
- # now start 1
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
- # now stop 1
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
- # does not affect 0
|
||
|
- Env OCF_RESKEY_dbpartitionnum=0
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-# fault injection does not work on the 1.0.4 client due to a hardcoded path
|
||
|
-CASE "simulate hanging db2stop (not meaningful for 1.0.4 agent)"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Bash [ ! -f /usr/local/bin/db2stop ]
|
||
|
- BashAtExit rm /usr/local/bin/db2stop
|
||
|
- Bash echo -e "#!/bin/sh\necho fake db2stop\nsleep 10000" > /usr/local/bin/db2stop
|
||
|
- Bash chmod +x /usr/local/bin/db2stop
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-# fault injection does not work on the 1.0.4 client due to a hardcoded path
|
||
|
-CASE "simulate not stopping db2stop (not meaningful for 1.0.4 agent)"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Bash [ ! -f /usr/local/bin/db2stop ]
|
||
|
- BashAtExit rm /usr/local/bin/db2stop
|
||
|
- Bash echo -e "#!/bin/sh\necho fake db2stop\nexit 0" > /usr/local/bin/db2stop
|
||
|
- Bash chmod +x /usr/local/bin/db2stop
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
diff --git a/tools/ocft/default/Filesystem b/tools/ocft/default/Filesystem
|
||
|
new file mode 100644
|
||
|
index 0000000..75203d7
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/Filesystem
|
||
|
@@ -0,0 +1,110 @@
|
||
|
+# Filesystem
|
||
|
+# by dejan@suse.de on
|
||
|
+# Tue Feb 15 18:50:04 CET 2011
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent Filesystem
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_fs=/var/run/resource-agents/ocft-Filesystem-fs
|
||
|
+ OCFT_loop=/dev/loop7
|
||
|
+ OCFT_dir=/var/run/resource-agents/ocft-Filesystem-mnt
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ losetup $OCFT_loop 2>/dev/null && exit 1
|
||
|
+ rmdir $OCFT_dir 2>/dev/null || true
|
||
|
+ mkdir $OCFT_dir
|
||
|
+ dd if=/dev/zero of=$OCFT_fs bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ mke2fs -j -Fq -m 0 $OCFT_fs
|
||
|
+ losetup $OCFT_loop $OCFT_fs
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ rmdir $OCFT_dir
|
||
|
+ rm $OCFT_fs
|
||
|
+ losetup -d $OCFT_loop
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_device=$OCFT_loop
|
||
|
+ Env OCF_RESKEY_fstype=ext3
|
||
|
+ Env OCF_RESKEY_directory=$OCFT_dir
|
||
|
+
|
||
|
+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_device'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_device=/dev/no_such_device
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_device'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_device
|
||
|
+ 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 "monitor depth 10 when running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Env OCF_CHECK_LEVEL=10
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor depth 20 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Env OCF_CHECK_LEVEL=20
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "start insert failure (remove device)"
|
||
|
+ Include prepare
|
||
|
+ Bash losetup -d $OCFT_loop
|
||
|
+ BashAtExit losetup $OCFT_loop $OCFT_fs
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "monitor depth 20 insert failure (r/o fs)"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Bash mount -o remount,ro $OCFT_dir
|
||
|
+ BashAtExit mount -o remount,rw $OCFT_dir
|
||
|
+ Env OCF_CHECK_LEVEL=20
|
||
|
+ AgentRun monitor OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/IPaddr2 b/tools/ocft/default/IPaddr2
|
||
|
new file mode 100644
|
||
|
index 0000000..1cf81bf
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/IPaddr2
|
||
|
@@ -0,0 +1,137 @@
|
||
|
+# IPaddr2
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPaddr2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add 192.168.144.1/24 dev eth0 brd 192.168.144.255
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del 192.168.144.1/24 dev eth0
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=192.168.144.2
|
||
|
+
|
||
|
+CASE-BLOCK check_iflabel_assigned
|
||
|
+ Bash ip -4 -o addr show eth0 | grep -w 192.168.144.2/24 | grep -w eth0:iflabel >/dev/null # checking iflabel was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_iflabel_removed
|
||
|
+ Bash ! ip -4 -o addr show eth0 | grep -w 192.168.144.2/24 | grep -w eth0:iflabel >/dev/null # checking iflabel was removed correctly
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_ip
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=not_ip_address
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set 'OCF_RESKEY_cidr_netmask'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=24
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_cidr_netmask'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=not_netmask
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set 'OCF_RESKEY_broadcast'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_broadcast=192.168.144.255
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_broadcast'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_broadcast=not_broadcast
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=eth0
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=not_nic
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+ 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 OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "Attachment to loopback interface"
|
||
|
+ Env OCF_RESKEY_ip=127.0.0.3
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check additional env: set 'OCF_RESKEY_iflabel'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=eth0
|
||
|
+ Env OCF_RESKEY_iflabel=iflabel
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_iflabel_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_iflabel_removed
|
||
|
+
|
||
|
+# This is deprecated but still supported for the compatibility.
|
||
|
+CASE "check additional env: specify iflabel in 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=eth0:iflabel
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_iflabel_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_iflabel_removed
|
||
|
+
|
||
|
+# monitor should return OCF_ERR_GENERIC rather than OCF_ERR_CONFIGURED
|
||
|
+# when the specified OCF_RESKEY_nic is disappeard by a failure.
|
||
|
+# This has been changed as of 3.9.6.
|
||
|
+CASE "monitor failure when 'OCF_RESKEY_nic' is disappeared"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=ethDisappear
|
||
|
+ Env OCF_RESKEY_CRM_meta_interval=10 # not in probe
|
||
|
+ AgentRun monitor OCF_ERR_GENERIC
|
||
|
diff --git a/tools/ocft/default/IPaddr2v4 b/tools/ocft/default/IPaddr2v4
|
||
|
new file mode 100644
|
||
|
index 0000000..4d37168
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/IPaddr2v4
|
||
|
@@ -0,0 +1,323 @@
|
||
|
+# IPaddr2v4
|
||
|
+
|
||
|
+# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
+# a IPv4 address prefix (192.168.144.0/24).
|
||
|
+# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPaddr2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_target_ip=192.168.144.2
|
||
|
+ OCFT_target_nic=eth0
|
||
|
+ OCFT_target_prefix=24
|
||
|
+ OCFT_target_netaddr=192.168.144.1/$OCFT_target_prefix
|
||
|
+ OCFT_target_brd=192.168.144.255
|
||
|
+ OCFT_wrong_ip=192.168.120.1
|
||
|
+ OCFT_force_nic=eth1
|
||
|
+ OCFT_force_prefix=16
|
||
|
+ OCFT_force_prefix2=28
|
||
|
+ OCFT_force_brd=192.168.255.255
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_assigned
|
||
|
+ Bash ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_removed
|
||
|
+ Bash ! ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was removed correctly
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_assigned
|
||
|
+ Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_removed
|
||
|
+ Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# CASE No.0
|
||
|
+#
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+
|
||
|
+# CASE No.1
|
||
|
+#
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.2
|
||
|
+#
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.3
|
||
|
+#
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.4
|
||
|
+#
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.5
|
||
|
+#
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+# CASE No.6
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds if the ip matched based on the netmask of the subnet
|
||
|
+# or fails if it did not match to any.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+CASE "params with nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.7
|
||
|
+#
|
||
|
+CASE "params with nic, cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.8
|
||
|
+#
|
||
|
+CASE "error params with wrong ip"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# CASE No.9
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
+# When it could not get base ip, it becomes the error.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+CASE "params with force nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+
|
||
|
+# CASE No.10
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the broadcast.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.11
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+ Unenv OCF_RESKEY_cidr_netmask
|
||
|
+
|
||
|
+
|
||
|
+# CASE No.12
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
+# When it could not get base ip, it becomes the error.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.13
|
||
|
+#
|
||
|
+CASE "params with cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.14
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 does not override the broadcast by cidr_netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 overrode the broadcast calculated by cidr_netmask.
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.15
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the broadcast.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and cidr_netmask (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.16
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.17
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+ Unenv OCF_RESKEY_cidr_netmask
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.18
|
||
|
+#
|
||
|
+CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.19
|
||
|
+#
|
||
|
+CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.20
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+ Unenv OCF_RESKEY_cidr_netmask
|
||
|
+
|
||
|
+# CASE No.21
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_target_brd
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/IPaddr2v6 b/tools/ocft/default/IPaddr2v6
|
||
|
new file mode 100644
|
||
|
index 0000000..d24d890
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/IPaddr2v6
|
||
|
@@ -0,0 +1,250 @@
|
||
|
+# IPaddr2v6
|
||
|
+
|
||
|
+# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
+# a IPv6 address prefix (2001:db8::/32, RFC3849).
|
||
|
+# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPaddr2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_target_ip=2001:db8:1234::2
|
||
|
+ OCFT_target_nic=eth0
|
||
|
+ OCFT_target_prefix=64
|
||
|
+ OCFT_target_netaddr=2001:db8:1234::1/$OCFT_target_prefix
|
||
|
+ OCFT_target_linklocal=fe80::2
|
||
|
+ OCFT_wrong_ip=2001:db8:5678::2
|
||
|
+ OCFT_force_nic=eth1
|
||
|
+ OCFT_force_prefix=80
|
||
|
+ OCFT_force_prefix2=48
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_assigned
|
||
|
+ Bash ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_removed
|
||
|
+ Bash ! ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was removed correctly
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_assigned
|
||
|
+ Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_removed
|
||
|
+ Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# CASE No.0
|
||
|
+#
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+
|
||
|
+# CASE No.1
|
||
|
+#
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.2
|
||
|
+#
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.3
|
||
|
+#
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.4
|
||
|
+#
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.5
|
||
|
+#
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+# CASE No.6
|
||
|
+#
|
||
|
+CASE "error params with wrong ip"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# CASE No.7
|
||
|
+#
|
||
|
+CASE "error params with no nic for a link-local IPv6 address"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
+ Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+# CASE No.8
|
||
|
+#
|
||
|
+CASE "params with nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.9
|
||
|
+#
|
||
|
+CASE "normal usage for a link-local IPv6 address, params with nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
+ Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.10
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.11
|
||
|
+#
|
||
|
+CASE "params with force nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+
|
||
|
+# CASE No.12
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.13
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.14
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.15
|
||
|
+#
|
||
|
+CASE "params with cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.16
|
||
|
+#
|
||
|
+CASE "params with nic, cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.17
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask (base netmask < assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.18
|
||
|
+# This use case is now valid. It was not allowed until v3.9.2.
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.19
|
||
|
+#
|
||
|
+CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/IPsrcaddr b/tools/ocft/default/IPsrcaddr
|
||
|
new file mode 100644
|
||
|
index 0000000..d95142e
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/IPsrcaddr
|
||
|
@@ -0,0 +1,63 @@
|
||
|
+# IPsrcaddr
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPsrcaddr
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage iproute2
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ipaddress= # put here your IP
|
||
|
+ Env OCF_RESKEY_cidr_netmask= # and the netmask
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_ipaddress'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_ipaddress
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_ipaddress'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipaddress=not_ip_address
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/IPv6addr b/tools/ocft/default/IPv6addr
|
||
|
new file mode 100644
|
||
|
index 0000000..36a9642
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/IPv6addr
|
||
|
@@ -0,0 +1,150 @@
|
||
|
+# IPv6addr
|
||
|
+
|
||
|
+# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
+# a IPv6 address prefix (2001:db8::/32, RFC3849).
|
||
|
+# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPv6addr
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_target_ipv6addr=2001:db8:1234::2
|
||
|
+ OCFT_target_nic=eth0
|
||
|
+ OCFT_target_prefix=64
|
||
|
+ OCFT_target_netaddr=2001:db8:1234::1/$OCFT_target_prefix
|
||
|
+ OCFT_target_linklocal=fe80::2
|
||
|
+ OCFT_wrong_ipv6addr=2001:db8:5678::2
|
||
|
+ OCFT_force_nic=eth1
|
||
|
+ OCFT_force_prefix=80
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ipv6addr=$OCFT_target_ipv6addr
|
||
|
+ Env OCFT_check_ipv6addr=$OCFT_target_ipv6addr
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_assigned
|
||
|
+ Bash ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ipv6addr/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_removed
|
||
|
+ Bash ! ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ipv6addr/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was removed correctly
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "params with nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+CASE "params with nic, cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+CASE "normal usage for a link-local IPv6 address"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipv6addr=$OCFT_target_linklocal
|
||
|
+ Env OCFT_check_ipv6addr=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+CASE "error start for a link-local IPv6 address when no nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipv6addr=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+CASE "error params with wrong ipv6addr"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipv6addr=$OCFT_wrong_ipv6addr
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# Note: this result is different from IPaddr2/findif
|
||
|
+# IPaddr2 succeeds if the ip matched based on the netmask of the subnet
|
||
|
+# or fails if it did not match to any.
|
||
|
+# Recommended to always specify both nic and cidr_netmask when you needed.
|
||
|
+CASE "error params with wrong cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# Note: this result is different from IPaddr2/findif
|
||
|
+# IPaddr2 succeeds but it uses /32 as a guessed cidr_netmask which
|
||
|
+# does not seem to be expected.
|
||
|
+# Recommended to always specify both nic and cidr_netmask when you needed.
|
||
|
+CASE "error params with wrong nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# Note: This use case is now valid. It was not allowed until v3.9.2.
|
||
|
+CASE "force to use the specified nic and cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
diff --git a/tools/ocft/default/LVM b/tools/ocft/default/LVM
|
||
|
new file mode 100644
|
||
|
index 0000000..4bd2b22
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/LVM
|
||
|
@@ -0,0 +1,86 @@
|
||
|
+# LVM
|
||
|
+# by dejan@suse.de on
|
||
|
+# Wed Feb 16 13:15:01 CET 2011
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent LVM
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_pv=/var/run/resource-agents/ocft-LVM-pv
|
||
|
+ OCFT_vg=ocft-vg
|
||
|
+ OCFT_lv=ocft-lv
|
||
|
+ OCFT_loop=/dev/loop7
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ losetup $OCFT_loop 2>/dev/null && exit 1
|
||
|
+ dd if=/dev/zero of=$OCFT_pv bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ losetup $OCFT_loop $OCFT_pv
|
||
|
+ pvcreate $OCFT_loop
|
||
|
+ vgcreate -s 4K $OCFT_vg $OCFT_loop
|
||
|
+ lvcreate -n $OCFT_lv -L 600K $OCFT_vg
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ vgchange -an $OCFT_vg
|
||
|
+ lvremove -f /dev/$OCFT_vg/$OCFT_lv
|
||
|
+ vgremove -f $OCFT_vg
|
||
|
+ pvremove $OCFT_loop
|
||
|
+ losetup -d $OCFT_loop
|
||
|
+ rm $OCFT_pv
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_volgrpname=$OCFT_vg
|
||
|
+
|
||
|
+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_volgrpname'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_volgrpname=/dev/no_such_device
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_volgrpname'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_volgrpname
|
||
|
+ 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
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/MailTo b/tools/ocft/default/MailTo
|
||
|
new file mode 100644
|
||
|
index 0000000..8754035
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/MailTo
|
||
|
@@ -0,0 +1,57 @@
|
||
|
+# MailTo
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent MailTo
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage mailx
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_email=root@localhost
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_email'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_email
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/Raid1 b/tools/ocft/default/Raid1
|
||
|
new file mode 100644
|
||
|
index 0000000..1c239c8
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/Raid1
|
||
|
@@ -0,0 +1,146 @@
|
||
|
+# Raid1
|
||
|
+# by dejan@suse.de on
|
||
|
+# Fri Aug 24 17:01:40 CEST 2012
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent Raid1
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage mdadm
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_disk0=/var/run/resource-agents/ocft-Raid1-disk0
|
||
|
+ OCFT_disk1=/var/run/resource-agents/ocft-Raid1-disk1
|
||
|
+ OCFT_disk2=/var/run/resource-agents/ocft-Raid1-disk2
|
||
|
+ OCFT_disk3=/var/run/resource-agents/ocft-Raid1-disk3
|
||
|
+ OCFT_raidconf=/var/run/resource-agents/ocft-mdadm.conf
|
||
|
+ OCFT_raiddev=/dev/md8
|
||
|
+ OCFT_raiddev2=/dev/md9
|
||
|
+ OCFT_loop0=/dev/loop6
|
||
|
+ OCFT_loop1=/dev/loop7
|
||
|
+ OCFT_loop2=/dev/loop4
|
||
|
+ OCFT_loop3=/dev/loop5
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ losetup $OCFT_loop0 2>/dev/null && exit 1
|
||
|
+ losetup $OCFT_loop1 2>/dev/null && exit 1
|
||
|
+ losetup $OCFT_loop2 2>/dev/null && exit 1
|
||
|
+ losetup $OCFT_loop3 2>/dev/null && exit 1
|
||
|
+ dd if=/dev/zero of=$OCFT_disk0 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ dd if=/dev/zero of=$OCFT_disk1 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ dd if=/dev/zero of=$OCFT_disk2 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ dd if=/dev/zero of=$OCFT_disk3 bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ losetup $OCFT_loop0 $OCFT_disk0
|
||
|
+ losetup $OCFT_loop1 $OCFT_disk1
|
||
|
+ losetup $OCFT_loop2 $OCFT_disk2
|
||
|
+ losetup $OCFT_loop3 $OCFT_disk3
|
||
|
+ mdadm --create $OCFT_raiddev -l 0 --raid-devices=2 $OCFT_loop0 $OCFT_loop1
|
||
|
+ mdadm --create $OCFT_raiddev2 -l 0 --raid-devices=2 $OCFT_loop2 $OCFT_loop3
|
||
|
+ echo DEVICE $OCFT_loop0 $OCFT_loop1 > $OCFT_raidconf
|
||
|
+ echo DEVICE $OCFT_loop2 $OCFT_loop3 >> $OCFT_raidconf
|
||
|
+ echo ARRAY $OCFT_raiddev devices=$OCFT_loop0,$OCFT_loop1 >> $OCFT_raidconf
|
||
|
+ echo ARRAY $OCFT_raiddev2 devices=$OCFT_loop2,$OCFT_loop3 >> $OCFT_raidconf
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ mdadm --zero-superblock $OCFT_loop0
|
||
|
+ mdadm --zero-superblock $OCFT_loop1
|
||
|
+ mdadm --zero-superblock $OCFT_loop2
|
||
|
+ mdadm --zero-superblock $OCFT_loop3
|
||
|
+ mdadm --remove $OCFT_raiddev 2>/dev/null
|
||
|
+ mdadm --remove $OCFT_raiddev2 2>/dev/null
|
||
|
+ losetup -d $OCFT_loop0
|
||
|
+ losetup -d $OCFT_loop1
|
||
|
+ losetup -d $OCFT_loop2
|
||
|
+ losetup -d $OCFT_loop3
|
||
|
+ rm $OCFT_disk0 $OCFT_disk1 $OCFT_raidconf
|
||
|
+ rm $OCFT_disk2 $OCFT_disk3
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_raidconf=$OCFT_raidconf
|
||
|
+ Env OCF_RESKEY_raiddev=$OCFT_raiddev
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE-BLOCK prepare_auto
|
||
|
+ Include required_args
|
||
|
+ Env OCF_RESKEY_raiddev="auto"
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE-BLOCK prepare_multiple
|
||
|
+ Include required_args
|
||
|
+ Env OCF_RESKEY_raiddev="$OCFT_raiddev $OCFT_raiddev2"
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_raiddev'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_raiddev=/dev/no_such_device
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_raiddev'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_raiddev
|
||
|
+ 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 "normal start (auto)"
|
||
|
+ Include prepare_auto
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "normal stop (auto)"
|
||
|
+ Include prepare_auto
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "normal start (multiple)"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "normal stop (multiple)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_raiddev="$OCFT_raiddev $OCFT_raiddev2"
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/SendArp b/tools/ocft/default/SendArp
|
||
|
new file mode 100644
|
||
|
index 0000000..7880388
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/SendArp
|
||
|
@@ -0,0 +1,74 @@
|
||
|
+# SendArp
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent SendArp
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage resource-agents
|
||
|
+ HangTimeout 15
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=127.0.0.1
|
||
|
+ Env OCF_RESKEY_nic=lo
|
||
|
+ Env OCF_RESKEY_background=false
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_ip
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=not_ip_address
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=not_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/Xinetd b/tools/ocft/default/Xinetd
|
||
|
new file mode 100644
|
||
|
index 0000000..ba9c85c
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/Xinetd
|
||
|
@@ -0,0 +1,56 @@
|
||
|
+# Xinetd
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent Xinetd
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage xinetd
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_service=discard
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_protocol'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_service
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/apache b/tools/ocft/default/apache
|
||
|
new file mode 100644
|
||
|
index 0000000..e939044
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/apache
|
||
|
@@ -0,0 +1,63 @@
|
||
|
+# apache
|
||
|
+# make sure that your apache configuration loads mod_status
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent apache
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage apache2
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ /etc/init.d/apache2 start
|
||
|
+ /etc/init.d/apache2 stop
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: set non-existing OCF_RESKEY_statusurl"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_statusurl="yoyoyoyo"
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set non-existing OCF_RESKEY_configfile"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_configfile="/yoyoyoyo/nosuchfile"
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/db2 b/tools/ocft/default/db2
|
||
|
new file mode 100644
|
||
|
index 0000000..7013a99
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/db2
|
||
|
@@ -0,0 +1,164 @@
|
||
|
+# db2
|
||
|
+#
|
||
|
+# This test assumes a db2 ESE instance with two partions and a database.
|
||
|
+# Default is instance=db2inst1, database=ocft
|
||
|
+# adapt this in set_testenv below
|
||
|
+#
|
||
|
+# Simple steps to generate a test environment (if you don't have one):
|
||
|
+#
|
||
|
+# A virtual machine with 1200MB RAM is sufficient
|
||
|
+#
|
||
|
+# - download an eval version of DB2 server from IBM
|
||
|
+# - create an user "db2inst1" in group "db2inst1"
|
||
|
+#
|
||
|
+# As root
|
||
|
+# - install DB2 software in some location
|
||
|
+# - create instance
|
||
|
+# cd <this_location>/instance
|
||
|
+# ./db2icrt -s ese -u db2inst1 db2inst1
|
||
|
+# - adapt profile of db2inst1 as instructed by db2icrt
|
||
|
+#
|
||
|
+# As db2inst1
|
||
|
+# # allow to run with small memory footprint
|
||
|
+# db2set DB2_FCM_SETTINGS=FCM_MAXIMIZE_SET_SIZE:FALSE
|
||
|
+# db2start
|
||
|
+# db2start dbpartitionnum 1 add dbpartitionnum hostname $(uname -n) port 1 without tablespaces
|
||
|
+# db2stop
|
||
|
+# db2start
|
||
|
+# db2 create database ocft
|
||
|
+# Done
|
||
|
+# In order to install a real cluster refer to http://www.linux-ha.org/wiki/db2_(resource_agent)
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent db2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 40
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ # nothing
|
||
|
+
|
||
|
+CASE-BLOCK set_testenv
|
||
|
+ Env OCFT_instance=db2inst1
|
||
|
+ Env OCFT_db=ocft
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_instance=$OCFT_instance
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=30000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include set_testenv
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_instance'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_instance=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "invalid instance config"
|
||
|
+ Include prepare
|
||
|
+ Bash eval mv ~$OCFT_instance/sqllib ~$OCFT_instance/sqllib-
|
||
|
+ BashAtExit eval mv ~$OCFT_instance/sqllib- ~$OCFT_instance/sqllib
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+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 "started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "killed instance: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ BashAtExit rm /tmp/ocft-helper1
|
||
|
+ Bash echo "su $OCFT_instance -c '. ~$OCFT_instance/sqllib/db2profile; db2nkill 0 >/dev/null 2>&1'" > /tmp/ocft-helper1
|
||
|
+ Bash sh -x /tmp/ocft-helper1
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "overload param instance by admin"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_instance=no_such
|
||
|
+ Env OCF_RESKEY_admin=$OCFT_instance
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check start really activates db"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+ BashAtExit rm /tmp/ocft-helper2
|
||
|
+ Bash echo "su $OCFT_instance -c '. ~$OCFT_instance/sqllib/db2profile; db2 get snapshot for database on $OCFT_db>/dev/null'" > /tmp/ocft-helper2
|
||
|
+ Bash sh -x /tmp/ocft-helper2
|
||
|
+
|
||
|
+CASE "multipartion test"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+ # start does not start partion 1
|
||
|
+ Env OCF_RESKEY_dbpartitionnum=1
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+ # now start 1
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+ # now stop 1
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+ # does not affect 0
|
||
|
+ Env OCF_RESKEY_dbpartitionnum=0
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+# fault injection does not work on the 1.0.4 client due to a hardcoded path
|
||
|
+CASE "simulate hanging db2stop (not meaningful for 1.0.4 agent)"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Bash [ ! -f /usr/local/bin/db2stop ]
|
||
|
+ BashAtExit rm /usr/local/bin/db2stop
|
||
|
+ Bash echo -e "#!/bin/sh\necho fake db2stop\nsleep 10000" > /usr/local/bin/db2stop
|
||
|
+ Bash chmod +x /usr/local/bin/db2stop
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+# fault injection does not work on the 1.0.4 client due to a hardcoded path
|
||
|
+CASE "simulate not stopping db2stop (not meaningful for 1.0.4 agent)"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Bash [ ! -f /usr/local/bin/db2stop ]
|
||
|
+ BashAtExit rm /usr/local/bin/db2stop
|
||
|
+ Bash echo -e "#!/bin/sh\necho fake db2stop\nexit 0" > /usr/local/bin/db2stop
|
||
|
+ Bash chmod +x /usr/local/bin/db2stop
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
diff --git a/tools/ocft/default/drbd.linbit b/tools/ocft/default/drbd.linbit
|
||
|
new file mode 100644
|
||
|
index 0000000..4cc5519
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/drbd.linbit
|
||
|
@@ -0,0 +1,183 @@
|
||
|
+# linbit: drbd
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent drbd
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/linbit
|
||
|
+ InstallPackage drbd
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ DRBDCONF=/tmp/ocft_drbd_tmp.conf
|
||
|
+
|
||
|
+ # should be this machine's hostname/ip, please modify it by yourself.
|
||
|
+ NAME_1=HOSTNAME1
|
||
|
+ IP_1=IP_ADDRESS1
|
||
|
+
|
||
|
+ # the block device just for test, please modify it by yourself.
|
||
|
+ DISK_1=/dev/DEVICE1
|
||
|
+
|
||
|
+ PORT_1=5735
|
||
|
+ DEVICE_1=/dev/drbd0
|
||
|
+
|
||
|
+ ####################################################################
|
||
|
+
|
||
|
+ # please modify it by yourself.
|
||
|
+ NAME_2=HOSTNAME2
|
||
|
+ IP_2=IP_ADDRESS2
|
||
|
+
|
||
|
+ # the block device just for test, please modify it by yourself.
|
||
|
+ DISK_2=/dev/DEVICE2
|
||
|
+
|
||
|
+ PORT_2=5735
|
||
|
+ DEVICE_2=/dev/drbd0
|
||
|
+
|
||
|
+
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ cat >$DRBDCONF <<EOF
|
||
|
+ global {
|
||
|
+ usage-count no;
|
||
|
+ }
|
||
|
+
|
||
|
+ resource ocft0 {
|
||
|
+ protocol C;
|
||
|
+ disk {
|
||
|
+ on-io-error detach;
|
||
|
+ }
|
||
|
+ on $NAME_1 {
|
||
|
+ device $DEVICE_1;
|
||
|
+ address $IP_1:$PORT_1;
|
||
|
+ meta-disk internal;
|
||
|
+ disk $DISK_1;
|
||
|
+ }
|
||
|
+ on $NAME_2 {
|
||
|
+ device $DEVICE_2;
|
||
|
+ address $IP_2:$PORT_2;
|
||
|
+ meta-disk internal;
|
||
|
+ disk $DISK_2;
|
||
|
+ }
|
||
|
+ }
|
||
|
+EOF
|
||
|
+ HOST=$(uname -n)
|
||
|
+ DRBDADM="drbdadm -c $DRBDCONF"
|
||
|
+
|
||
|
+ # prepare
|
||
|
+ modprobe drbd $(drbdadm sh-mod-parms)
|
||
|
+ $DRBDADM down ocft0
|
||
|
+
|
||
|
+ # create meta data block if necessary
|
||
|
+ $DRBDADM dump-md ocft0 >/dev/null 2>&1
|
||
|
+ if [ $? -eq 255 ]; then
|
||
|
+ $DRBDADM create-md ocft0
|
||
|
+ fi
|
||
|
+
|
||
|
+ # start drbd
|
||
|
+ $DRBDADM up ocft0
|
||
|
+
|
||
|
+ # UpToDate
|
||
|
+ if [ "$HOST" = "$NAME_1" ]; then
|
||
|
+ $DRBDADM wait-connect ocft0
|
||
|
+ echo "drbd Syncing .."
|
||
|
+ $DRBDADM primary --force ocft0
|
||
|
+ while true; do
|
||
|
+ CSTATE=$($DRBDADM cstate ocft0)
|
||
|
+ DSTATE=$($DRBDADM dstate ocft0)
|
||
|
+ if [ "$CSTATE" = "Connected" -a "$DSTATE" = "UpToDate/UpToDate" ]; then
|
||
|
+ break
|
||
|
+ else
|
||
|
+ sleep 3
|
||
|
+ fi
|
||
|
+ done
|
||
|
+ echo "done"
|
||
|
+ fi
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ drbdadm -c $DRBDCONF down ocft0
|
||
|
+ rm -f $DRBDCONF
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_drbdconf=$DRBDCONF
|
||
|
+ Env OCF_RESKEY_drbd_resource=ocft0
|
||
|
+ Env OCF_RESKEY_CRM_meta_notify=true
|
||
|
+ Env OCF_RESKEY_CRM_meta_clone_max=2
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include required_args
|
||
|
+ AgentRun validate-all OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "wrong path of config file"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_drbdconf=no_such_file
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "wrong resource name"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_drbd_resource=no_such_src
|
||
|
+ # OCF_RESKEY_drbd_resource is a required parameter in agent meta-data,
|
||
|
+ # if wrong, I think the agent should return OCF_ERR_CONFIGURED.
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ 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
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "try to 'promote' in single-primary mode"
|
||
|
+ Include prepare
|
||
|
+ Include@$IP_2 prepare
|
||
|
+
|
||
|
+ # start drbd
|
||
|
+ AgentRun start
|
||
|
+ AgentRun@$IP_2 start
|
||
|
+
|
||
|
+ # promote local drbd first
|
||
|
+ AgentRun promote OCF_SUCCESS
|
||
|
+
|
||
|
+ # demote local drbd prepare for remote drbd promote
|
||
|
+ AgentRun demote
|
||
|
+ # remote drbd promote
|
||
|
+ AgentRun@$IP_2 promote OCF_SUCCESS
|
||
|
+
|
||
|
+ # promote fails, because remote drbd promote first.
|
||
|
+ AgentRun promote OCF_ERR_GENERIC
|
||
|
diff --git a/tools/ocft/default/exportfs b/tools/ocft/default/exportfs
|
||
|
new file mode 100644
|
||
|
index 0000000..c83520d
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/exportfs
|
||
|
@@ -0,0 +1,74 @@
|
||
|
+# exportfs
|
||
|
+#
|
||
|
+#
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent exportfs
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 40
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ # nothing
|
||
|
+
|
||
|
+CASE-BLOCK set_testenv
|
||
|
+ Env OCF_RESKEY_directory=/usr
|
||
|
+ Env OCF_RESKEY_fsid=105
|
||
|
+ Env OCF_RESKEY_clientspec="*"
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=30000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include set_testenv
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: no 'OCF_RESKEY_fsid'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_fsid=
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_directory'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_directory=/no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+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 "stop with no env"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_directory=/no_such
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
diff --git a/tools/ocft/default/iscsi b/tools/ocft/default/iscsi
|
||
|
new file mode 100644
|
||
|
index 0000000..c1325a1
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/iscsi
|
||
|
@@ -0,0 +1,82 @@
|
||
|
+# iscsi
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent iscsi
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage open-iscsi
|
||
|
+ InstallPackage iscsitarget
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_disk=/var/run/resource-agents/ocft-iscsi
|
||
|
+ OCFT_target="iqn.2011-03.ocft.localhost:disk0"
|
||
|
+ OCFT_portal="127.0.0.1:3260"
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ dd if=/dev/zero of=$OCFT_disk bs=1024k count=1 2>/dev/null
|
||
|
+ echo Target $OCFT_target >> /etc/ietd.conf
|
||
|
+ echo " Lun 0 Path=$OCFT_disk,Type=fileio" >> /etc/ietd.conf
|
||
|
+ /etc/init.d/iscsitarget start
|
||
|
+ /etc/init.d/open-iscsi start
|
||
|
+ /etc/init.d/iscsitarget restart
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ rm -f $OCFT_disk
|
||
|
+ sed -i "/^Target $OCFT_target/,+1d" /etc/ietd.conf
|
||
|
+
|
||
|
+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
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/jboss b/tools/ocft/default/jboss
|
||
|
new file mode 100644
|
||
|
index 0000000..bc99d8f
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/jboss
|
||
|
@@ -0,0 +1,83 @@
|
||
|
+# jboss
|
||
|
+#
|
||
|
+# NOTE: Clean up $jboss_home/standalone/log before running this test
|
||
|
+# otherwise creating the pid/log files may fail
|
||
|
+# in the test case with a different user.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent jboss
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 120
|
||
|
+
|
||
|
+# Note : Change setting by a version of JBoss.
|
||
|
+#
|
||
|
+VARIABLE
|
||
|
+ # JBoss5 Environment require
|
||
|
+# jboss_version=5
|
||
|
+# jboss_home=/opt/jboss5/current
|
||
|
+# java_home=/usr/lib/jvm/java-1.6.0-openjdk.x86_64
|
||
|
+# user=jboss5
|
||
|
+ # JBoss6 Environment require
|
||
|
+ jboss_version=6
|
||
|
+ jboss_home=/opt/jboss6/current
|
||
|
+ java_home=/usr/lib/jvm/java-1.7.0-openjdk.x86_64
|
||
|
+ user=jboss6
|
||
|
+
|
||
|
+CASE-BLOCK required_args_jboss
|
||
|
+ Env OCF_RESKEY_jboss_home=${jboss_home}
|
||
|
+ Env OCF_RESKEY_java_home=${java_home}
|
||
|
+ Env OCF_RESKEY_jboss_version=${jboss_version}
|
||
|
+ Env OCF_RESKEY_user=${user}
|
||
|
+
|
||
|
+CASE-BLOCK args_clear
|
||
|
+ Unenv OCF_RESKEY_jboss_home
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+ Unenv OCF_RESKEY_jboss_version
|
||
|
+ Unenv OCF_RESKEY_user
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare_jboss
|
||
|
+ Include required_args_jboss
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# Test CASE
|
||
|
+#
|
||
|
+CASE "normal start jboss require_args (user:user)"
|
||
|
+ Include prepare_jboss
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "normal start jboss require_args (user:root)"
|
||
|
+ Include prepare_jboss
|
||
|
+ Unenv OCF_RESKEY_user
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start jboss no jboss_home"
|
||
|
+ Include prepare_jboss
|
||
|
+ Unenv OCF_RESKEY_jboss_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start jboss no java_home"
|
||
|
+ Include prepare_jboss
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start jboss no java command"
|
||
|
+ Include prepare_jboss
|
||
|
+ Env OCF_RESKEY_java_home=/var
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
diff --git a/tools/ocft/default/mysql b/tools/ocft/default/mysql
|
||
|
new file mode 100644
|
||
|
index 0000000..27fcb58
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/mysql
|
||
|
@@ -0,0 +1,77 @@
|
||
|
+# mysql
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent mysql
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage mariadb
|
||
|
+ InstallPackage mariadb-server
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ /etc/init.d/mysql start
|
||
|
+ /etc/init.d/mysql stop
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_binary=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "check lib file"
|
||
|
+ Include prepare
|
||
|
+ Bash chmod u-w /var/lib/mysql
|
||
|
+ BashAtExit chmod u+w /var/lib/mysql
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "non-existent user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_user=no_user
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "invalid user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_user=nobody
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/default/mysql-proxy b/tools/ocft/default/mysql-proxy
|
||
|
new file mode 100644
|
||
|
index 0000000..e16d52b
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/mysql-proxy
|
||
|
@@ -0,0 +1,83 @@
|
||
|
+# mysql-proxy
|
||
|
+# by r.bhatia@ipax.at
|
||
|
+#
|
||
|
+# test cases (to implement):
|
||
|
+#
|
||
|
+# * /usr/sbin/ocf-tester -n mp -o binary="/usr/sbin/mysql-proxy" -o defaults_file="" -o parameters="--proxy-skip-profiling" \
|
||
|
+# -o admin_address="127.0.0.1:4041" -o admin_username="root" -o admin_password="la" -o admin_lua_script="/usr/lib/mysql-proxy/lua/admin.lua" \
|
||
|
+# -o proxy_backend_addresses="192.168.100.200:42006" -o proxy_address="/var/run/mysqld/mysqld.sock" /usr/lib/ocf/resource.d/heartbeat/mysql-proxy
|
||
|
+#
|
||
|
+# * OCF_CHECK_LEVEL 20 check
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent mysql-proxy
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat/
|
||
|
+ InstallPackage mysql-proxy
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ # nothing
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+ Env OCF_RESKEY_binary=/tmp/mysql-proxy
|
||
|
+ Env OCF_RESKEY_admin_username=root
|
||
|
+ Env OCF_RESKEY_admin_password=test123
|
||
|
+ Env OCF_RESKEY_admin_lua_script=/usr/lib/mysql-proxy/lua/admin.lua
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Bash [ ! -x /tmp/mysql-proxy ] && ln -s `which mysql-proxy` /tmp/mysql-proxy || true
|
||
|
+ Include crm_setting
|
||
|
+
|
||
|
+CASE-BLOCK teardown
|
||
|
+ AgentRun stop
|
||
|
+ BashAtExit rm -f /tmp/mysql-proxy
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include teardown
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_binary=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ BashAtExit rm -f /tmp/mysql-proxy
|
||
|
+
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include teardown
|
||
|
+
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include teardown
|
||
|
+
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include teardown
|
||
|
+
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ Include teardown
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/named b/tools/ocft/default/named
|
||
|
new file mode 100644
|
||
|
index 0000000..90a4351
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/named
|
||
|
@@ -0,0 +1,69 @@
|
||
|
+#named
|
||
|
+
|
||
|
+# To work properly this test requires that standard bind and bin-utils
|
||
|
+# packages installed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent named
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage bind
|
||
|
+ InstallPackage bind-utils
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ /etc/init.d/named start
|
||
|
+ /etc/init.d/named stop
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_named'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_named=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "non-existent user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_named_user=no_user
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
diff --git a/tools/ocft/default/nfsserver b/tools/ocft/default/nfsserver
|
||
|
new file mode 100644
|
||
|
index 0000000..cd73164
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/nfsserver
|
||
|
@@ -0,0 +1,75 @@
|
||
|
+# nfsserver
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent nfsserver
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage nfs-kernel-server
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_nfs_init_script=/etc/init.d/nfsserver
|
||
|
+ Env OCF_RESKEY_nfs_ip=127.0.0.1
|
||
|
+ Env OCF_RESKEY_nfs_shared_infodir=/var/lib/nfs
|
||
|
+ Env OCF_RESKEY_nfs_notify_cmd=/usr/sbin/sm-notify
|
||
|
+
|
||
|
+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_nfs_init_script'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nfs_init_script=no_such_script
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nfs_ip'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nfs_ip
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nfs_shared_infodir'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nfs_shared_infodir
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_nfs_notify_cmd'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nfs_notify_cmd=no_such_program
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/oracle b/tools/ocft/default/oracle
|
||
|
new file mode 100644
|
||
|
index 0000000..6f145c7
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/oracle
|
||
|
@@ -0,0 +1,81 @@
|
||
|
+# oracle
|
||
|
+# (based on db2)
|
||
|
+#
|
||
|
+# Created on an SLE11SP2 running oracle 11g
|
||
|
+# database sid is orcl
|
||
|
+# adapt this in set_testenv below
|
||
|
+# TODO: need oracle expert to break it, then test it
|
||
|
+#
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent oracle
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 40
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ # nothing
|
||
|
+
|
||
|
+CASE-BLOCK set_testenv
|
||
|
+ Env OCFT_sid=orcl
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_sid=$OCFT_sid
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=30000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include set_testenv
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: no 'OCF_RESKEY_sid'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_sid=
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_home'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_home=/no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+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 "started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not started: monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "try different ipcrm method"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipcrm=none
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
diff --git a/tools/ocft/default/pgsql b/tools/ocft/default/pgsql
|
||
|
new file mode 100644
|
||
|
index 0000000..9944b09
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/pgsql
|
||
|
@@ -0,0 +1,71 @@
|
||
|
+# pgsql
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent pgsql
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage postgresql-server
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ /etc/init.d/postgresql start
|
||
|
+ /etc/init.d/postgresql stop
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_pgctl'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgctl=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "non-existent user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgdba=no_user
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "invalid user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgdba=nobody
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/default/portblock b/tools/ocft/default/portblock
|
||
|
new file mode 100644
|
||
|
index 0000000..3475c63
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/portblock
|
||
|
@@ -0,0 +1,69 @@
|
||
|
+# portblock
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent portblock
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage iptables
|
||
|
+ HangTimeout 15
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_protocol=tcp
|
||
|
+ Env OCF_RESKEY_portno=80
|
||
|
+ Env OCF_RESKEY_action=block
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_protocol'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_protocol
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_portno'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_portno
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_action'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_action
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/postfix b/tools/ocft/default/postfix
|
||
|
new file mode 100644
|
||
|
index 0000000..f17e968
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/postfix
|
||
|
@@ -0,0 +1,102 @@
|
||
|
+# postfix
|
||
|
+# by r.bhatia@ipax.at
|
||
|
+#
|
||
|
+# test cases (to implement):
|
||
|
+#
|
||
|
+# * /usr/sbin/ocf-tester -n post1 /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
+# * /usr/sbin/ocf-tester -n post2 -o binary="/usr/sbin/postfix" \
|
||
|
+# -o config_dir="" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
+# * /usr/sbin/ocf-tester -n post3 -o binary="/usr/sbin/postfix" \
|
||
|
+# -o config_dir="/etc/postfix" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
+# * /usr/sbin/ocf-tester -n post4 -o binary="/usr/sbin/postfix" \
|
||
|
+# -o config_dir="/root/postfix/" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $?
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent postfix
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage postfix
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ # nothing
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+ Env OCF_RESKEY_CRM_meta_interval=10000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_binary=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_config_dir'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_config_dir=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: 'OCF_RESKEY_binary'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_binary=/usr/sbin/postfix
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: 'OCF_RESKEY_config_dir' without trailing slash"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_config_dir="/etc/postfix"
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: 'OCF_RESKEY_config_dir' with trailing slash"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_config_dir="/etc/postfix/"
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+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 a running resource"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "(initial) probe a stopped resource"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_CRM_meta_interval=0
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "(re-)probe a running resource"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_CRM_meta_interval=0
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/default/tomcat b/tools/ocft/default/tomcat
|
||
|
new file mode 100644
|
||
|
index 0000000..56adf86
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/default/tomcat
|
||
|
@@ -0,0 +1,73 @@
|
||
|
+# tomcat
|
||
|
+#
|
||
|
+# NOTE: Clean up $catalina_home/logs before running this test
|
||
|
+# otherwise creating the pid/log files may fail
|
||
|
+# in the test case with a different user.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent tomcat
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 120
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ # Adjust accrding to your configuration
|
||
|
+ catalina_home=/opt/tomcat7
|
||
|
+ tomcat_user=tomcat7
|
||
|
+ java_home=/usr/lib/jvm/java-1.6.0-openjdk.x86_64
|
||
|
+
|
||
|
+CASE-BLOCK required_args_tomcat
|
||
|
+ Env OCF_RESKEY_catalina_home=${catalina_home}
|
||
|
+ Env OCF_RESKEY_tomcat_user=${tomcat_user}
|
||
|
+ Env OCF_RESKEY_java_home=${java_home}
|
||
|
+
|
||
|
+CASE-BLOCK args_clear
|
||
|
+ Unenv OCF_RESKEY_catalina_home
|
||
|
+ Unenv OCF_RESKEY_tomcat_user
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare_tomcat
|
||
|
+ Include required_args_tomcat
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# Test CASE
|
||
|
+#
|
||
|
+CASE "normal start tomcat require_args (user:user)"
|
||
|
+ Include prepare_tomcat
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "normal start tomcat require_args (user:root)"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Unenv OCF_RESKEY_tomcat_user
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no catalina_home"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Unenv OCF_RESKEY_catalina_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no java_home"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no java command"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Env OCF_RESKEY_java_home=/var
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
diff --git a/tools/ocft/drbd.linbit b/tools/ocft/drbd.linbit
|
||
|
deleted file mode 100644
|
||
|
index 4cc5519..0000000
|
||
|
--- a/tools/ocft/drbd.linbit
|
||
|
+++ /dev/null
|
||
|
@@ -1,183 +0,0 @@
|
||
|
-# linbit: drbd
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent drbd
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/linbit
|
||
|
- InstallPackage drbd
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- DRBDCONF=/tmp/ocft_drbd_tmp.conf
|
||
|
-
|
||
|
- # should be this machine's hostname/ip, please modify it by yourself.
|
||
|
- NAME_1=HOSTNAME1
|
||
|
- IP_1=IP_ADDRESS1
|
||
|
-
|
||
|
- # the block device just for test, please modify it by yourself.
|
||
|
- DISK_1=/dev/DEVICE1
|
||
|
-
|
||
|
- PORT_1=5735
|
||
|
- DEVICE_1=/dev/drbd0
|
||
|
-
|
||
|
- ####################################################################
|
||
|
-
|
||
|
- # please modify it by yourself.
|
||
|
- NAME_2=HOSTNAME2
|
||
|
- IP_2=IP_ADDRESS2
|
||
|
-
|
||
|
- # the block device just for test, please modify it by yourself.
|
||
|
- DISK_2=/dev/DEVICE2
|
||
|
-
|
||
|
- PORT_2=5735
|
||
|
- DEVICE_2=/dev/drbd0
|
||
|
-
|
||
|
-
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- cat >$DRBDCONF <<EOF
|
||
|
- global {
|
||
|
- usage-count no;
|
||
|
- }
|
||
|
-
|
||
|
- resource ocft0 {
|
||
|
- protocol C;
|
||
|
- disk {
|
||
|
- on-io-error detach;
|
||
|
- }
|
||
|
- on $NAME_1 {
|
||
|
- device $DEVICE_1;
|
||
|
- address $IP_1:$PORT_1;
|
||
|
- meta-disk internal;
|
||
|
- disk $DISK_1;
|
||
|
- }
|
||
|
- on $NAME_2 {
|
||
|
- device $DEVICE_2;
|
||
|
- address $IP_2:$PORT_2;
|
||
|
- meta-disk internal;
|
||
|
- disk $DISK_2;
|
||
|
- }
|
||
|
- }
|
||
|
-EOF
|
||
|
- HOST=$(uname -n)
|
||
|
- DRBDADM="drbdadm -c $DRBDCONF"
|
||
|
-
|
||
|
- # prepare
|
||
|
- modprobe drbd $(drbdadm sh-mod-parms)
|
||
|
- $DRBDADM down ocft0
|
||
|
-
|
||
|
- # create meta data block if necessary
|
||
|
- $DRBDADM dump-md ocft0 >/dev/null 2>&1
|
||
|
- if [ $? -eq 255 ]; then
|
||
|
- $DRBDADM create-md ocft0
|
||
|
- fi
|
||
|
-
|
||
|
- # start drbd
|
||
|
- $DRBDADM up ocft0
|
||
|
-
|
||
|
- # UpToDate
|
||
|
- if [ "$HOST" = "$NAME_1" ]; then
|
||
|
- $DRBDADM wait-connect ocft0
|
||
|
- echo "drbd Syncing .."
|
||
|
- $DRBDADM primary --force ocft0
|
||
|
- while true; do
|
||
|
- CSTATE=$($DRBDADM cstate ocft0)
|
||
|
- DSTATE=$($DRBDADM dstate ocft0)
|
||
|
- if [ "$CSTATE" = "Connected" -a "$DSTATE" = "UpToDate/UpToDate" ]; then
|
||
|
- break
|
||
|
- else
|
||
|
- sleep 3
|
||
|
- fi
|
||
|
- done
|
||
|
- echo "done"
|
||
|
- fi
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- drbdadm -c $DRBDCONF down ocft0
|
||
|
- rm -f $DRBDCONF
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_drbdconf=$DRBDCONF
|
||
|
- Env OCF_RESKEY_drbd_resource=ocft0
|
||
|
- Env OCF_RESKEY_CRM_meta_notify=true
|
||
|
- Env OCF_RESKEY_CRM_meta_clone_max=2
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include required_args
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include required_args
|
||
|
- AgentRun validate-all OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "normal start"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "normal stop"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "wrong path of config file"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_drbdconf=no_such_file
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "wrong resource name"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_drbd_resource=no_such_src
|
||
|
- # OCF_RESKEY_drbd_resource is a required parameter in agent meta-data,
|
||
|
- # if wrong, I think the agent should return OCF_ERR_CONFIGURED.
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "double start"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "double stop"
|
||
|
- Include prepare
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- 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
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-CASE "try to 'promote' in single-primary mode"
|
||
|
- Include prepare
|
||
|
- Include@$IP_2 prepare
|
||
|
-
|
||
|
- # start drbd
|
||
|
- AgentRun start
|
||
|
- AgentRun@$IP_2 start
|
||
|
-
|
||
|
- # promote local drbd first
|
||
|
- AgentRun promote OCF_SUCCESS
|
||
|
-
|
||
|
- # demote local drbd prepare for remote drbd promote
|
||
|
- AgentRun demote
|
||
|
- # remote drbd promote
|
||
|
- AgentRun@$IP_2 promote OCF_SUCCESS
|
||
|
-
|
||
|
- # promote fails, because remote drbd promote first.
|
||
|
- AgentRun promote OCF_ERR_GENERIC
|
||
|
diff --git a/tools/ocft/fedora/Filesystem b/tools/ocft/fedora/Filesystem
|
||
|
new file mode 100644
|
||
|
index 0000000..4e1981f
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/Filesystem
|
||
|
@@ -0,0 +1,110 @@
|
||
|
+# Filesystem
|
||
|
+# by dejan@suse.de on
|
||
|
+# Tue Feb 15 18:50:04 CET 2011
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent Filesystem
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_fs=/tmp/resource-agents/ocft-Filesystem-fs
|
||
|
+ OCFT_loop=/dev/loop7
|
||
|
+ OCFT_dir=/tmp/resource-agents/ocft-Filesystem-mnt
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ losetup $OCFT_loop 2>/dev/null && exit 1
|
||
|
+ rmdir $OCFT_dir 2>/dev/null || true
|
||
|
+ mkdir -p $OCFT_dir
|
||
|
+ dd if=/dev/zero of=$OCFT_fs bs=1 count=0 seek=16M 2>/dev/null
|
||
|
+ mke2fs -j -Fq -m 0 $OCFT_fs
|
||
|
+ losetup $OCFT_loop $OCFT_fs
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ rmdir $OCFT_dir
|
||
|
+ rm -f $OCFT_fs
|
||
|
+ losetup -d $OCFT_loop
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_device=$OCFT_loop
|
||
|
+ Env OCF_RESKEY_fstype=ext3
|
||
|
+ Env OCF_RESKEY_directory=$OCFT_dir
|
||
|
+
|
||
|
+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_device'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_device=/dev/no_such_device
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_device'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_device
|
||
|
+ 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 "monitor depth 10 when running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Env OCF_CHECK_LEVEL=10
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor depth 20 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Env OCF_CHECK_LEVEL=20
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "start insert failure (remove device)"
|
||
|
+ Include prepare
|
||
|
+ Bash losetup -d $OCFT_loop
|
||
|
+ BashAtExit losetup $OCFT_loop $OCFT_fs
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "monitor depth 20 insert failure (r/o fs)"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ Bash mount -o remount,ro $OCFT_dir
|
||
|
+ BashAtExit mount -o remount,rw $OCFT_dir
|
||
|
+ Env OCF_CHECK_LEVEL=20
|
||
|
+ AgentRun monitor OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
diff --git a/tools/ocft/fedora/IPaddr2v4 b/tools/ocft/fedora/IPaddr2v4
|
||
|
new file mode 100644
|
||
|
index 0000000..a0df278
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/IPaddr2v4
|
||
|
@@ -0,0 +1,323 @@
|
||
|
+# IPaddr2v4
|
||
|
+
|
||
|
+# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
+# a IPv4 address prefix (192.168.144.0/24).
|
||
|
+# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPaddr2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_target_ip=192.168.144.2
|
||
|
+ OCFT_target_nic=eth0
|
||
|
+ OCFT_target_prefix=24
|
||
|
+ OCFT_target_netaddr=192.168.144.1/$OCFT_target_prefix
|
||
|
+ OCFT_target_brd=192.168.144.255
|
||
|
+ OCFT_wrong_ip=192.168.120.1
|
||
|
+ OCFT_force_nic=eth1
|
||
|
+ OCFT_force_prefix=16
|
||
|
+ OCFT_force_prefix2=28
|
||
|
+ OCFT_force_brd=192.168.255.255
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_assigned
|
||
|
+ Bash ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_removed
|
||
|
+ Bash ! ip -4 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv4 address was removed correctly
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_assigned
|
||
|
+ Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic brd $OCFT_target_brd
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_removed
|
||
|
+ Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# CASE No.0
|
||
|
+#
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+
|
||
|
+# CASE No.1
|
||
|
+#
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.2
|
||
|
+#
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.3
|
||
|
+#
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.4
|
||
|
+#
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.5
|
||
|
+#
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+# CASE No.6
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds if the ip matched based on the netmask of the subnet
|
||
|
+# or fails if it did not match to any.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+CASE "params with nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.7
|
||
|
+#
|
||
|
+CASE "params with nic, cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.8
|
||
|
+#
|
||
|
+CASE "error params with wrong ip"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# CASE No.9
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
+# When it could not get base ip, it becomes the error.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+#CASE "params with force nic"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# AgentRun start OCF_ERR_GENERIC
|
||
|
+# Include check_ip_removed
|
||
|
+# Unenv OCF_RESKEY_nic
|
||
|
+
|
||
|
+# CASE No.10
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the broadcast.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.11
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+# Unenv OCF_RESKEY_cidr_netmask
|
||
|
+
|
||
|
+
|
||
|
+# CASE No.12
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the correct subnet mask.
|
||
|
+# When it could not get base ip, it becomes the error.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 was using a wrong subnet mask (constant of 32) in this case.
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.13
|
||
|
+#
|
||
|
+CASE "params with cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.14
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 does not override the broadcast by cidr_netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 overrode the broadcast calculated by cidr_netmask.
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.15
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 fails when it could not determine the broadcast.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded but it's considered ambiguous.
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and cidr_netmask (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.16
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.17
|
||
|
+# Note: this result is different from IPaddr2 in 3.9.3.
|
||
|
+# IPaddr2 succeeds but the broadcast is not set.
|
||
|
+# This is because findif.sh can not calculate a broadcast from a netmask.
|
||
|
+# Recommended to always specify both nic, cidr_netmask, and broadcast when you needed.
|
||
|
+# IPaddr2 in 3.9.3 succeeded with using a calculated broadcast.
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask (not exist base_ip)"
|
||
|
+# Include prepare
|
||
|
+# Include base_ip_removed
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Unenv OCF_RESKEY_nic
|
||
|
+# Unenv OCF_RESKEY_cidr_netmask
|
||
|
+# Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.18
|
||
|
+#
|
||
|
+CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.19
|
||
|
+#
|
||
|
+CASE "params with broadcast, no nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.20
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+# Env OCF_RESKEY_broadcast=$OCFT_force_brd
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# Include check_ip_assigned
|
||
|
+# AgentRun monitor OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+# Unenv OCF_RESKEY_cidr_netmask
|
||
|
+
|
||
|
+# CASE No.21
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask"
|
||
|
+# Include prepare
|
||
|
+# Include base_ip_removed
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+# Env OCF_RESKEY_broadcast=$OCFT_target_brd
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# Include check_ip_assigned
|
||
|
+# AgentRun monitor OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+# Include base_ip_assigned
|
||
|
+
|
||
|
diff --git a/tools/ocft/fedora/IPaddr2v6 b/tools/ocft/fedora/IPaddr2v6
|
||
|
new file mode 100644
|
||
|
index 0000000..fe35046
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/IPaddr2v6
|
||
|
@@ -0,0 +1,250 @@
|
||
|
+# IPaddr2v6
|
||
|
+
|
||
|
+# Note: This test case uses two NICs(eth0, eth1) and
|
||
|
+# a IPv6 address prefix (2001:db8::/32, RFC3849).
|
||
|
+# Adjust them according to your environment at VARIABLE section if needed.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPaddr2
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ OCFT_target_ip=2001:db8:1234::2
|
||
|
+ OCFT_target_nic=eth0
|
||
|
+ OCFT_target_prefix=64
|
||
|
+ OCFT_target_netaddr=2001:db8:1234::1/$OCFT_target_prefix
|
||
|
+ OCFT_target_linklocal=fe80::2
|
||
|
+ OCFT_wrong_ip=2001:db8:5678::2
|
||
|
+ OCFT_force_nic=eth1
|
||
|
+ OCFT_force_prefix=80
|
||
|
+ OCFT_force_prefix2=48
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_ip=$OCFT_target_ip
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_assigned
|
||
|
+ Bash ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was assigned correctly
|
||
|
+
|
||
|
+CASE-BLOCK check_ip_removed
|
||
|
+ Bash ! ip -6 -o addr show $OCFT_check_nic | grep -w $OCFT_check_ip/$OCFT_check_prefix >/dev/null # checking if the IPv6 address was removed correctly
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_assigned
|
||
|
+ Bash ip addr add $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK base_ip_removed
|
||
|
+ Bash ip addr del $OCFT_target_netaddr dev $OCFT_target_nic
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include required_args
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# CASE No.0
|
||
|
+#
|
||
|
+CASE "normal start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+
|
||
|
+# CASE No.1
|
||
|
+#
|
||
|
+CASE "normal stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.2
|
||
|
+#
|
||
|
+CASE "double start"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.3
|
||
|
+#
|
||
|
+CASE "double stop"
|
||
|
+ Include prepare
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.4
|
||
|
+#
|
||
|
+CASE "monitor with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+# CASE No.5
|
||
|
+#
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+# CASE No.6
|
||
|
+#
|
||
|
+CASE "error params with wrong ip"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_wrong_ip
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+# CASE No.7
|
||
|
+#
|
||
|
+CASE "error params with no nic for a link-local IPv6 address"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
+ Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+# CASE No.8
|
||
|
+#
|
||
|
+CASE "params with nic, no cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.9
|
||
|
+#
|
||
|
+CASE "normal usage for a link-local IPv6 address, params with nic"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=$OCFT_target_linklocal
|
||
|
+ Env OCFT_check_ip=$OCFT_target_linklocal
|
||
|
+ # nic is mandatory for a link-local address
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.10
|
||
|
+#
|
||
|
+CASE "error params with wrong ip and nic (not exist base_ip)"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.11
|
||
|
+#
|
||
|
+#CASE "params with force nic"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# AgentRun start OCF_ERR_GENERIC
|
||
|
+# Include check_ip_removed
|
||
|
+# Unenv OCF_RESKEY_nic
|
||
|
+
|
||
|
+# CASE No.12
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.13
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask < assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.14
|
||
|
+#
|
||
|
+CASE "params with force cidr_netmask (base netmask > assigned netmask)"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+ Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.15
|
||
|
+#
|
||
|
+CASE "params with cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Include base_ip_removed
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+ Include base_ip_assigned
|
||
|
+
|
||
|
+# CASE No.16
|
||
|
+#
|
||
|
+CASE "params with nic, cidr_netmask"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=$OCFT_target_nic
|
||
|
+ Env OCF_RESKEY_cidr_netmask=$OCFT_target_prefix
|
||
|
+ Env OCFT_check_nic=$OCFT_target_nic
|
||
|
+ Env OCFT_check_prefix=$OCFT_target_prefix
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+ Include check_ip_assigned
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.17
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask (base netmask < assigned netmask)"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# Include check_ip_assigned
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.18
|
||
|
+# This use case is now valid. It was not allowed until v3.9.2.
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
+# Include prepare
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# Include check_ip_assigned
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+
|
||
|
+# CASE No.19
|
||
|
+#
|
||
|
+#CASE "force to use the specified nic and cidr_netmask (base netmask > assigned netmask)"
|
||
|
+# Include prepare
|
||
|
+# Include base_ip_removed
|
||
|
+# Env OCF_RESKEY_nic=$OCFT_force_nic
|
||
|
+# Env OCF_RESKEY_cidr_netmask=$OCFT_force_prefix2
|
||
|
+# Env OCFT_check_nic=$OCFT_force_nic
|
||
|
+# Env OCFT_check_prefix=$OCFT_force_prefix2
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# Include check_ip_assigned
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# Include check_ip_removed
|
||
|
+# Include base_ip_assigned
|
||
|
+
|
||
|
diff --git a/tools/ocft/fedora/IPsrcaddr b/tools/ocft/fedora/IPsrcaddr
|
||
|
new file mode 100644
|
||
|
index 0000000..934801d
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/IPsrcaddr
|
||
|
@@ -0,0 +1,61 @@
|
||
|
+# IPsrcaddr
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent IPsrcaddr
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ipaddress=$(ip addr | grep "inet " | tail -n 1 | sed "s/\// /g" | awk '{print $2}')
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_ipaddress'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_ipaddress
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_ipaddress'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ipaddress=not_ip_address
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/fedora/SendArp b/tools/ocft/fedora/SendArp
|
||
|
new file mode 100644
|
||
|
index 0000000..adae63e
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/SendArp
|
||
|
@@ -0,0 +1,73 @@
|
||
|
+# SendArp
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent SendArp
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ HangTimeout 15
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_ip=127.0.0.1
|
||
|
+ Env OCF_RESKEY_nic=eth0
|
||
|
+ Env OCF_RESKEY_background=false
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_ip
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_ip'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_ip=not_ip_address
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nic
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: set invalid 'OCF_RESKEY_nic'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nic=not_nic
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/fedora/Xinetd b/tools/ocft/fedora/Xinetd
|
||
|
new file mode 100644
|
||
|
index 0000000..e26f495
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/Xinetd
|
||
|
@@ -0,0 +1,62 @@
|
||
|
+# Xinetd
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent Xinetd
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage xinetd
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ service xinetd start
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ service xinetd stop
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_service=echo-stream
|
||
|
+
|
||
|
+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: unset 'OCF_RESKEY_protocol'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_service
|
||
|
+ 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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/fedora/apache b/tools/ocft/fedora/apache
|
||
|
new file mode 100644
|
||
|
index 0000000..23cce28
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/apache
|
||
|
@@ -0,0 +1,81 @@
|
||
|
+# apache
|
||
|
+# make sure that your apache configuration loads mod_status
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent apache
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage httpd
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+
|
||
|
+ cat << END >> /var/www/html/index.html
|
||
|
+<html>
|
||
|
+ <body>My Test Site</body>
|
||
|
+ </html>
|
||
|
+END
|
||
|
+
|
||
|
+ cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.bu
|
||
|
+ cat << END >> /etc/httpd/conf/httpd.conf
|
||
|
+<Location /server-status>
|
||
|
+ SetHandler server-status
|
||
|
+ Order deny,allow
|
||
|
+ Deny from all
|
||
|
+ Allow from 127.0.0.1
|
||
|
+</Location>
|
||
|
+END
|
||
|
+
|
||
|
+CLEANUP-AGENT
|
||
|
+ mv -f /etc/httpd/conf/httpd.conf.bu /etc/httpd/conf/httpd.conf
|
||
|
+ rm -f /var/www/html/index.html
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: set non-existing OCF_RESKEY_statusurl"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_statusurl="yoyoyoyo"
|
||
|
+ AgentRun start OCF_ERR_GENERIC
|
||
|
+
|
||
|
+CASE "check base env: set non-existing OCF_RESKEY_configfile"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_configfile="/yoyoyoyo/nosuchfile"
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/fedora/mysql b/tools/ocft/fedora/mysql
|
||
|
new file mode 100644
|
||
|
index 0000000..c03be4f
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/mysql
|
||
|
@@ -0,0 +1,76 @@
|
||
|
+# mysql
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent mysql
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage mysql
|
||
|
+ InstallPackage mysql-server
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+ Env OCF_RESKEY_enable_creation=1
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_binary=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "check lib file"
|
||
|
+ Include prepare
|
||
|
+ Bash chmod u-w /var/lib/mysql
|
||
|
+ BashAtExit chmod u+w /var/lib/mysql
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "non-existent user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_user=no_user
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "invalid user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_user=nobody
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/fedora/nfsserver b/tools/ocft/fedora/nfsserver
|
||
|
new file mode 100644
|
||
|
index 0000000..5eadff4
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/nfsserver
|
||
|
@@ -0,0 +1,74 @@
|
||
|
+# nfsserver
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent nfsserver
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage nfs-utils
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+CASE-BLOCK required_args
|
||
|
+ Env OCF_RESKEY_nfs_ip=127.0.0.1
|
||
|
+ Env OCF_RESKEY_nfs_shared_infodir=/var/lib/nfs
|
||
|
+ Env OCF_RESKEY_nfs_init_script=/etc/init.d/nfs
|
||
|
+
|
||
|
+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_nfs_init_script'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nfs_init_script=no_such_script
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nfs_ip'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nfs_ip
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: unset 'OCF_RESKEY_nfs_shared_infodir'"
|
||
|
+ Include prepare
|
||
|
+ Unenv OCF_RESKEY_nfs_shared_infodir
|
||
|
+ AgentRun start OCF_ERR_CONFIGURED
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_nfs_notify_cmd'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_nfs_notify_cmd=no_such_program
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 with running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "monitor with not running"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/fedora/pgsql b/tools/ocft/fedora/pgsql
|
||
|
new file mode 100644
|
||
|
index 0000000..fd61ee9
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/pgsql
|
||
|
@@ -0,0 +1,72 @@
|
||
|
+# pgsql
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent pgsql
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage postgresql-server
|
||
|
+ HangTimeout 20
|
||
|
+
|
||
|
+SETUP-AGENT
|
||
|
+ service postgresql initdb > /dev/null 2>&1
|
||
|
+ /etc/init.d/postgresql start
|
||
|
+ /etc/init.d/postgresql stop
|
||
|
+
|
||
|
+CASE-BLOCK crm_setting
|
||
|
+ Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare
|
||
|
+ Include crm_setting
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+CASE "check base env"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "check base env: invalid 'OCF_RESKEY_pgctl'"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgctl=no_such
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+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 "running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun start
|
||
|
+ AgentRun monitor OCF_SUCCESS
|
||
|
+
|
||
|
+CASE "not running monitor"
|
||
|
+ Include prepare
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+
|
||
|
+CASE "unimplemented command"
|
||
|
+ Include prepare
|
||
|
+ AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
+
|
||
|
+CASE "non-existent user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgdba=no_user
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+
|
||
|
+CASE "invalid user"
|
||
|
+ Include prepare
|
||
|
+ Env OCF_RESKEY_pgdba=nobody
|
||
|
+ AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/fedora/tomcat b/tools/ocft/fedora/tomcat
|
||
|
new file mode 100644
|
||
|
index 0000000..2cd5ae1
|
||
|
--- /dev/null
|
||
|
+++ b/tools/ocft/fedora/tomcat
|
||
|
@@ -0,0 +1,72 @@
|
||
|
+# tomcat
|
||
|
+#
|
||
|
+# NOTE: Clean up $catalina_home/logs before running this test
|
||
|
+# otherwise creating the pid/log files may fail
|
||
|
+# in the test case with a different user.
|
||
|
+
|
||
|
+CONFIG
|
||
|
+ Agent tomcat
|
||
|
+ AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
+ InstallPackage tomcat
|
||
|
+ HangTimeout 120
|
||
|
+
|
||
|
+VARIABLE
|
||
|
+ # Adjust accrding to your configuration
|
||
|
+ catalina_home=/usr/share/tomcat
|
||
|
+ java_home=/usr/lib/jvm/jre-openjdk
|
||
|
+
|
||
|
+CASE-BLOCK required_args_tomcat
|
||
|
+ Env OCF_RESKEY_catalina_home=${catalina_home}
|
||
|
+ Env OCF_RESKEY_java_home=${java_home}
|
||
|
+
|
||
|
+CASE-BLOCK args_clear
|
||
|
+ Unenv OCF_RESKEY_catalina_home
|
||
|
+ Unenv OCF_RESKEY_tomcat_user
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+
|
||
|
+CASE-BLOCK default_status
|
||
|
+ AgentRun stop
|
||
|
+
|
||
|
+CASE-BLOCK prepare_tomcat
|
||
|
+ Include required_args_tomcat
|
||
|
+ Include default_status
|
||
|
+
|
||
|
+# Test CASE
|
||
|
+#
|
||
|
+#CASE "normal start tomcat require_args (user:user)"
|
||
|
+# Include prepare_tomcat
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# AgentRun monitor OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# AgentRun monitor OCF_NOT_RUNNING
|
||
|
+# Include args_clear
|
||
|
+
|
||
|
+#CASE "normal start tomcat require_args (user:root)"
|
||
|
+# Include prepare_tomcat
|
||
|
+# Unenv OCF_RESKEY_tomcat_user
|
||
|
+# AgentRun start OCF_SUCCESS
|
||
|
+# AgentRun monitor OCF_SUCCESS
|
||
|
+# AgentRun stop OCF_SUCCESS
|
||
|
+# AgentRun monitor OCF_NOT_RUNNING
|
||
|
+# Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no catalina_home"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Unenv OCF_RESKEY_catalina_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no java_home"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Unenv OCF_RESKEY_java_home
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
+CASE "error start tomcat no java command"
|
||
|
+ Include prepare_tomcat
|
||
|
+ Env OCF_RESKEY_java_home=/var
|
||
|
+ AgentRun start OCF_ERR_INSTALLED
|
||
|
+ AgentRun stop OCF_SUCCESS
|
||
|
+ AgentRun monitor OCF_NOT_RUNNING
|
||
|
+ Include args_clear
|
||
|
+
|
||
|
diff --git a/tools/ocft/iscsi b/tools/ocft/iscsi
|
||
|
deleted file mode 100644
|
||
|
index c1325a1..0000000
|
||
|
--- a/tools/ocft/iscsi
|
||
|
+++ /dev/null
|
||
|
@@ -1,82 +0,0 @@
|
||
|
-# iscsi
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent iscsi
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage open-iscsi
|
||
|
- InstallPackage iscsitarget
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-VARIABLE
|
||
|
- OCFT_disk=/var/run/resource-agents/ocft-iscsi
|
||
|
- OCFT_target="iqn.2011-03.ocft.localhost:disk0"
|
||
|
- OCFT_portal="127.0.0.1:3260"
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- dd if=/dev/zero of=$OCFT_disk bs=1024k count=1 2>/dev/null
|
||
|
- echo Target $OCFT_target >> /etc/ietd.conf
|
||
|
- echo " Lun 0 Path=$OCFT_disk,Type=fileio" >> /etc/ietd.conf
|
||
|
- /etc/init.d/iscsitarget start
|
||
|
- /etc/init.d/open-iscsi start
|
||
|
- /etc/init.d/iscsitarget restart
|
||
|
-
|
||
|
-CLEANUP-AGENT
|
||
|
- rm -f $OCFT_disk
|
||
|
- sed -i "/^Target $OCFT_target/,+1d" /etc/ietd.conf
|
||
|
-
|
||
|
-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
|
||
|
-
|
||
|
diff --git a/tools/ocft/mysql b/tools/ocft/mysql
|
||
|
deleted file mode 100644
|
||
|
index 27fcb58..0000000
|
||
|
--- a/tools/ocft/mysql
|
||
|
+++ /dev/null
|
||
|
@@ -1,77 +0,0 @@
|
||
|
-# mysql
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent mysql
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage mysql
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- /etc/init.d/mysql start
|
||
|
- /etc/init.d/mysql stop
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_binary=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-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 "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "check lib file"
|
||
|
- Include prepare
|
||
|
- Bash chmod u-w /var/lib/mysql
|
||
|
- BashAtExit chmod u+w /var/lib/mysql
|
||
|
- AgentRun start OCF_ERR_PERM
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-CASE "non-existent user"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_user=no_user
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "invalid user"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_user=nobody
|
||
|
- AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/mysql-proxy b/tools/ocft/mysql-proxy
|
||
|
deleted file mode 100644
|
||
|
index e16d52b..0000000
|
||
|
--- a/tools/ocft/mysql-proxy
|
||
|
+++ /dev/null
|
||
|
@@ -1,83 +0,0 @@
|
||
|
-# mysql-proxy
|
||
|
-# by r.bhatia@ipax.at
|
||
|
-#
|
||
|
-# test cases (to implement):
|
||
|
-#
|
||
|
-# * /usr/sbin/ocf-tester -n mp -o binary="/usr/sbin/mysql-proxy" -o defaults_file="" -o parameters="--proxy-skip-profiling" \
|
||
|
-# -o admin_address="127.0.0.1:4041" -o admin_username="root" -o admin_password="la" -o admin_lua_script="/usr/lib/mysql-proxy/lua/admin.lua" \
|
||
|
-# -o proxy_backend_addresses="192.168.100.200:42006" -o proxy_address="/var/run/mysqld/mysqld.sock" /usr/lib/ocf/resource.d/heartbeat/mysql-proxy
|
||
|
-#
|
||
|
-# * OCF_CHECK_LEVEL 20 check
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent mysql-proxy
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat/
|
||
|
- InstallPackage mysql-proxy
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- # nothing
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
- Env OCF_RESKEY_binary=/tmp/mysql-proxy
|
||
|
- Env OCF_RESKEY_admin_username=root
|
||
|
- Env OCF_RESKEY_admin_password=test123
|
||
|
- Env OCF_RESKEY_admin_lua_script=/usr/lib/mysql-proxy/lua/admin.lua
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Bash [ ! -x /tmp/mysql-proxy ] && ln -s `which mysql-proxy` /tmp/mysql-proxy || true
|
||
|
- Include crm_setting
|
||
|
-
|
||
|
-CASE-BLOCK teardown
|
||
|
- AgentRun stop
|
||
|
- BashAtExit rm -f /tmp/mysql-proxy
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include teardown
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_binary=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
- BashAtExit rm -f /tmp/mysql-proxy
|
||
|
-
|
||
|
-CASE "normal start"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include teardown
|
||
|
-
|
||
|
-CASE "normal stop"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
- Include teardown
|
||
|
-
|
||
|
-CASE "double start"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
- Include teardown
|
||
|
-
|
||
|
-CASE "double stop"
|
||
|
- Include prepare
|
||
|
- AgentRun stop OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
- Include teardown
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/named b/tools/ocft/named
|
||
|
deleted file mode 100644
|
||
|
index 90a4351..0000000
|
||
|
--- a/tools/ocft/named
|
||
|
+++ /dev/null
|
||
|
@@ -1,69 +0,0 @@
|
||
|
-#named
|
||
|
-
|
||
|
-# To work properly this test requires that standard bind and bin-utils
|
||
|
-# packages installed.
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent named
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage bind
|
||
|
- InstallPackage bind-utils
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- /etc/init.d/named start
|
||
|
- /etc/init.d/named stop
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_named'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_named=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-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 "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-CASE "non-existent user"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_named_user=no_user
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
diff --git a/tools/ocft/nfsserver b/tools/ocft/nfsserver
|
||
|
deleted file mode 100644
|
||
|
index cd73164..0000000
|
||
|
--- a/tools/ocft/nfsserver
|
||
|
+++ /dev/null
|
||
|
@@ -1,75 +0,0 @@
|
||
|
-# nfsserver
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent nfsserver
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage nfs-kernel-server
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_nfs_init_script=/etc/init.d/nfsserver
|
||
|
- Env OCF_RESKEY_nfs_ip=127.0.0.1
|
||
|
- Env OCF_RESKEY_nfs_shared_infodir=/var/lib/nfs
|
||
|
- Env OCF_RESKEY_nfs_notify_cmd=/usr/sbin/sm-notify
|
||
|
-
|
||
|
-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_nfs_init_script'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nfs_init_script=no_such_script
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_nfs_ip'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_nfs_ip
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_nfs_shared_infodir'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_nfs_shared_infodir
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_nfs_notify_cmd'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_nfs_notify_cmd=no_such_program
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/oracle b/tools/ocft/oracle
|
||
|
deleted file mode 100644
|
||
|
index 6f145c7..0000000
|
||
|
--- a/tools/ocft/oracle
|
||
|
+++ /dev/null
|
||
|
@@ -1,81 +0,0 @@
|
||
|
-# oracle
|
||
|
-# (based on db2)
|
||
|
-#
|
||
|
-# Created on an SLE11SP2 running oracle 11g
|
||
|
-# database sid is orcl
|
||
|
-# adapt this in set_testenv below
|
||
|
-# TODO: need oracle expert to break it, then test it
|
||
|
-#
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent oracle
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- HangTimeout 40
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- # nothing
|
||
|
-
|
||
|
-CASE-BLOCK set_testenv
|
||
|
- Env OCFT_sid=orcl
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_sid=$OCFT_sid
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=30000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include set_testenv
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: no 'OCF_RESKEY_sid'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_sid=
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_home'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_home=/no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-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 "started: monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not started: monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "try different ipcrm method"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_ipcrm=none
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
diff --git a/tools/ocft/pgsql b/tools/ocft/pgsql
|
||
|
deleted file mode 100644
|
||
|
index 9944b09..0000000
|
||
|
--- a/tools/ocft/pgsql
|
||
|
+++ /dev/null
|
||
|
@@ -1,71 +0,0 @@
|
||
|
-# pgsql
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent pgsql
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage postgresql-server
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- /etc/init.d/postgresql start
|
||
|
- /etc/init.d/postgresql stop
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_pgctl'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_pgctl=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-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 "running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "not running monitor"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
-
|
||
|
-CASE "non-existent user"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_pgdba=no_user
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "invalid user"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_pgdba=nobody
|
||
|
- AgentRun start OCF_ERR_PERM
|
||
|
diff --git a/tools/ocft/portblock b/tools/ocft/portblock
|
||
|
deleted file mode 100644
|
||
|
index 3475c63..0000000
|
||
|
--- a/tools/ocft/portblock
|
||
|
+++ /dev/null
|
||
|
@@ -1,69 +0,0 @@
|
||
|
-# portblock
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent portblock
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage iptables
|
||
|
- HangTimeout 15
|
||
|
-
|
||
|
-CASE-BLOCK required_args
|
||
|
- Env OCF_RESKEY_protocol=tcp
|
||
|
- Env OCF_RESKEY_portno=80
|
||
|
- Env OCF_RESKEY_action=block
|
||
|
-
|
||
|
-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: unset 'OCF_RESKEY_protocol'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_protocol
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_portno'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_portno
|
||
|
- AgentRun start OCF_ERR_CONFIGURED
|
||
|
-
|
||
|
-CASE "check base env: unset 'OCF_RESKEY_action'"
|
||
|
- Include prepare
|
||
|
- Unenv OCF_RESKEY_action
|
||
|
- 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 with running"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "monitor with not running"
|
||
|
- Include prepare
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
diff --git a/tools/ocft/postfix b/tools/ocft/postfix
|
||
|
deleted file mode 100644
|
||
|
index f17e968..0000000
|
||
|
--- a/tools/ocft/postfix
|
||
|
+++ /dev/null
|
||
|
@@ -1,102 +0,0 @@
|
||
|
-# postfix
|
||
|
-# by r.bhatia@ipax.at
|
||
|
-#
|
||
|
-# test cases (to implement):
|
||
|
-#
|
||
|
-# * /usr/sbin/ocf-tester -n post1 /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
-# * /usr/sbin/ocf-tester -n post2 -o binary="/usr/sbin/postfix" \
|
||
|
-# -o config_dir="" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
-# * /usr/sbin/ocf-tester -n post3 -o binary="/usr/sbin/postfix" \
|
||
|
-# -o config_dir="/etc/postfix" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $? -> DONE
|
||
|
-# * /usr/sbin/ocf-tester -n post4 -o binary="/usr/sbin/postfix" \
|
||
|
-# -o config_dir="/root/postfix/" /usr/lib/ocf/resource.d/heartbeat/postfix; echo $?
|
||
|
-
|
||
|
-CONFIG
|
||
|
- Agent postfix
|
||
|
- AgentRoot /usr/lib/ocf/resource.d/heartbeat
|
||
|
- InstallPackage postfix
|
||
|
- HangTimeout 20
|
||
|
-
|
||
|
-SETUP-AGENT
|
||
|
- # nothing
|
||
|
-
|
||
|
-CASE-BLOCK crm_setting
|
||
|
- Env OCF_RESKEY_CRM_meta_timeout=15000
|
||
|
- Env OCF_RESKEY_CRM_meta_interval=10000
|
||
|
-
|
||
|
-CASE-BLOCK default_status
|
||
|
- AgentRun stop
|
||
|
-
|
||
|
-CASE-BLOCK prepare
|
||
|
- Include crm_setting
|
||
|
- Include default_status
|
||
|
-
|
||
|
-CASE "check base env"
|
||
|
- Include prepare
|
||
|
- AgentRun start OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_binary'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_binary=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "check base env: invalid 'OCF_RESKEY_config_dir'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_config_dir=no_such
|
||
|
- AgentRun start OCF_ERR_INSTALLED
|
||
|
-
|
||
|
-CASE "check base env: 'OCF_RESKEY_binary'"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_binary=/usr/sbin/postfix
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: 'OCF_RESKEY_config_dir' without trailing slash"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_config_dir="/etc/postfix"
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "check base env: 'OCF_RESKEY_config_dir' with trailing slash"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_config_dir="/etc/postfix/"
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-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 a running resource"
|
||
|
- Include prepare
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "(initial) probe a stopped resource"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_CRM_meta_interval=0
|
||
|
- AgentRun monitor OCF_NOT_RUNNING
|
||
|
-
|
||
|
-CASE "(re-)probe a running resource"
|
||
|
- Include prepare
|
||
|
- Env OCF_RESKEY_CRM_meta_interval=0
|
||
|
- AgentRun start
|
||
|
- AgentRun monitor OCF_SUCCESS
|
||
|
-
|
||
|
-CASE "unimplemented command"
|
||
|
- Include prepare
|
||
|
- AgentRun no_cmd OCF_ERR_UNIMPLEMENTED
|
||
|
--
|
||
|
1.7.1
|
||
|
|