mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-10-14 16:20:57 +00:00
99 lines
2.5 KiB
Bash
Executable File
99 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# sailing Starts sailing services
|
|
#
|
|
# chkconfig: 2345 95 10
|
|
# description: Sailing contains all sailing services
|
|
|
|
# Source function library.
|
|
. /etc/init.d/functions
|
|
|
|
RETVAL=0
|
|
|
|
JAVA_START_INSTANCES="server"
|
|
GIT_REPOSITORY=/home/sailing/code
|
|
|
|
start_tmux() {
|
|
su - sailing -c "/home/sailing/bin/tmuxConsole.sh unattended"
|
|
success
|
|
}
|
|
|
|
start_servers() {
|
|
launch_httpd=false
|
|
VARS=`/opt/amazon/bin/ec2-metadata -d | sed "s/user-data\: //g" | grep -v "^not available$"`
|
|
for var in $VARS; do
|
|
echo "$var" | grep -q "^SERVER_NAME="
|
|
if [ "$?" != "0" ]; then
|
|
eval "export $var"
|
|
fi
|
|
echo "$var" | grep -q "^SERVER_PORT="
|
|
if [ "$?" != "0" ]; then
|
|
eval "export $var"
|
|
fi
|
|
echo "$var" | grep -q "^EVENT_ID="
|
|
if [ "$?" != "0" ]; then
|
|
eval "export $var"
|
|
fi
|
|
echo "$var" | grep -iq "^REPLICATE_ON_START=True"
|
|
if [ "$?" != "0" ]; then
|
|
launch_httpd=true
|
|
fi
|
|
done
|
|
if [ "$launch_httpd" = "true" ]; then
|
|
launch_httpd $SERVER_NAME $SERVER_PORT $EVENT_ID
|
|
fi
|
|
|
|
for conf in $JAVA_START_INSTANCES; do
|
|
echo "Checking for amazon update..."
|
|
su - sailing -c "cd /home/sailing/servers/$conf && $GIT_REPOSITORY/java/target/refreshInstance.sh auto-install" 2>/var/log/sailing.err >/var/log/sailing.out
|
|
echo "Starting Java server $conf"
|
|
su - sailing -c "cd /home/sailing/servers/$conf && ./start" 2>/var/log/sailing.err >/var/log/sailing.out
|
|
RETVAL=$?
|
|
[ $RETVAL -eq 0 ] && success || failure
|
|
done
|
|
}
|
|
|
|
stop_servers() {
|
|
for conf in $JAVA_START_INSTANCES; do
|
|
echo "Stopping Java server $conf"
|
|
su - sailing -c "cd /home/sailing/servers/$conf && ./stop"
|
|
RETVAL=$?
|
|
[ $RETVAL -eq 0 ] && success || failure
|
|
done
|
|
}
|
|
|
|
# launch_httpd(server_name, port, event_id)
|
|
launch_httpd() {
|
|
echo "launch_httpd($1, $2, $2)"
|
|
if [ -x /etc/init.d/httpd ]; then
|
|
server_name="`echo $1 | tr [A-Z] [a-z]`"
|
|
port="$2"
|
|
event_id="$3"
|
|
echo "Use Event $server_name.sapsailing.com \"$event_id\" 127.0.0.1 $port" >>/etc/httpd/conf.d/001-events.conf
|
|
echo "Launching httpd to map ${server_name}.sapsailing.com to event with ID $event_id with server running on local port $port..."
|
|
service httpd start
|
|
else
|
|
echo Can't launch httpd; start script doesn't seem to be installed at /etc/init.d/httpd
|
|
fi
|
|
}
|
|
|
|
# See how we were called.
|
|
case "$1" in
|
|
start)
|
|
start_servers
|
|
;;
|
|
stop)
|
|
stop_servers
|
|
;;
|
|
status)
|
|
status java
|
|
RETVAL=$?
|
|
;;
|
|
*)
|
|
echo $"Usage: $0 {start|status|stop}"
|
|
RETVAL=3
|
|
esac
|
|
|
|
exit $RETVAL
|
|
|