xref: /OK3568_Linux_fs/buildroot/package/prosody/S50prosody (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun#! /bin/sh
2*4882a593Smuzhiyun
3*4882a593SmuzhiyunNAME=prosody
4*4882a593Smuzhiyun
5*4882a593Smuzhiyun# This must match the pidfile field in
6*4882a593Smuzhiyun# /etc/prosody/prosody.cfg.lua
7*4882a593Smuzhiyun
8*4882a593SmuzhiyunPIDDIR=/var/run/$NAME
9*4882a593SmuzhiyunPIDFILE=$PIDDIR/$NAME.pid
10*4882a593Smuzhiyun
11*4882a593Smuzhiyuncase "$1" in
12*4882a593Smuzhiyun  start)
13*4882a593Smuzhiyun    printf "Starting $NAME: "
14*4882a593Smuzhiyun    mkdir -p $PIDDIR
15*4882a593Smuzhiyun    chown $NAME:$NAME $PIDDIR
16*4882a593Smuzhiyun    start-stop-daemon -S -q -o -x /usr/bin/prosody -c $NAME
17*4882a593Smuzhiyun    [ $? = 0 ] && echo "OK" || echo "FAIL"
18*4882a593Smuzhiyun    ;;
19*4882a593Smuzhiyun  stop)
20*4882a593Smuzhiyun    printf "Stopping $NAME: "
21*4882a593Smuzhiyun    # The standard method of identifying the name doesn't
22*4882a593Smuzhiyun    # work as the process name is lua. So use the pidfile
23*4882a593Smuzhiyun    # which is created by the service itself as a match
24*4882a593Smuzhiyun    # criteria when stopping the service
25*4882a593Smuzhiyun    start-stop-daemon -K -q -o -p "$PIDFILE"
26*4882a593Smuzhiyun    [ $? = 0 ] && echo "OK" || echo "FAIL"
27*4882a593Smuzhiyun    ;;
28*4882a593Smuzhiyun  restart|reload)
29*4882a593Smuzhiyun    echo "Restarting $NAME: "
30*4882a593Smuzhiyun    $0 stop
31*4882a593Smuzhiyun    sleep 1
32*4882a593Smuzhiyun    $0 start
33*4882a593Smuzhiyun    ;;
34*4882a593Smuzhiyun  *)
35*4882a593Smuzhiyun    echo "Usage: $0 {start|stop|restart|reload}" >&2
36*4882a593Smuzhiyun    exit 1
37*4882a593Smuzhiyun    ;;
38*4882a593Smuzhiyunesac
39*4882a593Smuzhiyun
40*4882a593Smuzhiyunexit 0
41