diff --git a/debian/mediator.default b/debian/mediator.default new file mode 100644 index 0000000..19e1286 --- /dev/null +++ b/debian/mediator.default @@ -0,0 +1,19 @@ +RUN_MEDIATOR="yes" +PIDFILE="/var/run/mediator.pid" +FORK="yes" +INTERVAL="10" +SOURCE_HOST="localhost" +SOURCE_PORT="3306" +SOURCE_USER="mediator" +SOURCE_PASS='GimmeAllUr$$$' +SOURCE_DB="accounting" +DEST_HOST="localhost" +DEST_PORT="3306" +DEST_USER="mediator" +DEST_PASS='GimmeAllUr$$$' +DEST_DB="accounting" +PROV_HOST="localhost" +PROV_PORT="3306" +PROV_USER="mediator" +PROV_PASS='GimmeAllUr$$$' +PROV_DB="provisioning" diff --git a/debian/mediator.init b/debian/mediator.init new file mode 100755 index 0000000..a5a1872 --- /dev/null +++ b/debian/mediator.init @@ -0,0 +1,112 @@ +#! /bin/sh +### BEGIN INIT INFO +# Provides: mediator +# Required-Start: $remote_fs $syslog +# Required-Stop: $remote_fs $syslog +# Should-Start: mysql +# Should-Stop: mysql +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Ngcp Mediator +# Description: Create accounting CDRs +### END INIT INFO + + +PATH=/sbin:/bin:/usr/sbin:/usr/bin +NAME=mediator +DESC="ACC mediator" +RUN_MEDIATOR=no + +case $(dirname $0) in + /*) FULLPATH=$(dirname $0);; + *) FULLPATH=$(pwd)/$(dirname $0);; +esac + +DAEMON=`which mediator` +DEFAULTS=/etc/default/mediator + +test -f $DAEMON || exit 0 + +# Load startup options if available +if [ -f $DEFAULTS ]; then + . $DEFAULTS || true +fi + +if [ "$RUN_MEDIATOR" != "yes" ]; then + echo "mediator not yet configured. Edit $DEFAULTS first." + exit 0 +fi +[ -z "$PIDFILE" ] && PIDFILE="/var/run/mediator.pid" + +set -e + +. /lib/lsb/init-functions + + +OPTIONS="" + +[ -z "$PIDFILE" ] || OPTIONS="$OPTIONS -D $PIDFILE" +[ -z "$INTERVAL" ] || OPTIONS="$OPTIONS -i $INTERVAL" +[ -z "$SOURCE_HOST" ] || OPTIONS="$OPTIONS -h $SOURCE_HOST" +[ -z "$SOURCE_PORT" ] || OPTIONS="$OPTIONS -o $SOURCE_PORT" +[ -z "$SOURCE_USER" ] || OPTIONS="$OPTIONS -u $SOURCE_USER" +[ -z "$SOURCE_PASS" ] || OPTIONS="$OPTIONS -p $SOURCE_PASS" +[ -z "$SOURCE_DB" ] || OPTIONS="$OPTIONS -b $SOURCE_DB" +[ -z "$DEST_HOST" ] || OPTIONS="$OPTIONS -H $DEST_HOST" +[ -z "$DEST_PORT" ] || OPTIONS="$OPTIONS -O $DEST_PORT" +[ -z "$DEST_USER" ] || OPTIONS="$OPTIONS -U $DEST_USER" +[ -z "$DEST_PASS" ] || OPTIONS="$OPTIONS -P $DEST_PASS" +[ -z "$DEST_DB" ] || OPTIONS="$OPTIONS -B $DEST_DB" +[ -z "$PROV_HOST" ] || OPTIONS="$OPTIONS -S $PROV_HOST" +[ -z "$PROV_PORT" ] || OPTIONS="$OPTIONS -T $PROV_PORT" +[ -z "$PROV_USER" ] || OPTIONS="$OPTIONS -R $PROV_USER" +[ -z "$PROV_PASS" ] || OPTIONS="$OPTIONS -A $PROV_PASS" +[ -z "$PROV_DB" ] || OPTIONS="$OPTIONS -N $PROV_DB" +if test "$FORK" = "yes" ; then + OPTIONS="$OPTIONS -d" +fi + + +case "$1" in + start) + + echo -n "Starting $DESC: $NAME" + start-stop-daemon --start --quiet --oknodo --pidfile $PIDFILE \ + --exec $DAEMON -- $OPTIONS || echo -n " already running" + log_end_msg $? + ;; + stop) + echo -n "Stopping $DESC: $NAME" + start-stop-daemon --oknodo --stop --quiet --pidfile $PIDFILE \ + --exec $DAEMON + if [ "$?" -ne 0 ]; then + return $? + fi + rm -f $PIDFILE + log_end_msg $? + ;; + restart|force-reload) + + echo -n "Restarting $DESC: $NAME" + start-stop-daemon --oknodo --stop --quiet --pidfile \ + $PIDFILE --exec $DAEMON + if [ "$?" -ne 0 ]; then + return $? + fi + rm -f $PIDFILE + sleep 1 + start-stop-daemon --start --quiet --pidfile \ + $PIDFILE --exec $DAEMON -- $OPTIONS + log_end_msg $? + ;; + status) + status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? + ;; + *) + echo "Usage: $0 {start|stop|restart|force-reload|status}" >&2 + exit 1 + ;; +esac + +exit 0 + diff --git a/debian/rules b/debian/rules index 87e6cd6..71cc35c 100755 --- a/debian/rules +++ b/debian/rules @@ -59,7 +59,7 @@ binary-arch: build install dh_installdocs dh_installexamples dh_installman -# dh_installinit --name=mediator + dh_installinit --name=mediator dh_link dh_strip mkdir -p $(CURDIR)/debian/ngcp-mediator/usr/share/lintian/overrides/