Subversion Repositories SmartDukaan

Rev

Rev 3920 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3728 chandransh 1
#! /bin/sh
2
### BEGIN INIT INFO
3
# Provides:          user_server
4
# Required-Start:    $network $config_server
5
# Required-Stop:     $network $config_server
6
# Default-Start:     2 3 4 5
7
# Default-Stop:      0 1 6
8
# Short-Description: Example initscript
9
# Description:       This file should be used to start the configuraiton server.
10
### END INIT INFO
11
 
12
# Author: Chandranshu <chandranshu.s@shop2020.in>
13
#
14
# Please remove the "Author" lines above and replace them
15
# with your own name if you copy and modify this script.
16
 
17
# Do NOT "set -e"
18
 
19
# PATH should only include /usr/* if it runs after the mountnfs.sh script
20
PATH=/sbin:/usr/sbin:/bin:/usr/bin
4700 phani.kuma 21
PROJECT_DIR="/usr/local/lib/python2.6/dist-packages/PyProj-0.1-py2.6.egg"
22
export PYTHONPATH=${PROJECT_DIR}:/usr/lib/pymodules/python2.6:/usr/lib/pymodules/python2.6/gtk-2.0:/usr/lib/python2.6:/usr/lib/python2.6/dist-packages:/usr/lib/python2.6/dist-packages/PIL:/usr/lib/python2.6/dist-packages/gst-0.10:/usr/lib/python2.6/dist-packages/gtk-2.0:/usr/lib/python2.6/lib-dynload:/usr/lib/python2.6/lib-old:/usr/lib/python2.6/lib-tk:/usr/lib/python2.6/plat-linux2:/usr/local/lib/python2.6/dist-packages:/usr/local/lib/python2.6/dist-packages/Elixir-0.7.1-py2.6.egg:/usr/local/lib/python2.6/dist-packages/TracXMLRPC-0.1-py2.6.egg:/usr/local/lib/python2.6/dist-packages/tornado-1.0.1-py2.6.egg
3728 chandransh 23
DESC="User server used by the saholic.com website"
24
NAME="user-server"
25
PIDFILE=/var/run/$NAME.pid
26
DAEMON=/usr/bin/python2.6
27
SCRIPTNAME=/etc/init.d/$NAME
28
 
29
# Exit if the package is not installed
30
[ -x "$DAEMON" ] || exit 0
31
 
32
# Read configuration variable file if it is present
33
[ -r /etc/default/$NAME ] && . /etc/default/$NAME
34
 
35
# Load the VERBOSE setting and other rcS variables
36
. /lib/init/vars.sh
37
 
38
# Define LSB log_* functions.
39
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
40
. /lib/lsb/init-functions
41
 
42
#
43
# Function that starts the daemon/service
44
#
45
do_start()
46
{
47
	# Return
48
	#   0 if daemon has been started
49
	#   1 if daemon was already running
50
	#   2 if daemon could not be started
4700 phani.kuma 51
        $DAEMON -u ${PROJECT_DIR}/shop2020/model/v1/user/UserContextServer.py -l /var/log/services/user.log -i $PIDFILE start 
3728 chandransh 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
4700 phani.kuma 67
        $DAEMON -u ${PROJECT_DIR}/shop2020/model/v1/user/UserContextServer.py -l /var/log/services/user.log -i $PIDFILE stop
3728 chandransh 68
	RETVAL="$?"
69
	[ "$RETVAL" = 1 ] && 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
: