From 4570ab91a6c1fea4d7f484bfa02cdbd98fe6142b Mon Sep 17 00:00:00 2001 From: Primakov Alexandr Alexandrovich Date: Mon, 13 Oct 2025 00:27:07 +0300 Subject: [PATCH] Update redeploy script and enhance documentation - Improved `redeploy-ubuntu.sh` with additional error handling and user feedback. - Updated `REDEPLOY_GUIDE.md` to clarify the redeployment process and include new troubleshooting tips. - Made structural enhancements to deployment documentation for better accessibility and navigation. - Adjusted `redeploy-hint.md` to align with recent automation changes. --- fix-installation.sh | 86 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 86 insertions(+) create mode 100644 fix-installation.sh diff --git a/fix-installation.sh b/fix-installation.sh new file mode 100644 index 0000000..99a668e --- /dev/null +++ b/fix-installation.sh @@ -0,0 +1,86 @@ +#!/bin/bash + +############################################################################### +# Скрипт быстрого исправления установки +############################################################################### + +set -e + +echo "==========================================" +echo "Fixing AI Review Installation" +echo "==========================================" +echo "" + +INSTALL_DIR="$HOME/code-review-agent" +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 +