Spaces:
Sleeping
Sleeping
| set -e | |
| echo "=========================================" | |
| echo "Polyglot Backend Startup" | |
| echo "=========================================" | |
| # Check if app directory has any files (not just exists but is populated) | |
| if [ ! -d "/app/app" ] || [ -z "$(ls -A /app/app 2>/dev/null)" ]; then | |
| echo "App code not found. Downloading from private code space..." | |
| # Check for required environment variables | |
| if [ -z "$CODE_SPACE_ID" ]; then | |
| echo "ERROR: CODE_SPACE_ID environment variable not set" | |
| echo "Please set it in Space secrets" | |
| exit 1 | |
| fi | |
| if [ -z "$HUGGING_FACE_HUB_TOKEN" ]; then | |
| echo "ERROR: HUGGING_FACE_HUB_TOKEN environment variable not set" | |
| echo "Please set it in Space secrets" | |
| exit 1 | |
| fi | |
| echo "Downloading code from: $CODE_SPACE_ID" | |
| python download_code.py "$CODE_SPACE_ID" "$HUGGING_FACE_HUB_TOKEN" | |
| if [ ! -d "/app/app" ]; then | |
| echo "ERROR: Code download failed" | |
| exit 1 | |
| fi | |
| echo "OK Code downloaded successfully" | |
| else | |
| echo "App code already present, skipping download" | |
| fi | |
| echo "=========================================" | |
| echo "Starting uvicorn server..." | |
| echo "=========================================" | |
| # Start the application | |
| exec uvicorn app.main:socket_app --host 0.0.0.0 --port 7860 | |