opennebula-node-kvm deploy
This commit is contained in:
120
opennebula-node-kvm/usr/bin/onegate-proxy
Executable file
120
opennebula-node-kvm/usr/bin/onegate-proxy
Executable file
@@ -0,0 +1,120 @@
|
||||
#!/bin/bash
|
||||
|
||||
# -------------------------------------------------------------------------- #
|
||||
# Copyright 2002-2023, OpenNebula Project, OpenNebula Systems #
|
||||
# #
|
||||
# Licensed 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 "$ONE_LOCATION" ]; then
|
||||
ONEGATE_PROXY_PID=/var/run/one/onegate-proxy.pid
|
||||
ONEGATE_PROXY_SERVER=/usr/lib/one/onegate-proxy/onegate-proxy.rb
|
||||
ONEGATE_PROXY_LOCK_FILE=/var/lock/one/.onegate-proxy.lock
|
||||
ONEGATE_PROXY_LOG=/var/log/one/onegate-proxy.log
|
||||
ONEGATE_PROXY_LOG_ERROR=/var/log/one/onegate-proxy.error
|
||||
else
|
||||
ONEGATE_PROXY_PID=$ONE_LOCATION/var/onegate-proxy.pid
|
||||
ONEGATE_PROXY_SERVER=$ONE_LOCATION/lib/onegate-proxy/onegate-proxy.rb
|
||||
ONEGATE_PROXY_LOCK_FILE=$ONE_LOCATION/var/.onegate-proxy.lock
|
||||
ONEGATE_PROXY_LOG=$ONE_LOCATION/var/onegate-proxy.log
|
||||
ONEGATE_PROXY_LOG_ERROR=$ONE_LOCATION/var/onegate-proxy.error
|
||||
fi
|
||||
|
||||
setup()
|
||||
{
|
||||
if [ -f $ONEGATE_PROXY_LOCK_FILE ]; then
|
||||
if [ -f $ONEGATE_PROXY_PID ]; then
|
||||
ONEGATEPID=`cat $ONEGATE_PROXY_PID`
|
||||
ps $ONEGATEPID &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
echo -n "OneGate Server is still running (PID:$ONEGATEPID). Please "
|
||||
echo "try 'onegate-proxy stop' first."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
echo "Stale .lock detected. Erasing it."
|
||||
rm $ONEGATE_PROXY_LOCK_FILE
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
start()
|
||||
{
|
||||
if [ ! -f "$ONEGATE_PROXY_SERVER" ]; then
|
||||
echo "Cannot find $ONEGATE_PROXY_SERVER."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Start the onegate daemon
|
||||
touch $ONEGATE_PROXY_LOCK_FILE
|
||||
ruby $ONEGATE_PROXY_SERVER > $ONEGATE_PROXY_LOG 2>$ONEGATE_PROXY_LOG_ERROR &
|
||||
LASTPID=$!
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error executing onegate-proxy."
|
||||
echo "Check $ONEGATE_PROXY_LOG_ERROR and $ONEGATE_PROXY_LOG for more information"
|
||||
exit 1
|
||||
else
|
||||
echo $LASTPID > $ONEGATE_PROXY_PID
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
ps $LASTPID &> /dev/null
|
||||
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "Error executing onegate-proxy."
|
||||
echo "Check $ONEGATE_PROXY_LOG_ERROR and $ONEGATE_PROXY_LOG for more information"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "onegate-proxy started"
|
||||
}
|
||||
|
||||
#
|
||||
# Function that stops the daemon/service
|
||||
#
|
||||
stop()
|
||||
{
|
||||
if [ ! -f $ONEGATE_PROXY_PID ]; then
|
||||
echo "Couldn't find onegate-proxy process pid."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Kill the onegate daemon
|
||||
kill -INT `cat $ONEGATE_PROXY_PID` &> /dev/null
|
||||
|
||||
# Remove pid files
|
||||
rm -f $ONEGATE_PROXY_LOCK_FILE &> /dev/null
|
||||
rm -f $ONEGATE_PROXY_PID &> /dev/null
|
||||
|
||||
echo "onegate-proxy stopped"
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
setup
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart)
|
||||
stop
|
||||
setup
|
||||
start
|
||||
;;
|
||||
*)
|
||||
echo "Usage: onegate-proxy {start|stop|restart}" >&2
|
||||
exit 3
|
||||
;;
|
||||
esac
|
||||
Reference in New Issue
Block a user