Project

General

Profile

Revision 295

Added by Red Robot almost 14 years ago

adding install and daemon stuff

View differences:

trunk/swipe/tooltron.daemon
1
#! /bin/sh
2
### BEGIN INIT INFO
3
# Provides:          tooltron
4
# Required-Start:    $remote_fs $syslog
5
# Required-Stop:     $remote_fs $syslog
6
# Default-Start:     2 3 4 5
7
# Default-Stop:      0 1 6
8
# Short-Description: The tooltron server
9
# Description:       This file manages the tooltron server as a service
10
### END INIT INFO
11

  
12
# Author: Brad Neuman <bradneuman@gmail.com>
13

  
14
# Do NOT "set -e"
15

  
16
# PATH should only include /usr/* if it runs after the mountnfs.sh script
17
PATH=/sbin:/usr/sbin:/bin:/usr/bin
18
DESC="Tooltron Server"
19
NAME=tooltron
20
DAEMON=/usr/sbin/$NAME
21
#DAEMON_ARGS="--options args"
22
PIDFILE=/var/run/$NAME.pid
23
SCRIPTNAME=/etc/init.d/$NAME
24

  
25
# Exit if the package is not installed
26
[ -x "$DAEMON" ] || exit 0
27

  
28
# Read configuration variable file if it is present
29
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
30

  
31
# Load the VERBOSE setting and other rcS variables
32
. /lib/init/vars.sh
33

  
34
# Define LSB log_* functions.
35
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
36
. /lib/lsb/init-functions
37

  
38
#
39
# Function that starts the daemon/service
40
#
41
do_start()
42
{
43
	# Return
44
	#   0 if daemon has been started
45
	#   1 if daemon was already running
46
	#   2 if daemon could not be started
47
	start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
48
		|| return 1
49
	start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
50
		$DAEMON_ARGS \
51
		|| return 2
52
	# Add code here, if necessary, that waits for the process to be ready
53
	# to handle requests from services started subsequently which depend
54
	# on this one.  As a last resort, sleep for some time.
55
}
56

  
57
#
58
# Function that stops the daemon/service
59
#
60
do_stop()
61
{
62
	# Return
63
	#   0 if daemon has been stopped
64
	#   1 if daemon was already stopped
65
	#   2 if daemon could not be stopped
66
	#   other if a failure occurred
67
	start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
68
	RETVAL="$?"
69
	[ "$RETVAL" = 2 ] && return 2
70
	# Wait for children to finish too if this is a daemon that forks
71
	# and if the daemon is only ever run from this initscript.
72
	# If the above conditions are not satisfied then add some other code
73
	# that waits for the process to drop all resources that could be
74
	# needed by services started subsequently.  A last resort is to
75
	# sleep for some time.
76
	start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
77
	[ "$?" = 2 ] && return 2
78
	# Many daemons don't delete their pidfiles when they exit.
79
	rm -f $PIDFILE
80
	return "$RETVAL"
81
}
82

  
83
#
84
# Function that sends a SIGHUP to the daemon/service
85
#
86
do_reload() {
87
	#
88
	# If the daemon can reload its configuration without
89
	# restarting (for example, when it is sent a SIGHUP),
90
	# then implement that here.
91
	#
92
	start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAME
93
	return 0
94
}
95

  
96
case "$1" in
97
  start)
98
	[ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
99
	do_start
100
	case "$?" in
101
		0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
102
		2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
103
	esac
104
	;;
105
  stop)
106
	[ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
107
	do_stop
108
	case "$?" in
109
		0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
110
		2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
111
	esac
112
	;;
113
  status)
114
       status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
115
       ;;
116
  #reload|force-reload)
117
	#
118
	# If do_reload() is not implemented then leave this commented out
119
	# and leave 'force-reload' as an alias for 'restart'.
120
	#
121
	#log_daemon_msg "Reloading $DESC" "$NAME"
122
	#do_reload
123
	#log_end_msg $?
124
	#;;
125
  restart|force-reload)
126
	#
127
	# If the "reload" option is implemented then remove the
128
	# 'force-reload' alias
129
	#
130
	log_daemon_msg "Restarting $DESC" "$NAME"
131
	do_stop
132
	case "$?" in
133
	  0|1)
134
		do_start
135
		case "$?" in
136
			0) log_end_msg 0 ;;
137
			1) log_end_msg 1 ;; # Old process is still running
138
			*) log_end_msg 1 ;; # Failed to start
139
		esac
140
		;;
141
	  *)
142
	  	# Failed to stop
143
		log_end_msg 1
144
		;;
145
	esac
146
	;;
147
  *)
148
	#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
149
	echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
150
	exit 3
151
	;;
152
esac
153

  
154
:
trunk/swipe/tooltron.sh
1
#!/bin/bash
2

  
3
echo ""
4
echo "starting tooltron..."
5
echo ""
6

  
7
/usr/sbin/runtron.sh &
8

  
9
echo "started tooltron server script"
10

  
0 11

  

Also available in: Unified diff