Spaces:
Paused
Paused
| # AUTONOMOUS DEPLOYMENT RECOVERY SCRIPT | |
| # This script will be executed if GitHub Actions fails | |
| set -e | |
| echo "π§ AUTONOMOUS RECOVERY MODE" | |
| echo "This script deploys directly without GitHub Actions" | |
| # Configuration | |
| HF_SPACE="Kraft102/widgetdc-cortex" | |
| DEPLOY_DIR="hf-deploy-manual" | |
| echo "π Configuration:" | |
| echo " Space: $HF_SPACE" | |
| echo " Deploy Dir: $DEPLOY_DIR" | |
| # Step 1: Check HF CLI | |
| echo "" | |
| echo "1οΈβ£ Checking HuggingFace CLI..." | |
| if ! command -v huggingface-cli &> /dev/null; then | |
| echo "Installing HuggingFace CLI..." | |
| pip install -U "huggingface_hub[cli]" | |
| fi | |
| echo "β HF CLI ready" | |
| # Step 2: Login (requires HF_TOKEN env var) | |
| echo "" | |
| echo "2οΈβ£ Logging in to HuggingFace..." | |
| if [ -z "$HF_TOKEN" ]; then | |
| echo "β ERROR: HF_TOKEN environment variable not set" | |
| echo "Set it with: export HF_TOKEN='your_token_here'" | |
| exit 1 | |
| fi | |
| huggingface-cli login --token "$HF_TOKEN" | |
| echo "β Logged in" | |
| # Step 3: Prepare files | |
| echo "" | |
| echo "3οΈβ£ Preparing deployment files..." | |
| rm -rf "$DEPLOY_DIR" | |
| mkdir -p "$DEPLOY_DIR" | |
| # Copy backend | |
| mkdir -p "$DEPLOY_DIR/apps/backend" | |
| cp -r apps/backend/src "$DEPLOY_DIR/apps/backend/" | |
| cp -r apps/backend/prisma "$DEPLOY_DIR/apps/backend/" | |
| cp apps/backend/package.json "$DEPLOY_DIR/apps/backend/" | |
| cp apps/backend/tsconfig.json "$DEPLOY_DIR/apps/backend/" | |
| [ -f apps/backend/package-lock.json ] && cp apps/backend/package-lock.json "$DEPLOY_DIR/apps/backend/" | |
| # Copy packages | |
| mkdir -p "$DEPLOY_DIR/packages/domain-types" | |
| cp -r packages/domain-types/src "$DEPLOY_DIR/packages/domain-types/" | |
| cp packages/domain-types/package.json "$DEPLOY_DIR/packages/domain-types/" | |
| cp packages/domain-types/tsconfig.json "$DEPLOY_DIR/packages/domain-types/" | |
| mkdir -p "$DEPLOY_DIR/packages/mcp-types" | |
| cp -r packages/mcp-types/src "$DEPLOY_DIR/packages/mcp-types/" | |
| cp packages/mcp-types/package.json "$DEPLOY_DIR/packages/mcp-types/" | |
| cp packages/mcp-types/tsconfig.json "$DEPLOY_DIR/packages/mcp-types/" | |
| # Copy root config | |
| cp package.json "$DEPLOY_DIR/" | |
| [ -f package-lock.json ] && cp package-lock.json "$DEPLOY_DIR/" | |
| [ -f tsconfig.json ] && cp tsconfig.json "$DEPLOY_DIR/" | |
| # Copy Dockerfile | |
| if [ -f scripts/hf-backend.dockerfile ]; then | |
| cp scripts/hf-backend.dockerfile "$DEPLOY_DIR/Dockerfile" | |
| elif [ -f Dockerfile ]; then | |
| cp Dockerfile "$DEPLOY_DIR/" | |
| fi | |
| # Clean unwanted files | |
| find "$DEPLOY_DIR" -name "*.pdf" -delete 2>/dev/null || true | |
| find "$DEPLOY_DIR" -name "*.db*" -delete 2>/dev/null || true | |
| find "$DEPLOY_DIR" -name "*.sqlite" -delete 2>/dev/null || true | |
| find "$DEPLOY_DIR" -name "*.log" -delete 2>/dev/null || true | |
| find "$DEPLOY_DIR" -name "node_modules" -type d -exec rm -rf {} + 2>/dev/null || true | |
| find "$DEPLOY_DIR" -name "dist" -type d -exec rm -rf {} + 2>/dev/null || true | |
| # Create README | |
| cat > "$DEPLOY_DIR/README.md" <<'EOF' | |
| --- | |
| title: WidgeTDC Cortex | |
| emoji: π§ | |
| colorFrom: blue | |
| colorTo: purple | |
| sdk: docker | |
| app_port: 7860 | |
| hardware: t4-small | |
| --- | |
| # WidgeTDC Cortex - Neural Backend | |
| Enterprise AI backend with GPU-accelerated embeddings and MCP agents. | |
| ## Features | |
| - GPU-accelerated embeddings via sentence-transformers | |
| - MCP (Model Context Protocol) tool execution | |
| - Real-time WebSocket communication | |
| - Health monitoring at /health endpoint | |
| EOF | |
| echo "β Files prepared" | |
| # Step 4: Create Space (if not exists) | |
| echo "" | |
| echo "4οΈβ£ Creating Space (if needed)..." | |
| huggingface-cli repo create "$HF_SPACE" --type space --space_sdk docker || echo "Space already exists" | |
| echo "β Space ready" | |
| # Step 5: Upload | |
| echo "" | |
| echo "5οΈβ£ Uploading to HuggingFace..." | |
| huggingface-cli upload \ | |
| "$HF_SPACE" \ | |
| "$DEPLOY_DIR" \ | |
| . \ | |
| --repo-type=space \ | |
| --commit-message="Manual deployment from recovery script - $(date +%Y-%m-%d_%H-%M-%S)" | |
| echo "" | |
| echo "β β β DEPLOYMENT SUCCESSFUL! β β β " | |
| echo "" | |
| echo "π Space URL: https://huggingface.co/spaces/$HF_SPACE" | |
| echo "π API Endpoint: https://$(echo $HF_SPACE | tr '/' '-').hf.space/" | |
| echo "" | |
| echo "β³ Space is now building Docker image (5-10 minutes)" | |
| echo "π Don't forget to add environment variables in Space settings!" | |
| echo "" | |
| echo "π Deployment complete!" | |