sitemap и тд
This commit is contained in:
91
deploy.sh
Normal file
91
deploy.sh
Normal file
@@ -0,0 +1,91 @@
|
||||
#!/bin/bash
|
||||
# Deploy script для обновления ospab-host на сервере
|
||||
# Использование: ./deploy.sh
|
||||
|
||||
set -e # Выход при первой ошибке
|
||||
|
||||
echo "╔════════════════════════════════════════════════════════════╗"
|
||||
echo "║ DEPLOYMENT: VPS Sync + Logging Optimization ║"
|
||||
echo "╚════════════════════════════════════════════════════════════╝"
|
||||
|
||||
BACKEND_DIR="/var/www/ospab-host/backend"
|
||||
|
||||
# 1. Git update
|
||||
echo ""
|
||||
echo "📥 [1/6] Загружаю обновления из GitHub..."
|
||||
cd /var/www/ospab-host
|
||||
git pull origin main || {
|
||||
echo "❌ Ошибка: не удалось обновить git"
|
||||
exit 1
|
||||
}
|
||||
|
||||
# 2. Clean node_modules (на случай если были проблемы с prisma)
|
||||
echo ""
|
||||
echo "🧹 [2/6] Очищаю node_modules..."
|
||||
cd $BACKEND_DIR
|
||||
rm -rf node_modules package-lock.json
|
||||
echo "✅ Удалено"
|
||||
|
||||
# 3. Install dependencies
|
||||
echo ""
|
||||
echo "📚 [3/6] Переустанавливаю зависимости..."
|
||||
npm cache clean --force
|
||||
npm install || {
|
||||
echo "❌ Ошибка: не удалось установить зависимости"
|
||||
exit 1
|
||||
}
|
||||
echo "✅ Установлено"
|
||||
|
||||
# 4. Build
|
||||
echo ""
|
||||
echo "🔨 [4/6] Собираю backend..."
|
||||
npm run build || {
|
||||
echo "❌ Ошибка: не удалось собрать backend"
|
||||
exit 1
|
||||
}
|
||||
echo "✅ Собрано"
|
||||
|
||||
# 5. Restart backend
|
||||
echo ""
|
||||
echo "🔄 [5/6] Перезагружаю backend..."
|
||||
pm2 restart ospab-backend || {
|
||||
echo "❌ Ошибка: не удалось перезагрузить backend"
|
||||
echo " Убедитесь что PM2 установлен: npm install -g pm2"
|
||||
exit 1
|
||||
}
|
||||
sleep 2
|
||||
echo "✅ Перезагружено"
|
||||
|
||||
# 6. Health check
|
||||
echo ""
|
||||
echo "✅ [6/6] Проверяю статус..."
|
||||
echo ""
|
||||
|
||||
# Check health endpoint
|
||||
HEALTH=$(curl -s https://ospab.host:5000/health | grep -o '"status":"ok"' || echo "failed")
|
||||
if [[ $HEALTH == *"ok"* ]]; then
|
||||
echo "✅ Health check: OK"
|
||||
else
|
||||
echo "❌ Health check: FAILED"
|
||||
fi
|
||||
|
||||
# Check VPS Sync
|
||||
SYNC=$(curl -s https://ospab.host:5000/api/vps/sync/status | grep -o '"status":"connected"' || echo "failed")
|
||||
if [[ $SYNC == *"connected"* ]]; then
|
||||
echo "✅ VPS Sync: CONNECTED"
|
||||
else
|
||||
echo "⚠️ VPS Sync: DISABLED (check .env)"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "╔════════════════════════════════════════════════════════════╗"
|
||||
echo "║ ✨ DEPLOYMENT COMPLETE ║"
|
||||
echo "╚════════════════════════════════════════════════════════════╝"
|
||||
echo ""
|
||||
echo "📊 Backend logs:"
|
||||
echo " pm2 logs ospab-backend | grep VPS"
|
||||
echo ""
|
||||
echo "🔍 Проверить VPS Sync:"
|
||||
echo " curl https://ospab.host:5000/api/vps/sync/status"
|
||||
echo ""
|
||||
echo "✅ Готово!"
|
||||
Reference in New Issue
Block a user