blob: 3ace2ed4a4ef0c0800b07d6c0667f90949302926 [file] [log] [blame]
#!/bin/sh
#
# /*
# * 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.
# */
#
if [ -z "$ROCKETMQ_EVENTBRIDGE_HOME" ]; then
## resolve links - $0 may be a link to maven's home
PRG="$0"
# need this for relative symlinks
while [ -h "$PRG" ]; do
ls=$(ls -ld "$PRG")
link=$(expr "$ls" : '.*-> \(.*\)$')
if expr "$link" : '/.*' >/dev/null; then
PRG="$link"
else
PRG="$(dirname "$PRG")/$link"
fi
done
saveddir=$(pwd)
ROCKETMQ_EVENTBRIDGE_HOME=$(dirname "$PRG")
# make it fully qualified
ROCKETMQ_EVENTBRIDGE_HOME=$(cd "$ROCKETMQ_EVENTBRIDGE_HOME" && pwd)
cd "$saveddir"
fi
export ROCKETMQ_EVENTBRIDGE_HOME
BASEDIR=$HOME
mkdir -p $BASEDIR/logs
mainClass="org.apache.rocketmq.eventbridge.Main"
function startup() {
pid=`ps aux|grep $mainClass|grep -v grep |awk '{print $2}'`
if [ ! -z "$pid" ]; then
echo "java is runing..."
exit 1
fi
nohup ${ROCKETMQ_EVENTBRIDGE_HOME}/runserver.sh -jar rocketmq-eventbridge.jar $@ >$BASEDIR/logs/rocketmq-eventbridge.log 2>&1 &
}
function stop() {
pid=`ps aux|grep $mainClass|grep -v grep |awk '{print $2}'`
if [ -z "$pid" ]; then
echo "no java to kill"
fi
printf 'stop...'
kill $pid
sleep 3
pid=`ps aux|grep $mainClass|grep -v grep |awk '{print $2}'`
if [ ! -z $pid ]; then
kill -9 $pid
fi
}
case "$1" in
start)
startup $@
;;
stop)
stop
;;
restart)
stop
startup
;;
*)
printf "Usage: sh $0 %s {start|stop|restart}\n"
exit 1
;;
esac