#!/bin/sh
# DRBDPrimary offline entry point
# Expects DRBD Resource Name in ResName attribute
#
# License: GPL-2.0
# Copyright (C) 2017 LINBIT HA-Solutions GmbH
# Roland Kammerer <roland.kammerer@linbit.com>
# Lars Ellenberg <lars.ellenberg@linbit.com>
###

LINBITvcsag_bin=/opt/LINBITvcsag/bin
drbd_inc=$LINBITvcsag_bin/drbd_inc.sh

. $drbd_inc || { >&2 echo "$0: Failed to source $drbd_inc"; exit 1; }

drbd_resource_state=$( ${DRBDSETUP} events2 --now "${DRBDRESNAME}" )
VCSAG_LOGDBG_MSG 3 "drbd_resource_state: $drbd_resource_state"

role_from_drbd_state "$drbd_resource_state"
role=$?

case $role in
	$DRBD_ROLE_UNNKOWN)
		VCSAG_LOGDBG_MSG 1 "apparently not even up" 0
		;;
	$DRBD_ROLE_SEC)
		VCSAG_LOGDBG_MSG 1 "already secondary" 0
		;;
	$DRBD_ROLE_PRI)
		VCSAG_LOGDBG_MSG 1 "trying to demote" 0
		${DRBDADM} secondary "${DRBDRESNAME}" || exit $VCSAG_EP_FAILED
		;;
esac
exit $VCSAG_EP_DONE
