#!/bin/bash # Скрипт для создания бекапа версии бота # Использование: ./backup_version.sh v1.1 "Опросы и голосования" VERSION=${1:-"v1.0_mvp"} DESCRIPTION=${2:-"Backup"} DATE=$(date +%Y-%m-%d) BACKUP_DIR="backups/versions/${VERSION}_${DATE}" echo "📦 Создание бекапа версии: $VERSION" echo "📁 Директория: $BACKUP_DIR" # Создаём директорию mkdir -p "$BACKUP_DIR" # Копируем важные файлы (исключая venv, логи, экспорты, БД) rsync -av --exclude='venv/' --exclude='logs/' --exclude='exports/' --exclude='backups/' \ --exclude='*.db' --exclude='*.log' --exclude='.env' \ ./ "$BACKUP_DIR/source/" # Копируем БД отдельно (если есть) if [ -f "database/domovoy.db" ]; then cp database/domovoy.db "$BACKUP_DIR/" 2>/dev/null || true fi # Создаём README бекапа cat > "$BACKUP_DIR/README.md" << EOF # 📦 Бекап версии: $VERSION **Дата:** $DATE **Описание:** $DESCRIPTION ## Содержимое: - \`source/\` — исходный код версии - \`*.db\` — база данных (если есть) ## Восстановление: \`\`\`bash cd /home/matrixhasyou/domovoy_bot ./stop.sh cp -r $BACKUP_DIR/source/* ./ ./start.sh \`\`\` EOF # Создаём архив cd backups/versions tar -czf "${VERSION}_${DATE}.tar.gz" "${VERSION}_${DATE}/" cd ../.. echo "✅ Бекап создан!" echo "📁 Путь: $BACKUP_DIR" echo "📦 Архив: backups/versions/${VERSION}_${DATE}.tar.gz"