#!/bin/bash ############################################################################### # Скрипт быстрого исправления установки ############################################################################### set -e echo "==========================================" echo "Fixing AI Review Installation" echo "==========================================" echo "" # Определить директорию установки (где находится скрипт) SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" INSTALL_DIR="$SCRIPT_DIR" echo "Working directory: $INSTALL_DIR" echo "" cd "$INSTALL_DIR" # 1. Создать Python virtual environment echo "[1/5] Создание Python virtual environment..." cd backend python3 -m venv venv source venv/bin/activate echo "✓ venv создан" echo "" # 2. Установить Python зависимости echo "[2/5] Установка Python зависимостей..." pip install --upgrade pip > /dev/null pip install -r requirements.txt > /dev/null echo "✓ Python зависимости установлены" echo "" # 3. Создать базу данных echo "[3/5] Создание базы данных..." python migrate.py echo "✓ База данных создана" echo "" # 4. Установить Node.js зависимости и собрать frontend echo "[4/5] Сборка frontend..." cd ../frontend # Проверить наличие Node.js if ! command -v node &> /dev/null; then echo "ERROR: Node.js не установлен!" echo "Установите: curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - && sudo apt-get install -y nodejs" exit 1 fi # Создать .env.production cat > .env.production << 'EOF' VITE_API_URL=/api VITE_WS_URL= EOF npm install > /dev/null 2>&1 npm run build echo "✓ Frontend собран" echo "" # 5. Проверить результат echo "[5/5] Проверка..." cd .. echo "Backend venv: $([ -d backend/venv ] && echo '✓ OK' || echo '✗ MISSING')" echo "Backend DB: $([ -f backend/review.db ] && echo '✓ OK' || echo '✗ MISSING')" echo "Frontend build: $([ -d backend/public ] && echo '✓ OK' || echo '✗ MISSING')" echo "" if [ -d backend/venv ] && [ -f backend/review.db ] && [ -d backend/public ]; then echo "==========================================" echo "✓ Installation fixed successfully!" echo "==========================================" echo "" echo "Now run:" echo " sudo systemctl restart ai-review" echo " sudo systemctl status ai-review" echo "" echo "Or start manually:" echo " cd $INSTALL_DIR/backend" echo " source venv/bin/activate" echo " uvicorn app.main:app --host 0.0.0.0 --port 8000" else echo "ERROR: Something is still missing!" exit 1 fi