diff options
author | Gary Wu <gary.i.wu@huawei.com> | 2018-08-03 07:56:14 -0700 |
---|---|---|
committer | Gary Wu <gary.i.wu@huawei.com> | 2018-08-06 08:20:47 -0700 |
commit | b9a2a29a9e1e93cd04bfa46f9ed66a2117ef56e5 (patch) | |
tree | bcf2b80a434326360f3ce1ec0d64110d5b09e1e8 /heat/ONAP/cloud-config/serv.sh | |
parent | 16509432a21feb3f90bbf954ec4815c2bf7f0033 (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.sh | 106 |
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 |