-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathrun
executable file
·44 lines (38 loc) · 1.11 KB
/
run
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
#!/bin/bash
P3=
if [[ -f $(which python3.7) ]]; then
P3=3.7
else
echo "WARNING: Could not find python 3.7 in path. You probable want to 'sudo apt install python3.7-venv'."
fi
CMD=$1
shift
if [ $CMD = "install" ]; then
python${P3} -m venv venv
. ./venv/bin/activate
pip install --upgrade pip || echo "Please first sudo apt install python${P3}-pip"
pip install --upgrade setuptools
pip install --upgrade -r requirements.txt
exit 0
fi
if [ ! -f "venv/bin/activate" ]; then
./run install
fi
. ./venv/bin/activate || exit -1
if [ $CMD = "devserver" ]; then
flask run --host=0.0.0.0 --port=5005 --no-reload "$@"
elif [ $CMD = "server" ]; then
python prodserver.py "$@"
elif [ $CMD = "local" ]; then
python local.py "$@"
elif [ $CMD = "lint" ]; then
mypy *.py app/*.py tests/*.py &&
flake8 &&
(yapf -d *.py tests/*.py app/*.py >/dev/null || (echo 'Format not happy, do ./run format!' && exit -1))
elif [ $CMD = "format" ]; then
yapf -i *.py tests/*.py app/*.py "$@"
elif [ $CMD = "test" ]; then
./run lint && python -m pytest -v -q "$@"
else
"$CMD" "$@"
fi