blob: 11c1a7e94c323f911479b7dae551fa4f8f80e840 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
#!/usr/bin/env bash
# PerlDaemon (c) 2010, 2011, Dipl.-Inform. (FH) Paul Buetow (http://perldaemon.buetow.org)
declare -r ARG=$1
declare -a LIBPATHS=(./lib ../lib /lib /usr/lib /usr/local/lib /opt/lib)
for path in ${LIBPATHS[@]}; do
if [ -f $path/PerlDaemon/PerlDaemon.pl ]; then
LIBDIR=$path
break
fi
done
if [ -z "$LIBDIR" ]; then
echo No PerlDaemon module path found
exit 1
fi
start () {
echo Starting daemon now...
perl -I$LIBDIR $LIBDIR/PerlDaemon/PerlDaemon.pl config=./conf/perldaemon.conf $@
}
stop () {
if [ -f ./run/perldaemon.pid ]; then
echo Stopping daemon now...
kill $(cat ./run/perldaemon.pid);
else
echo "No pidfile found (not running?) "
fi
}
logrotate () {
echo Triggering a logrotate
kill -HUP $(cat ./run/perldaemon.pid)
}
keys () {
perl -I$LIBDIR $LIBDIR/PerlDaemon/PerlDaemon.pl config=./conf/perldaemon.conf keys=1 $@
}
case $ARG in
start)
shift
start $@
;;
stop)
stop
;;
restart)
shift
stop
start $@
;;
logrotate)
logrotate
;;
foreground)
start daemon.daemonize=no $@
;;
keys)
keys $@
;;
*)
echo "Usage: $0 <start|stop|restart|logrotate|foreground|keys> [key1=val1 [[key2=val2] ...]]"
exit 1
;;
esac
|