-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrunserver
executable file
·81 lines (72 loc) · 1.46 KB
/
runserver
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
# /bin/bash
# just in case, we define base python here
if [ -z $PYTHON ];
then
PYTHON=python
fi
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
MEMCACHED_PORT=11211
MEMCACHED_PID_FILE=/tmp/memcached.pid
start_memcached()
{
memcached -d -p $MEMCACHED_PORT -P $MEMCACHED_PID_FILE
echo "Starting memcached"
}
kill_memcached()
{
kill $(cat $MEMCACHED_PID_FILE)
echo "Killing memcached"
}
start_uwsgi()
{
echo "Starting uWSGI"
# TODO: fix permissions to 664, put user, nginx in same group and such..
uwsgi \
--socket /tmp/CodeStreak.sock \
--chmod-socket=666 \
--chdir $DIR \
--wsgi-file $DIR/CodeStreak/wsgi.py \
--master true \
--processes 10 \
--vacuum true \
$@
}
start_fcgi()
{
echo "Starting FCGI"
$PYTHON manage.py runfcgi \
# method=prefork \
socket=/tmp/CodeStreak.socket \
# host=127.0.0.1 port=8080 \
settings=CodeStreak/settings_debug.py \
pidfile=/tmp/Codestreak.django.pid \
$@
}
start_normal()
{
echo "Starting $PYTHON"
$PYTHON manage.py runserver --settings=CodeStreak.settings_debug $@
}
##############################################################################
start_memcached
trap kill_memcached SIGINT
##############################################################################
case $1 in
"--uwsgi")
shift
start_uwsgi $@
;;
"--fcgi")
shift
start_fcgi $@
;;
"--pypy")
PYTHON=pypy
shift
start_normal $@
;;
*)
PYTHON=python
start_normal $@
;;
esac