#!/bin/sh

# License:  GNU General Public License (GPL)
# This script was based on mach_down
# It may be used along with hb_standby

#
#	This script will only work for a two machine setup...
#	More than that and you need to vote, or something...
#
#
. @sysconfdir@/ha.d/shellfuncs

: Now running $0: $*

standby_node=$HA_src
ha_log "info: XXXX standby node $standby_node"

#
#	In the case of nice_failback, we may know that we
#	already own these resources, but we ignore that fact
#	and take it over anyway, because getting that information
#	to us would require another environment variable or something
#	like that which would be a pain.
#
for groupkey in `$HA_NOARCHBIN/ResourceManager listkeys $standby_node`
do
  ha_log "info: Taking over resource group $groupkey"
  $HA_NOARCHBIN/ResourceManager takegroup $groupkey
done

# Be nice_failback compliant :)
# case 1 - part 2
#
# This code triggers actions inside heartbeat, because we receive our own
# resource messages as well as those sent by others...
#
# This code shouldn't be executed if we aren't running nice_failback...
#
#	The field info=mach_down tells heartbeat that the message is from us
#	so it can consider the takeover complete.
#
case $HA_NICEFAILBACK in
  [Yy]es)
    ha_log "info: $0: nice_failback: acquiring foreign resources"
  	ha_clustermsg <<-!MSG
	t=resource
	rsc_hold=foreign
	info=standby
	!MSG
    ;;
esac
