Mercurial > vanilla
annotate Templates/init/rc @ 1027:34c9fa83dc08
vanilla: cleanup templates directory
author | David Demelier <markand@malikania.fr> |
---|---|
date | Thu, 29 Aug 2019 21:00:00 +0200 |
parents | |
children |
rev | line source |
---|---|
1027
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/busybox sh |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # /etc/rc.d/template -- run control script for template |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Copyright (c) 2019 FirstName LastName <mailaddress> |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # Permission to use, copy, modify, and/or distribute this software for any |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # purpose with or without fee is hereby granted, provided that the above |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # copyright notice and this permission notice appear in all copies. |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 # |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 if [ -f /etc/rc.conf ]; then |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 . /etc/rc.conf |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 fi |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 : ${TEMPLATE_CMD:=/bin/template} |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 : ${TEMPLATE_ARGS:=--foo} |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 : ${TEMPLATE_PID:=/var/run/template.pid} |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 template_start() |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 { |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 if [ -s $TEMPLATE_PID ]; then |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 echo "template is already running with pid: $(cat $TEMPLATE_PID)" |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 else |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 echo "Starting template: $TEMPLATE_CMD $TEMPLATE_ARGS" |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 $TEMPLATE_CMD $TEMPLATE_ARGS |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 fi |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 } |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 template_status() |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 { |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 if [ -s $TEMPLATE_PID ]; then |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 echo "template is running with pid: $(cat $TEMPLATE_PID)" |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 else |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 echo "template is not running" |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 fi |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 } |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 template_stop() |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 { |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 if [ -s $TEMPLATE_PID ]; then |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 echo "Stopping template." |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 kill -QUIT $(cat $TEMPLATE_PID) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 fi |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 } |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 template_restart() |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 { |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 template_stop |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 sleep 3 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 template_start |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 } |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 case $1 in |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 start) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 template_start |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
65 ;; |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 status) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
67 template_status |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 ;; |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 stop) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
70 template_stop |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 ;; |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
72 restart) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 template_restart |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 ;; |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
75 *) |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 echo "usage: $(basename $0) restart|start|status|stop" |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
77 ;; |
34c9fa83dc08
vanilla: cleanup templates directory
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 esac |