mirror of
https://github.com/YunoHost-Apps/ofbiz_ynh.git
synced 2024-09-03 19:46:33 +02:00
161 lines
3.6 KiB
Text
161 lines
3.6 KiB
Text
|
#!/bin/bash
|
||
|
#####################################################################
|
||
|
# Licensed to the Apache Software Foundation (ASF) under one
|
||
|
# or more contributor license agreements. See the NOTICE file
|
||
|
# distributed with this work for additional information
|
||
|
# regarding copyright ownership. The ASF licenses this file
|
||
|
# to you under the Apache License, Version 2.0 (the
|
||
|
# "License"); you may not use this file except in compliance
|
||
|
# with the License. You may obtain a copy of the License at
|
||
|
#
|
||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||
|
#
|
||
|
# Unless required by applicable law or agreed to in writing,
|
||
|
# software distributed under the License is distributed on an
|
||
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||
|
# KIND, either express or implied. See the License for the
|
||
|
# specific language governing permissions and limitations
|
||
|
# under the License.
|
||
|
#####################################################################
|
||
|
#
|
||
|
# ofbiz This shell script takes care of starting and stopping
|
||
|
# the OFBiz subsystem. This version is for Debian systems
|
||
|
#
|
||
|
# chkconfig: - 80 10
|
||
|
# description: OFBiz server
|
||
|
### BEGIN INIT INFO
|
||
|
# Provides: OFBiz ERP software
|
||
|
# Required-Start: $remote_fs $syslog
|
||
|
# Required-Stop: $remote_fs $syslog
|
||
|
# Default-Start: 2 3 4 5
|
||
|
# Default-Stop: 0 1 6
|
||
|
# Short-Description: Apache-OFBiz
|
||
|
# Description: OFBiz ERP Software
|
||
|
### END INIT INFO
|
||
|
|
||
|
# Paths - Edit for your locations
|
||
|
JAVA_BINARY=/usr/lib/jvm/java-7-openjdk-amd64/bin/java
|
||
|
OFBIZ_HOME=/opt/ofbiz
|
||
|
OFBIZ_LOG=$OFBIZ_HOME/runtime/logs/console.log
|
||
|
|
||
|
# VM Options
|
||
|
JAVA_VMOPTIONS="-Xms128M -Xmx512M -XX:MaxPermSize=512m"
|
||
|
|
||
|
# Java arguments
|
||
|
JAVA_ARGS="-jar ofbiz.jar"
|
||
|
|
||
|
# *nix user ofbiz should run as (you must create this user first)
|
||
|
OFBIZ_USER=YNH_USER_ADMIN
|
||
|
|
||
|
# OFBiz processes running
|
||
|
ofbizprocs() {
|
||
|
OFBIZ_PROCS=`/bin/ps h -o pid,args -C java | /bin/grep -e "$JAVA_ARGS" | /bin/egrep -o "^[[:space:]]*[[:digit:]]*"`
|
||
|
}
|
||
|
|
||
|
# Checking user...
|
||
|
checkuser() {
|
||
|
if [ "$USER" != "$OFBIZ_USER" ]; then
|
||
|
echo failure
|
||
|
echo
|
||
|
echo "Only users root or $OFBIZ_USER should start/stop the application"
|
||
|
exit 1
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
# Start OFBiz
|
||
|
start() {
|
||
|
echo -n "Starting OFBiz: "
|
||
|
checkuser
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" != "" ]; then
|
||
|
echo failure
|
||
|
echo
|
||
|
echo "OFBiz is already running..."
|
||
|
return 1
|
||
|
fi
|
||
|
|
||
|
# All clear
|
||
|
cd $OFBIZ_HOME
|
||
|
umask 007
|
||
|
/bin/rm -f $OFBIZ_LOG
|
||
|
$JAVA_BINARY $JAVA_VMOPTIONS $JAVA_ARGS >>$OFBIZ_LOG 2>>$OFBIZ_LOG&
|
||
|
echo success
|
||
|
return 0
|
||
|
}
|
||
|
|
||
|
|
||
|
# Stop OFBiz
|
||
|
stop() {
|
||
|
echo -n "Stopping OFBiz: "
|
||
|
checkuser
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" == "" ]; then
|
||
|
echo failure
|
||
|
echo
|
||
|
echo "OFBiz is not running..."
|
||
|
return 1
|
||
|
fi
|
||
|
|
||
|
|
||
|
# All clear
|
||
|
cd $OFBIZ_HOME
|
||
|
umask 007
|
||
|
$JAVA_BINARY $JAVA_VMOPTIONS $JAVA_ARGS -shutdown >>$OFBIZ_LOG
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" != "" ]; then
|
||
|
# Let's try to -TERM
|
||
|
/bin/kill -TERM $OFBIZ_PROCS
|
||
|
fi
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" != "" ]; then
|
||
|
# Let's try it the hard way!
|
||
|
/bin/kill -9 $OFBIZ_PROCS
|
||
|
fi
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" != "" ]; then
|
||
|
echo failure
|
||
|
echo
|
||
|
echo "Some processes could not be stopped:"
|
||
|
echo $OFBIZ_PROCS
|
||
|
echo "A possible solution is to try this command once more!"
|
||
|
return 1
|
||
|
else
|
||
|
echo success
|
||
|
return 0
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
|
||
|
# If root is running this script, su to $OFBIZ_USER first
|
||
|
if [ "$USER" = "root" ]; then
|
||
|
exec su - $OFBIZ_USER -c "$0 $1"
|
||
|
fi
|
||
|
case "$1" in
|
||
|
'start')
|
||
|
start
|
||
|
;;
|
||
|
'stop')
|
||
|
stop
|
||
|
;;
|
||
|
'restart')
|
||
|
stop
|
||
|
start
|
||
|
;;
|
||
|
'status')
|
||
|
ofbizprocs
|
||
|
if [ "$OFBIZ_PROCS" == "" ]; then
|
||
|
echo "OFBiz is stopped"
|
||
|
exit 1
|
||
|
else
|
||
|
echo "OFBiz is running"
|
||
|
exit 0
|
||
|
fi
|
||
|
;;
|
||
|
*)
|
||
|
echo "Usage: $0 {start|stop|kill|restart|status|help}"
|
||
|
exit 1
|
||
|
;;
|
||
|
esac
|
||
|
echo
|
||
|
exit $?
|