blob: ea5b26adda86ef671d340da698298e6e5ed2605d [file] [log] [blame]
#!/usr/bin/env bash
prefix=@prefix@
DEPLOY_DIR=@localstatedir@/@PACKAGE@/deploy
# Pull in deploy specific options.
test -e ${DEPLOY_DIR}/mesos-deploy-env.sh && \
. ${DEPLOY_DIR}/mesos-deploy-env.sh
# Find the list of slaves.
SLAVES_FILE="${DEPLOY_DIR}/slaves"
if test ! -e ${SLAVES_FILE}; then
echo "Failed to find ${SLAVES_FILE}"
exit 1
fi
# The expected format of the SLAVES_FILE is one IP/host per line.
# Additionally, you can temporarily comment out a host or IP by placing a hash
# character '#' as the first character of the line. As an example, changing
# this MASTERS_FILE:
#
# 10.1.1.1
# 10.1.1.2
#
# to this one:
#
# 10.1.1.1
# #10.1.1.2
#
# removes the 10.1.1.2 IP address from being used. Note that this does NOT
# support comments through the end of line, like this:
#
# 10.1.1.1 # my first IP
# 10.1.1.2 # my second IP
#
SLAVES=`cat ${SLAVES_FILE} | grep -v '^#'`
killall="killall"
# Add sudo if requested.
if test "x${DEPLOY_WITH_SUDO}" = "x1"; then
killall="sudo ${killall}"
fi
for slave in ${SLAVES}; do
echo "Stopping mesos-slave on ${slave}"
ssh ${SSH_OPTS} ${slave} "${killall} mesos-slave" &
sleep 0.1
done
wait # Wait for all the ssh's to finish.