JBAS-712 ZOOM control script additions
authorBill Erickson <berickxx@gmail.com>
Fri, 5 Jun 2015 15:26:34 +0000 (08:26 -0700)
committerBill Erickson <berickxx@gmail.com>
Thu, 21 Mar 2019 19:46:23 +0000 (15:46 -0400)
./eg-zoom-control.sh [start|stop|status]

Signed-off-by: Bill Erickson <berickxx@gmail.com>
KCLS/admin-scripts/eg-zoom-control.sh [new file with mode: 0755]
KCLS/utility-scripts/start-zoom.sh [deleted file]

diff --git a/KCLS/admin-scripts/eg-zoom-control.sh b/KCLS/admin-scripts/eg-zoom-control.sh
new file mode 100755 (executable)
index 0000000..215ae2d
--- /dev/null
@@ -0,0 +1,58 @@
+#!/bin/bash
+# Start the simple2zoom SRU/Z39.50 service
+# Listens on localhost:2210 and this machine's FQDN
+# Must be run with sudo / root, since it uses port 210
+set -eu
+PUBLIC_HOST=$(hostname -f);
+ZOOM_LOG=/openils/var/log/zoom-server.log
+PID_FILE=/openils/var/run/zoom.pid
+
+function zoom_start {
+
+    # create a backup of the log file
+    # NOTE: this needs rotating
+    [ -f $ZOOM_LOG ] && mv $ZOOM_LOG $ZOOM_LOG.$(date +%F);
+
+    # create the file so we can safely chown it later
+    touch /openils/var/log/zoom-server.log
+
+    /usr/bin/perl \
+        -w /usr/bin/simple2zoom \
+        -c /openils/conf/dgo.conf -- \
+        -f /openils/conf/xml2marc-yaz.cfg \
+        localhost:2210 $PUBLIC_HOST:210 >> "$ZOOM_LOG" 2>&1 &
+
+    pid=$!;
+    echo $pid > $PID_FILE;
+
+    chown opensrf:opensrf $ZOOM_LOG
+}
+
+function zoom_stop {
+    if [ ! -f $PID_FILE ]; then
+        echo "ZOOM is not running"
+        return;
+    fi
+    pid=$(cat $PID_FILE);
+    echo "Stopping Zoom / Z39.50"
+    kill -s TERM $pid;
+    rm -f $PID_FILE;
+}
+
+function zoom_status {
+    set +e
+    if [ "$(ps ax | grep simple2zoom | grep -v grep)" ]; then
+        echo "ZOOM is running"
+    fi
+    set -e
+}
+
+ACTION=$1
+
+case $ACTION in
+    "start")  zoom_start;;
+    "stop")   zoom_stop;;
+    "status") zoom_status;;
+       *) echo "$0 [start|stop|status]";;
+esac;
+
diff --git a/KCLS/utility-scripts/start-zoom.sh b/KCLS/utility-scripts/start-zoom.sh
deleted file mode 100755 (executable)
index 19cbb87..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
-#!/bin/bash
-# Start the simple2zoom SRU/Z39.50 service
-# Listens on localhost:2210 and this machine's FQDN
-# Must be run with sudo / root, since it uses port 210
-set -eu
-PUBLIC_HOST=$(hostname -f);
-ZOOM_LOG=/openils/var/log/zoom-server.log
-
-# create a backup of the log file
-# NOTE: this needs rotating
-[ -f $ZOOM_LOG ] && mv $ZOOM_LOG $ZOOM_LOG.$(date +%F);
-
-# create the file so we can safely chown it later
-touch /openils/var/log/zoom-server.log
-
-nohup /usr/bin/perl \
-    -w /usr/bin/simple2zoom \
-    -c /openils/conf/dgo.conf -- \
-    -f /openils/conf/xml2marc-yaz.cfg \
-    localhost:2210 $PUBLIC_HOST:210 > $ZOOM_LOG &
-
-chown opensrf:opensrf $ZOOM_LOG