#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
. /etc/conf.d/craftbukkit
save_stop() {
su -s /bin/bash -c "tmux send-keys 'save-off' C-m" craftbukkit
su -s /bin/bash -c "tmux send-keys 'save-all' C-m" craftbukkit
}
save_start() {
su -s /bin/bash -c "tmux send-keys 'save-on' C-m" craftbukkit
}
case "$1" in
start)
stat_busy "Starting craftbukkit daemon"
PID=`pgrep -f -n 'craftbukkit-0.0.1-SNAPSHOT.jar'`
if [ -z "$PID" ]; then
# RUN
su -s /bin/bash -c "tmux new-session -d 'cd ${WORKING_DIR}; java ${JAVA_ARGS} -jar /usr/share/java/craftbukkit/craftbukkit-0.0.1-SNAPSHOT.jar nogui'" craftbukkit
if [ $? -gt 0 ]; then
stat_fail
exit 1
else
add_daemon craftbukkit
stat_done
fi
else
stat_fail
exit 1
fi
;;
stop)
stat_busy "Stopping craftbukkit daemon"
PID=`pgrep -f -n 'craftbukkit-0.0.1-SNAPSHOT.jar'`
# KILL
[ ! -z "$PID" ] && kill $PID &> /dev/null
#
if [ $? -gt 0 ]; then
stat_fail
exit 1
else
rm_daemon craftbukkit
stat_done
fi
;;
restart)
$0 stop
sleep 3
$0 start
;;
backup)
stat_busy "Starting backup"
BACKUP_FILE="${BACKUP_DIR}/`date +%Y%m%d%H%M`.tar.gz"
su -s /bin/bash -c "mkdir -p ${BACKUP_DIR}" craftbukkit
save_stop
su -s /bin/bash -c "tar -czf ${BACKUP_FILE} ${WORLD_DIR}" craftbukkit
save_start
stat_done "Backup finished"
;;
*)
echo "usage: $0 {start|stop|restart}"
esac
exit 0