Add controls for bash script.

This commit is contained in:
Florian
2018-05-25 22:32:01 +02:00
parent 7a3d6a17a7
commit 9ad09570bf

View File

@@ -3,6 +3,7 @@
codikiScreenName='codiki'
lockFile='/opt/codiki/bin/lock'
deadFile='/opt/codiki/bin/dead'
screenRegex='codiki.\(([0-9]{2}/){2}[0-9]{4} [0-9]{2}(:[0-9]{2}){2}\)'
start() {
screen -dmS $codikiScreenName java -jar /opt/codiki/bin/codiki.jar
@@ -17,26 +18,31 @@ start() {
}
stop() {
screen -dr $codikiScreenName -X -S quit
if [ $? -eq 0 ]
if [ $(status_by_screen) -eq 1 ] && [ -f $lockFile ]
then
rm -f $lockFile
date > $deadFile
screen -dr $codikiScreenName -X -S quit
if [ $? -eq 0 ]
then
rm -f $lockFile
date > $deadFile
else
echo "Service failed to stop..."
exit 1
fi
else
echo "Service failed to stop..."
exit 1
echo "Service is not running."
fi
}
status() {
if [ -f /var/lock/subsys/codiki ]
if [ -f $lockFile ] && [ $(status_by_screen) -eq 1 ]
then
cat << EOF
tput setaf 2; cat << EOF
codiki.service - The Codiki web app server
Active: active (running) since $(cat $lockFile)
EOF
else
cat << EOF
tput setaf 1; cat << EOF
codiki.service - The Codiki web app server
Active: inactive (dead) since $(cat $deadFile)
EOF
@@ -51,6 +57,10 @@ restart() {
start
}
status_by_screen() {
echo $(screen -ls | egrep -o "$screenRegex" | wc -l)
}
case "$1" in
start)
start
@@ -68,4 +78,4 @@ case "$1" in
echo "Usage: $0 {start|stop|status}"
exit 1
esac
exit 0
exit 0