Mercurial > vanilla
annotate irc/irccd/irccd @ 1207:c9592a9a949b
python/python2: add DEPRECATED tag
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 15 Nov 2019 20:05:00 +0100 |
parents | 89ba3e75ca96 |
children |
rev | line source |
---|---|
1060
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/busybox sh |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # /etc/rc.d/irccd -- run control script for irccd |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Copyright (c) 2019 David Demelier <markand@malikania.fr> |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # Permission to use, copy, modify, and/or distribute this software for any |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # purpose with or without fee is hereby granted, provided that the above |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # copyright notice and this permission notice appear in all copies. |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 # |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 if [ -f /etc/rc.conf ]; then |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 . /etc/rc.conf |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 fi |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 # TODO: change IRCCD_ARGS once this issue is fixed: |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 # https://redmine.malikania.fr/issues/2263 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 : ${IRCCD_CMD:=/bin/irccd} |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 : ${IRCCD_ARGS:=-c /etc/irccd.conf} |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 : ${IRCCD_PID:=/var/run/irccd/irccd.pid} |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 : ${IRCCD_USER:=irccd} |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 : ${IRCCD_GROUP:=irccd} |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 irccd_start() |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 { |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 if [ -s $IRCCD_PID ]; then |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 echo "irccd is already running with pid: $(cat $IRCCD_PID)" |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 else |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 echo "Starting irccd: $IRCCD_CMD $IRCCD_ARGS" |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 start-stop-daemon \ |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 -Sbvp $IRCCD_PID \ |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 -c ${IRCCD_USER}:${IRCCD_GROUP} \ |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 -m $IRCCD_PID \ |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 -x $IRCCD_CMD -- $IRCCD_ARGS |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 fi |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 } |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 irccd_status() |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 { |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 if [ -s $IRCCD_PID ]; then |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 echo "irccd is running with pid: $(cat $IRCCD_PID)" |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 else |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 echo "irccd is not running" |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 fi |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 } |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 irccd_stop() |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 { |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 if [ -s $IRCCD_PID ]; then |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 echo "Stopping irccd." |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 start-stop-daemon -Kqp $IRCCD_PID |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 rm -f $IRCCD_PID |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 fi |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 } |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 irccd_restart() |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 { |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 irccd_stop |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 sleep 3 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 irccd_start |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 } |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 case $1 in |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 start) |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 irccd_start |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 ;; |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 status) |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 irccd_status |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 ;; |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 stop) |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 irccd_stop |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
80 ;; |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 restart) |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
82 irccd_restart |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 ;; |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 *) |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
85 echo "usage: $(basename $0) restart|start|status|stop" |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 ;; |
89ba3e75ca96
irc/irccd: initial import, closes #1709
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
87 esac |