84 lines
1.8 KiB
Bash
Executable file
84 lines
1.8 KiB
Bash
Executable file
#!/bin/bash
|
|
#
|
|
# helma init script (written for debian, but should be rather generic)
|
|
# needs helma.conf, preferrably in /etc/helma.conf
|
|
#
|
|
# andreas bolka, 2003-11-30
|
|
#
|
|
|
|
HELMA_CONFIG=/etc/helma.conf
|
|
|
|
###
|
|
|
|
# Check for existence of needed config file and source it
|
|
if [ -r $HELMA_CONFIG ]; then
|
|
source $HELMA_CONFIG
|
|
else
|
|
echo "Can't read config file $HELMA_CONFIG"
|
|
exit 6
|
|
fi
|
|
|
|
# Check for missing files and directories
|
|
if [ ! -x $JAVA_BIN ]; then
|
|
echo "Config error: JAVA_BIN $JAVA_BIN not found or not executable"
|
|
exit 5
|
|
fi
|
|
if [ ! -r $HELMA_INSTALL/launcher.jar ]; then
|
|
echo "Config error: $HELMA_INSTALL/launcher.jar not found or not readable"
|
|
exit 5
|
|
fi
|
|
if [ ! -d $HELMA_HOME ]; then
|
|
echo "Config error: HELMA_HOME $HELMA_HOME not found"
|
|
exit 5
|
|
fi
|
|
|
|
# local settins
|
|
RUN_CMD="sudo -u $HELMA_USER $JAVA_BIN"
|
|
RUN_ARGS="$JAVA_OPTS -jar $HELMA_INSTALL/launcher.jar -h $HELMA_HOME $HELMA_ARGS"
|
|
|
|
case "$1" in
|
|
start)
|
|
echo -n "Starting $HELMA_SERVICE: "
|
|
|
|
if [ -f $HELMA_PID ]; then
|
|
echo "$HELMA_SERVICE (pid `cat $HELMA_PID`) already running"
|
|
exit 1
|
|
fi
|
|
|
|
cd $HELMA_HOME
|
|
nohup $RUN_CMD $RUN_ARGS > $HELMA_LOG 2>&1 &
|
|
echo $! > $HELMA_PID
|
|
echo "$HELMA_SERVICE (pid `cat $HELMA_PID`) started."
|
|
;;
|
|
|
|
stop)
|
|
echo -n "Shutting down $HELMA_SERVICE: "
|
|
if [ ! -f $HELMA_PID ]; then
|
|
echo "$HELMA_SERVICE not running"
|
|
exit 1
|
|
fi
|
|
|
|
PID=`cat $HELMA_PID 2>/dev/null`
|
|
echo -n "$HELMA_SERVICE (pid $PID) "
|
|
kill $PID 2>/dev/null; sleep 2; kill -9 $PID 2>/dev/null
|
|
rm -f $HELMA_PID
|
|
echo "stopped."
|
|
;;
|
|
|
|
restart)
|
|
$0 stop && $0 start
|
|
;;
|
|
|
|
reload)
|
|
echo -n "Reloading $HELMA_SERVICE: $HELMA_SERVICE"
|
|
touch $HELMA_HOME/server.properties
|
|
touch $HELMA_HOME/apps.properties
|
|
echo "."
|
|
;;
|
|
|
|
*)
|
|
echo "Usage: /etc/init.d/helma start|stop|restart|reload"
|
|
exit 1
|
|
;;
|
|
esac
|
|
exit 0
|