80d73d1b74
- redis/client.py: use BlockingConnectionPool.from_url() (fixes 'url' kwarg error) - database/engine_compat.py: patch aiomysql do_ping to satisfy pool_pre_ping - database/session.py: apply engine_compat patch before create_async_engine - requirements.txt: SQLAlchemy 2.0.49 (fixes aiomysql ping() reconnect signature) - .env.example: document NEXUS_REDIS_URL format - scripts/wsl_ensure_venv.sh: create project .venv (PEP 668 safe) - scripts/wsl_start_dev.sh: use .venv python, validate Redis before start - scripts/wsl_integration_smoke.sh: code-only verification mode - scripts/wsl_check_mysql.py / bootstrap_database.py: MySQL setup helpers - scripts/sync_frontend_vendor.py: vendor asset sync utility Co-authored-by: Cursor <cursoragent@cursor.com>
22 lines
625 B
Bash
22 lines
625 B
Bash
#!/usr/bin/env bash
|
|
# Start Nexus FastAPI in WSL dev mode (reload).
|
|
set -euo pipefail
|
|
ROOT="$(cd "$(dirname "$0")/.." && pwd)"
|
|
cd "$ROOT"
|
|
|
|
bash scripts/wsl_ensure_venv.sh
|
|
PY="${ROOT}/.venv/bin/python3"
|
|
|
|
if ! redis-cli ping 2>/dev/null | grep -q PONG; then
|
|
echo "ERROR: Redis not responding. Run: sudo service redis-server start"
|
|
exit 1
|
|
fi
|
|
|
|
if [[ ! -f .env ]]; then
|
|
echo "WARN: No .env — app runs in INSTALL MODE only."
|
|
echo " Open http://127.0.0.1:8600/app/install.html after start"
|
|
fi
|
|
|
|
echo "Starting Nexus on http://127.0.0.1:8600 ..."
|
|
exec "$PY" -m uvicorn server.main:app --host 127.0.0.1 --port 8600 --reload
|