]> git.pld-linux.org Git - packages/daemontools.git/blame - daemontools.init
- glibc 2.3.x patches.
[packages/daemontools.git] / daemontools.init
CommitLineData
bf5d9a42 1#!/bin/sh
2#
3# svscan svscan (scan and run services)
4#
0d3f2702 5# chkconfig: 345 14 89
bf5d9a42 6#
7# description: svscan (scan and run services) is a server part of the daemontools suite.
8#
9# id: $Id$
10#
11
12# Source function library
13. /etc/rc.d/init.d/functions
14
15# Get network config
16. /etc/sysconfig/network
17
18# Get service config
19[ -f /etc/sysconfig/svscan ] && . /etc/sysconfig/svscan
20
21# Check that networking is up.
22if is_no "${NETWORKING}"; then
169c05cb 23 msg_network_down svscan
bf5d9a42 24 exit 1
25fi
26
27
28# See how we were called.
29case "$1" in
30 start)
31 # Check if the service is already running?
32 if [ ! -f /var/lock/subsys/svscan ]; then
33 msg_starting svscan; busy
34 # we can't get status report from background job
35 # but we can only do simple file check
36 if [ -w $SVSCAN_DIR ]; then
37 svscan $SVSCAN_DIR &
38 ok
39 RETVAL=0
40 else
41 fail
42 echo "Missing service directory!"
43 echo "Create $SVSCAN_DIR first."
44 RETVAL=1
45 fi
46 [ $RETVAL -eq 0 ] && touch /var/lock/subsys/svscan
47 else
169c05cb 48 msg_already_running svscan
bf5d9a42 49 fi
50 ;;
51 stop)
04408741 52 if [ -f /var/lock/subsys/svscan ]; then
bf5d9a42 53 msg_stopping svscan
54 killproc svscan
acc4ea9f 55 svc -d -x $SVSCAN_DIR/* \
56 $(find $SVSCAN_DIR/* -maxdepth 0 -follow -perm -1000|sed s-\$-/log-)
bf5d9a42 57 rm -f /var/run/svscan.pid /var/lock/subsys/svscan >/dev/null 2>&1
58 else
169c05cb 59 msg_not_running svscan
bf5d9a42 60 exit 1
61 fi
62 ;;
63 restart)
64 $0 stop
65 $0 start
66 ;;
67 status)
68 status svscan
69 exit $?
70 ;;
71 *)
169c05cb 72 msg_usage "$0 {start|stop|status|restart}"
bf5d9a42 73 exit 1
74esac
75
76exit $RETVAL
This page took 0.073277 seconds and 4 git commands to generate.