summaryrefslogtreecommitdiffstats
path: root/heat/ONAP/cloud-config/serv.sh
diff options
context:
space:
mode:
authorGary Wu <gary.i.wu@huawei.com>2018-08-03 07:56:14 -0700
committerGary Wu <gary.i.wu@huawei.com>2018-08-06 08:20:47 -0700
commitb9a2a29a9e1e93cd04bfa46f9ed66a2117ef56e5 (patch)
treebcf2b80a434326360f3ce1ec0d64110d5b09e1e8 /heat/ONAP/cloud-config/serv.sh
parent16509432a21feb3f90bbf954ec4815c2bf7f0033 (diff)
Refactor ONAP HEAT template config, part 2
Change-Id: Ic4930654395ec9e9d57836733cd47e7a3b0bf972 Issue-ID: INT-605 Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
Diffstat (limited to 'heat/ONAP/cloud-config/serv.sh')
-rw-r--r--heat/ONAP/cloud-config/serv.sh106
1 files changed, 106 insertions, 0 deletions
diff --git a/heat/ONAP/cloud-config/serv.sh b/heat/ONAP/cloud-config/serv.sh
new file mode 100644
index 00000000..62466d9c
--- /dev/null
+++ b/heat/ONAP/cloud-config/serv.sh
@@ -0,0 +1,106 @@
+#!/bin/sh
+### BEGIN INIT INFO
+# Provides: __vm_init_script__
+# Required-Start: $remote_fs $syslog
+# Required-Stop: $remote_fs $syslog
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Start daemon at boot time
+# Description: Enable service provided by daemon.
+### END INIT INFO
+HTTP_PROXY=$(cat /opt/config/http_proxy.txt)
+HTTPS_PROXY=$(cat /opt/config/https_proxy.txt)
+
+if [ $HTTP_PROXY != "no_proxy" ]
+then
+ export http_proxy=$HTTP_PROXY
+ export https_proxy=$HTTPS_PROXY
+fi
+
+dir="/opt"
+cmd="./__vm_init_script__"
+user="root"
+
+name=`basename $0`
+pid_file="/var/run/$name.pid"
+stdout_log="/var/log/$name.log"
+stderr_log="/var/log/$name.err"
+
+get_pid() {
+ cat "$pid_file"
+}
+
+is_running() {
+ [ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
+}
+
+case "$1" in
+ start)
+ if is_running; then
+ echo "Already started"
+ else
+ echo "Starting $name"
+ cd "$dir"
+ if [ -z "$user" ]; then
+ sudo $cmd >> "$stdout_log" 2>> "$stderr_log" &
+ else
+ sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log" &
+ fi
+ echo $! > "$pid_file"
+ if ! is_running; then
+ echo "Unable to start, see $stdout_log and $stderr_log"
+ exit 1
+ fi
+ fi
+ ;;
+ stop)
+ if is_running; then
+ echo -n "Stopping $name.."
+ kill `get_pid`
+ for i in {1..10}
+ do
+ if ! is_running; then
+ break
+ fi
+
+ echo -n "."
+ sleep 1
+ done
+ echo
+
+ if is_running; then
+ echo "Not stopped; may still be shutting down or shutdown may have failed"
+ exit 1
+ else
+ echo "Stopped"
+ if [ -f "$pid_file" ]; then
+ rm "$pid_file"
+ fi
+ fi
+ else
+ echo "Not running"
+ fi
+ ;;
+ restart)
+ $0 stop
+ if is_running; then
+ echo "Unable to stop, will not attempt to start"
+ exit 1
+ fi
+ $0 start
+ ;;
+ status)
+ if is_running; then
+ echo "Running"
+ else
+ echo "Stopped"
+ exit 1
+ fi
+ ;;
+ *)
+ echo "Usage: $0 {start|stop|restart|status}"
+ exit 1
+ ;;
+esac
+
+exit 0