python/distro/ubuntu/SYSCONFDIR/init.d/cloud-ipallocator.in (96 lines of code) (raw):

#!/bin/bash # Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you 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. # chkconfig: 35 99 10 # description: Cloud Agent # WARNING: if this script is changed, then all other initscripts MUST BE changed to match it as well . /lib/lsb/init-functions . /etc/default/rcS # set environment variables SHORTNAME=`basename $0` PIDFILE=@PIDDIR@/"$SHORTNAME".pid LOCKFILE=@LOCKDIR@/"$SHORTNAME" LOGFILE=@AGENTLOG@ PROGNAME="Cloud Agent" unset OPTIONS [ -r @SYSCONFDIR@/default/"$SHORTNAME" ] && source @SYSCONFDIR@/default/"$SHORTNAME" DAEMONIZE=@BINDIR@/@PACKAGE@-daemonize PROG=@BINDIR@/@PACKAGE@-external-ipallocator.py OPTIONS=8083 start() { log_daemon_msg $"Starting $PROGNAME" "$SHORTNAME" if [ -s "$PIDFILE" ] && kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then log_progress_msg "apparently already running" log_end_msg 0 exit 0 fi if hostname --fqdn >/dev/null 2>&1 ; then true else log_failure_msg "The host name does not resolve properly to an IP address. Cannot start $PROGNAME" log_end_msg 1 exit 1 fi if start-stop-daemon --start --quiet \ --pidfile "$PIDFILE" \ --exec "$DAEMONIZE" -- -n "$SHORTNAME" -p "$PIDFILE" -l "$LOGFILE" "$PROG" $OPTIONS RETVAL=$? then rc=0 sleep 1 if ! kill -0 $(cat "$PIDFILE") >/dev/null 2>&1; then log_failure_msg "$PROG failed to start" rc=1 fi else rc=1 fi if [ $rc -eq 0 ]; then log_end_msg 0 else log_end_msg 1 rm -f "$PIDFILE" fi } stop() { echo -n $"Stopping $PROGNAME" "$SHORTNAME" start-stop-daemon --stop --quiet --oknodo --pidfile "$PIDFILE" log_end_msg $? rm -f "$PIDFILE" } # See how we were called. case "$1" in start) start ;; stop) stop ;; status) status_of_proc -p "$PIDFILE" "$PROG" "$SHORTNAME" RETVAL=$? ;; restart) stop sleep 3 start ;; *) echo $"Usage: $SHORTNAME {start|stop|restart|status|help}" RETVAL=3 esac exit $RETVAL