diff --git a/extra/resources/Fencing b/extra/resources/Fencing deleted file mode 100644 index bb82eb8c3f..0000000000 --- a/extra/resources/Fencing +++ /dev/null @@ -1,176 +0,0 @@ -#!/bin/sh -# -# -# Fencing OCF RA. Does nothing but wait a few seconds, can be -# configured to fail occassionally. -# -# Copyright (c) 2004 SUSE LINUX AG, Lars Marowsky-Br�e -# All Rights Reserved. -# -# This program is free software; you can redistribute it and/or modify -# it under the terms of version 2 of the GNU General Public License as -# published by the Free Software Foundation. -# -# This program is distributed in the hope that it would be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. -# -# Further, this software is distributed without any warranty that it is -# free of the rightful claim of any third person regarding infringement -# or the like. Any license provided herein, whether implied or -# otherwise, applies only to this software file. Patent licenses, if -# any, provided herein do not apply to combinations of this program with -# other software, or any other product whatsoever. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write the Free Software Foundation, -# Inc., 59 Temple Place - Suite 330, Boston MA 02111-1307, USA. -# - -####################################################################### -# Initialization: - -. ${OCF_ROOT}/resource.d/heartbeat/.ocf-shellfuncs - -####################################################################### - -meta_data() { - cat <<END -<?xml version="1.0"?> -<!DOCTYPE resource-agent SYSTEM "ra-api-1.dtd"> -<resource-agent name="Fencing" version="0.9"> -<version>1.0</version> - -<longdesc lang="en"> -This is a Fencing Resource Agent. It does absolutely nothing except -keep track of whether its running or not. -Its purpose in life is for testing and to serve as a template for RA writers. -</longdesc> -<shortdesc lang="en">Fencing resource agent</shortdesc> - -<parameters> - -<parameter name="agent" unique="0"> -<longdesc lang="en"> -Fencing agent to use, possible agents are listed in /usr/sbin with the prefix 'fence_' -</longdesc> -<shortdesc lang="en">Fencing agent to use</shortdesc> -<content type="string" default="none" /> -</parameter> - -<parameter name="plugin" unique="0"> -<longdesc lang="en"> -If agent was set to fence_legacy, then which module should be used. -Possible modules are listed with: stonith -L -</longdesc> -<shortdesc lang="en">Legacy module, if any, to use</shortdesc> -<content type="string" default="none" /> -</parameter> - -</parameters> - -<actions> -<action name="start" timeout="90" /> -<action name="stop" timeout="100" /> -<action name="monitor" timeout="20" interval="10" depth="0" start-delay="0" /> -<action name="meta-data" timeout="5" /> -<action name="validate-all" timeout="30" /> -</actions> -</resource-agent> -END -} - -####################################################################### - -# don't exit on TERM, to test that lrmd makes sure that we do exit -trap sigterm_handler TERM -sigterm_handler() { - ocf_log info "They use TERM to bring us down. No such luck." - return -} - -fencing_usage() { - cat <<END -usage: $0 {start|stop|monitor|validate-all|meta-data} - -Expects to have a fully populated OCF RA-compliant environment set. -END -} - -fencing_start() { - fencing_monitor - if [ $? = $OCF_SUCCESS ]; then - return $OCF_SUCCESS - fi - args=`env | grep OCF_RESKEY | grep -v CRM_meta | awk -F= '{print $1}' | sed s:OCF_RESKEY_::` - cmd="stonith_admin -R $OCF_RESOURCE_INSTANCE -a $OCF_RESKEY_agent" - for arg in $args; do - cmd="$cmd -e $arg" - done - - $cmd; rc=$? - ocf_log debug "Command ($rc): $cmd" - - fencing_monitor - if [ $? = $OCF_SUCCESS ]; then - return $OCF_SUCCESS - fi - return $OCF_NOT_RUNNING -} - -fencing_stop() { - stonith_admin -D $OCF_RESOURCE_INSTANCE - return $OCF_SUCCESS -} - -fencing_monitor() { - stonith_admin -Q $OCF_RESOURCE_INSTANCE; rc=$? - case $rc in - 0) return $OCF_SUCCESS;; - esac - return $OCF_NOT_RUNNING -} - -fencing_validate() { - - case ${OCF_RESKEY_CRM_meta_globally_unique} in - true|True|TRUE|yes|Yes|YES|1) - ocf_log err "${OCF_RESOURCE_INSTANCE} can only be run as a non-unique clone" - return $OCF_ERR_ARGS;; - esac - return $OCF_SUCCESS -} - -: ${OCF_RESKEY_CRM_meta_interval=0} -: ${OCF_RESKEY_CRM_meta_globally_unique:="false"} - -if [ "x$OCF_RESKEY_state" = "x" ]; then - if [ ${OCF_RESKEY_CRM_meta_globally_unique} = "false" ]; then - state="${HA_VARRUN}/Fencing-${OCF_RESOURCE_INSTANCE}.state" - - # Strip off the trailing clone marker - OCF_RESKEY_state=`echo $state | sed s/:[0-9][0-9]*\.state/.state/` - else - OCF_RESKEY_state="${HA_VARRUN}/Fencing-${OCF_RESOURCE_INSTANCE}.state" - fi -fi - -case $__OCF_ACTION in -meta-data) meta_data - exit $OCF_SUCCESS - ;; -start) fencing_validate; fencing_start;; -stop) fencing_stop;; -monitor) fencing_monitor;; -validate-all) fencing_validate;; -usage|help) fencing_usage - exit $OCF_SUCCESS - ;; -*) fencing_usage - exit $OCF_ERR_UNIMPLEMENTED - ;; -esac -rc=$? -ocf_log debug "${OCF_RESOURCE_INSTANCE} $__OCF_ACTION : $rc" -exit $rc -