osgiboot: Improve ogi-service script
authorMathieu Baudier <mbaudier@argeo.org>
Sun, 6 Nov 2011 21:13:03 +0000 (21:13 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Sun, 6 Nov 2011 21:13:03 +0000 (21:13 +0000)
git-svn-id: https://svn.argeo.org/commons/trunk@4894 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

osgi/dist/osgi-boot/src/main/rpm/usr/sbin/osgi-service

index 7d1ad6e5cd447df9d9579446da11e9d8c551b1e2..6fbb1e41cdab9d9960e9c99c6733b1cfcd6ac862 100644 (file)
@@ -16,7 +16,8 @@ LIB_DIR=/usr/share/$APP/lib
 EXEC_DIR=/var/lib/$APP
 DATA_DIR=$EXEC_DIR/data
 CONF_RW=$EXEC_DIR/conf
-LOG_FILE=/var/log/$APP.log
+LOG_DIR=/var/log/$APP
+LOG_FILE=$LOG_DIR/$APP.log
 
 RUN_DIR=/var/run
 PID_FILE=$RUN_DIR/$APP.pid
@@ -28,10 +29,17 @@ OSGI_FRAMEWORK=$OSGI_INSTALL_AREA/org.eclipse.osgi.jar
 RETVAL=0
 
 start() {
-       cp $CONF_DIR/config.ini $CONF_RW/config.ini
+       if [ ! -d $LOG_DIR ];then
+               mkdir -m 0750 -p $LOG_DIR
+               touch $LOG_FILE
+               chown -R $APP.$APP $LOG_DIR
+       fi
+
+       cp --preserve $CONF_DIR/config.ini $CONF_RW/config.ini
        touch $SHUTDOWN_FILE
        cd $EXEC_DIR
-       $JVM \
+       # start as user $APP
+       sudo -u $APP $JVM \
                -Dosgi.bundles="org.argeo.osgi.boot.jar@start" \
                -Dargeo.osgi.bundles="$CONF_DIR/modules;in=*,$LIB_DIR;in=*" \
                -Dargeo.osgi.shutdownFile="$SHUTDOWN_FILE" \
@@ -51,6 +59,7 @@ stop() {
        if [ -f $PID_FILE ];then
                PID=`cat $PID_FILE`
        else
+               echo $APP is not running
                return $RETVAL
        fi
        rm -f $SHUTDOWN_FILE