3 # Copyright 2012 GRNET S.A. All rights reserved.
5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions
9 # 1. Redistributions of source code must retain the above copyright
10 # notice, this list of conditions and the following disclaimer.
12 # 2. Redistributions in binary form must reproduce the above copyright
13 # notice, this list of conditions and the following disclaimer in the
14 # documentation and/or other materials provided with the distribution.
16 # THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
17 # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 # ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
20 # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
22 # OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
23 # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
24 # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
25 # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
28 # The views and conclusions contained in the software and documentation are
29 # those of the authors and should not be interpreted as representing official
30 # policies, either expressed or implied, of GRNET S.A.
33 # Init script for Aquarium
35 #-----------------------
36 # Supported environment variables
38 # JAVA_OPTS Runtime options for the JVM that runs Aquarium
39 # (default: -Xms1024M -Xmx4096M)
41 # AQUARIUM_PROP Java system properties understood by Aquarium
42 # (default: -Dlog4j.debug=true)
44 # AQUARIUM_OPTS Runtime options for Aquarium
47 # AQUARIUM_HOME Location of the top level Aquarium dir
49 #----------------------
53 # resolve links - $0 may be a softlink
56 while [ -h "$PRG" ]; do
58 link=`expr "$ls" : '.*-> \(.*\)$'`
59 if expr "$link" : '/.*' > /dev/null; then
62 PRG=`dirname "$PRG"`/"$link"
66 # Get standard environment variables
67 PRGDIR=`dirname "$PRG"`
69 # Only set supported environment variables if not already set
70 [ -z "$AQUARIUM_HOME" ] && AQUARIUM_HOME=`cd "$PRGDIR/.." >/dev/null; pwd`
71 [ -z "$AQUARIUM_PROP" ] && AQUARIUM_PROP="-Dlog4j.debug=true"
72 [ -z "$AQUARIUM_OPTS" ] && AQUARIUM_OPTS=""
73 [ -z "$JAVA_OPTS" ] && JAVA_OPTS="-Xms1024M -Xmx4096M"
76 AQMAIN=gr.grnet.aquarium.Main
77 PID=$AQUARIUM_HOME/bin/aquarium.pid
78 LIB=$AQUARIUM_HOME/lib
79 LOG=$AQUARIUM_HOME/logs/aquarium.log
80 CONF=$AQUARIUM_HOME/conf
82 # Check the application status
86 aqrunning=`ps -ef|grep java|grep aquarium`
87 if [ -z "$aqrunning" ]
90 echo "Aquarium running, but no pid file found"
101 # Starts the application. If "debug" is passed as argument, aquarium starts
107 echo "Aquarium is running"
111 echo "Starting Aquarium"
114 CLASSPATH=`find $LIB -type f|grep jar$|tr '\n' ':'|sed -e 's/\:$//'`
116 # load log4j from classpath
117 CLASSPATH=$CONF:$CLASSPATH
119 echo "Using CLASSPATH $CLASSPATH"
120 echo "Using AQUARIUM_HOME $AQUARIUM_HOME"
121 echo "Using MAIN $AQMAIN"
122 echo "Using AQUARIUM_PROP $AQUARIUM_PROP"
123 echo "Using JAVA_OPTS $JAVA_OPTS"
125 java $JAVA_OPTS -cp $CLASSPATH $AQUARIUM_PROP $AQMAIN >> $LOG 2>&1 &
130 # Stops the application
135 echo "Aquarium is not running"
139 # Kills the application process
140 echo -n "Stopping Aquarium: "
146 # Show the application status
151 echo "Aquarium is running (pid=$pid)"
153 echo "Aquarium is stopped"
157 # Main logic, a simple case to call functions
176 echo "Usage: $0 {start|stop|restart|status|debug}"
182 # vim: set sta sts=4 shiftwidth=4 sw=4 et ai :