| 123456789101112131415161718192021222324252627282930313233343536373839 |
- #!/bin/bash
- # Скрипт автоматического обновления сайта
- PROJECT_DIR="/var/www/radionica3d"
- echo "==== DEPLOY STARTING: $(date) ===="
- cd $PROJECT_DIR
- # 1. Забираем код
- echo "git pull..."
- git pull origin master
- # 2. Собираем фронтенд
- echo "building frontend..."
- npm install --legacy-peer-deps
- # Keep old assets briefly to prevent 404 for existing sessions
- echo "preserving old assets..."
- mkdir -p dist/assets
- rm -rf /tmp/radionica_assets_backup
- cp -r dist/assets /tmp/radionica_assets_backup || true
- bash build_frontend.sh
- # Restore old assets (no-clobber, don't overwrite new files)
- echo "restoring old assets for compatibility..."
- cp -n /tmp/radionica_assets_backup/* dist/assets/ 2>/dev/null || true
- # 3. Обновляем бэкенд
- echo "updating backend..."
- ./backend/venv/bin/pip install -r backend/requirements.txt
- # 4. Перезапуск
- echo "restarting services..."
- sudo systemctl restart radionica-backend
- cp /var/www/radionica3d/nginx.conf /etc/nginx/sites-available/radionica3d
- sudo systemctl reload nginx
- sudo chown -R www-data:www-data $PROJECT_DIR
- echo "==== DEPLOY FINISHED: $(date) ===="
|