1
0
mirror of https://github.com/jhillyerd/inbucket.git synced 2025-12-17 17:47:03 +00:00
Files
go-inbucket/etc/redhat-el6/inbucket-init.sh
2012-11-05 13:43:54 -08:00

116 lines
2.3 KiB
Bash
Executable File

#!/bin/sh
#
# inbucket Inbucket email testing service
#
# chkconfig: 2345 80 30
# description: Inbucket is a disposable email service for testing email
# functionality of other applications.
# processname: inbucket
# pidfile: /var/run/inbucket/inbucket.pid
### BEGIN INIT INFO
# Provides: Inbucket service
# Required-Start: $local_fs $network $remote_fs
# Required-Stop: $local_fs $network $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: start and stop inbucket
# Description: Inbucket is a disposable email service for testing email
# functionality of other applications.
# moves mail from one machine to another.
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
# Source networking configuration.
. /etc/sysconfig/network
RETVAL=0
program=/opt/inbucket/inbucket
prog=${program##*/}
config=/etc/opt/inbucket.conf
runas=inbucket
lockfile=/var/lock/subsys/$prog
pidfile=/var/run/$prog/$prog.pid
logfile=/var/log/$prog.log
conf_check() {
[ -x $program ] || exit 5
[ -f $config ] || exit 6
}
perms_check() {
mkdir -p /var/run/$prog
chown $runas: /var/run/$prog
touch $logfile
chown $runas: $logfile
}
start() {
[ "$EUID" != "0" ] && exit 4
# Check that networking is up.
[ ${NETWORKING} = "no" ] && exit 1
# Check config sanity
conf_check
perms_check
# Start daemon
echo -n $"Starting $prog: "
daemon --user $runas --pidfile $pidfile $program \
-pidfile $pidfile -logfile $logfile $config \&
RETVAL=$?
[ $RETVAL -eq 0 ] && touch $lockfile
echo
return $RETVAL
}
stop() {
[ "$EUID" != "0" ] && exit 4
conf_check
# Stop daemon
echo -n $"Shutting down $prog: "
killproc -p "$pidfile" -d 15 "$program"
RETVAL=$?
[ $RETVAL -eq 0 ] && rm -f $lockfile $pidfile
echo
return $RETVAL
}
reload() {
[ "$EUID" != "0" ] && exit 4
echo -n $"Reloading $prog: "
killproc -p "$pidfile" "$program" -HUP
RETVAL=$?
echo
return $RETVAL
}
# See how we were called.
case "$1" in
start)
[ -e $lockfile ] && exit 0
start
;;
stop)
[ -e $lockfile ] || exit 0
stop
;;
reload)
[ -e $lockfile ] || exit 0
reload
;;
restart|force-reload)
stop
start
;;
status)
status -p $pidfile -l $(basename $lockfile) $prog
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
exit 2
esac
exit $?