kill server when port is already used
[myslice.git] / devel / server-loop.sh
1 #!/bin/bash
2 DIRNAME=$(dirname $0)
3 cd $DIRNAME/..
4
5 # default port : if hostname starts with z -> use 8080 ; otherwise take 80
6 hostname | grep -q '^z' && port=8080 || port=80
7 [[ -n "$@" ]] && port=$1
8
9 while true; do 
10     # we use make for convenience
11     # but what the static target really does is to invoke manage.py collectstatic 
12     make static templates
13
14     # if port is already used, we kill the server
15     pid=$(netstat -putan | awk "\$4 == \"0.0.0.0:$port\" && \$7 != \"-\" {split(\$7,a,\"/\"); print a[1]}")
16     [[ -n "$pid" ]] && kill $pid
17     
18     ./manage.py runserver 0.0.0.0:$port
19         sleep 1
20 done