X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=dist%2Fargeo-node%2Frpm%2Fusr%2Fsbin%2Fnodectl;h=fb1b5802a664316843d2edc06ab89e6eeefd0bcb;hb=bf345b84989cc9a2984bba4390ebdb349701ed8e;hp=26fe3eeafda7e3513894140ed12efbafa83cdddb;hpb=0b5ac8be533b993fc74e960c4cb32e461a92db84;p=lgpl%2Fargeo-commons.git diff --git a/dist/argeo-node/rpm/usr/sbin/nodectl b/dist/argeo-node/rpm/usr/sbin/nodectl index 26fe3eeaf..fb1b5802a 100755 --- a/dist/argeo-node/rpm/usr/sbin/nodectl +++ b/dist/argeo-node/rpm/usr/sbin/nodectl @@ -5,16 +5,19 @@ JVM=java # Directories and files CONF_DIR=/etc/$APP +CONF_DIRS=/etc/$APP/conf.d +BASE_POLICY_ALL=/usr/share/$APP/all.policy +BASE_CONFIG_INI=/usr/share/$APP/config.ini EXEC_DIR=/var/lib/$APP DATA_DIR=$EXEC_DIR/data CONF_RW=$EXEC_DIR/state +CONFIG_INI=$CONF_RW/config.ini LOG_DIR=/var/log/$APP LOG_FILE=$LOG_DIR/$APP.log RUN_DIR=/var/run/$APP PID_FILE=$RUN_DIR/$APP.pid -#SHUTDOWN_FILE=$RUN_DIR/$APP.shutdown OSGI_INSTALL_AREA=/usr/share/osgi/boot OSGI_FRAMEWORK=$OSGI_INSTALL_AREA/org.eclipse.osgi.jar @@ -27,29 +30,22 @@ fi RETVAL=0 start() { - if [ -f $PID_FILE ];then - PID=`cat $PID_FILE` - kill -0 $PID &> /dev/null - PID_EXISTS=$? - if [ $PID_EXISTS -eq 0 ]; then - echo $APP already running with pid $PID - RETVAL=1 - return $RETVAL - else - echo Old $APP process with pid $PID is dead, removing $PID_FILE - rm -f $PID_FILE - fi - fi + mkdir -p $CONF_RW + mkdir -p $DATA_DIR + chown -R $APP.APP $EXEC_DIR + + # Merge config files + echo ## Equinox configuration - Generated by /usr/sbin/nodectl > $CONFIG_INI + cat $BASE_CONFIG_INI >> $CONFIG_INI + cat $CONF_DIR/$APP.ini >> $CONFIG_INI + for file in `ls -v $CONF_DIRS/*.ini`; do + echo "\n# $file\n" >> $CONFIG_INI; + cat $file >> $CONFIG_INI + done; -# if [ ! -f $CONF_RW/config.ini ]; then - cp --preserve $CONF_DIR/config.ini $CONF_RW/config.ini -# fi -# touch $SHUTDOWN_FILE cd $EXEC_DIR $JVM \ -Dlog4j.configuration="file:$CONF_DIR/log4j.properties" \ - -Djava.security.manager= \ - -Djava.security.policy="file:$CONF_DIR/node.policy" \ $JAVA_OPTS -jar $OSGI_FRAMEWORK \ -configuration "$CONF_RW" \ -data "$DATA_DIR" @@ -77,7 +73,8 @@ stop() { fi # notifies application by removing the shutdown file - rm -f $SHUTDOWN_FILE +# rm -f $SHUTDOWN_FILE + kill $PID # wait 10 min for application to shutdown, then kill it TIMEOUT=$((10*60))