36 lines
1.1 KiB
Bash
36 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
BASE_DIR="$(cd "$(dirname "$0")"/.. && pwd)"
|
|
LOG_DIR="$BASE_DIR/logs"
|
|
mkdir -p "$LOG_DIR"
|
|
|
|
if [ -x "$BASE_DIR/.venv/bin/python" ]; then
|
|
PY_BIN="$BASE_DIR/.venv/bin/python"
|
|
elif [ -x "$BASE_DIR/.conda-env/bin/python" ]; then
|
|
PY_BIN="$BASE_DIR/.conda-env/bin/python"
|
|
elif command -v python3 >/dev/null 2>&1; then
|
|
PY_BIN="$(command -v python3)"
|
|
else
|
|
echo python not found
|
|
exit 1
|
|
fi
|
|
|
|
ZERO_DIR="$BASE_DIR/ZeroCodeProject/apis/ZeroCodeMain"
|
|
API_DIR="$BASE_DIR/ZeroCodeProject/apis/temp_api"
|
|
API_PORT="$($PY_BIN -c "import json,sys;print(json.load(open('$ZERO_DIR/api_django.json')).get('port', '8001'))" 2>/dev/null || echo 8001)"
|
|
ZERO_PORT="${ZERO_PORT:-8000}"
|
|
|
|
zero_pid="$LOG_DIR/zero_code.pid"
|
|
zero_out="$LOG_DIR/project-$ZERO_PORT.out"
|
|
api_pid="$LOG_DIR/api_service.pid"
|
|
api_out="$LOG_DIR/project-$API_PORT.out"
|
|
|
|
cd "$ZERO_DIR"
|
|
nohup "$PY_BIN" manage.py runserver 0.0.0.0:"$ZERO_PORT" > "$zero_out" 2>&1 &
|
|
echo $! > "$zero_pid"
|
|
|
|
cd "$API_DIR"
|
|
nohup "$PY_BIN" manage.py runserver 0.0.0.0:"$API_PORT" > "$api_out" 2>&1 &
|
|
echo $! > "$api_pid"
|
|
echo started "$ZERO_PORT" "$API_PORT" |