forked from minzeyaphyo/burmddit
✅ Fix: Add category pages + MCP server for autonomous management
- Created /app/category/[slug]/page.tsx - category navigation now works - Built Burmddit MCP Server with 10 tools: * Site stats, article queries, content management * Deployment control, quality checks, pipeline triggers - Added MCP setup guide and config - Categories fully functional: ai-news, tutorials, tips-tricks, upcoming - Modo can now manage Burmddit autonomously via MCP
This commit is contained in:
60
scripts/backup-to-drive.sh
Executable file
60
scripts/backup-to-drive.sh
Executable file
@@ -0,0 +1,60 @@
|
||||
#!/bin/bash
|
||||
# Automatic backup to Google Drive
|
||||
# Backs up Burmddit database and important files
|
||||
|
||||
BACKUP_DIR="/tmp/burmddit-backups"
|
||||
DATE=$(date +%Y%m%d-%H%M%S)
|
||||
KEEP_DAYS=7
|
||||
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
|
||||
echo "📦 Starting Burmddit backup..."
|
||||
|
||||
# 1. Backup Database
|
||||
if [ ! -z "$DATABASE_URL" ]; then
|
||||
echo " → Database backup..."
|
||||
pg_dump "$DATABASE_URL" > "$BACKUP_DIR/database-$DATE.sql"
|
||||
gzip "$BACKUP_DIR/database-$DATE.sql"
|
||||
echo " ✓ Database backed up"
|
||||
else
|
||||
echo " ⚠ DATABASE_URL not set, skipping database backup"
|
||||
fi
|
||||
|
||||
# 2. Backup Configuration
|
||||
echo " → Configuration backup..."
|
||||
tar -czf "$BACKUP_DIR/config-$DATE.tar.gz" \
|
||||
/home/ubuntu/.openclaw/workspace/burmddit/backend/config.py \
|
||||
/home/ubuntu/.openclaw/workspace/burmddit/frontend/.env.local \
|
||||
/home/ubuntu/.openclaw/workspace/.credentials \
|
||||
2>/dev/null || true
|
||||
echo " ✓ Configuration backed up"
|
||||
|
||||
# 3. Backup Code (weekly only)
|
||||
if [ $(date +%u) -eq 1 ]; then # Monday
|
||||
echo " → Weekly code backup..."
|
||||
cd /home/ubuntu/.openclaw/workspace/burmddit
|
||||
git archive --format=tar.gz --output="$BACKUP_DIR/code-$DATE.tar.gz" HEAD
|
||||
echo " ✓ Code backed up"
|
||||
fi
|
||||
|
||||
# 4. Upload to Google Drive (if configured)
|
||||
if command -v rclone &> /dev/null; then
|
||||
if rclone listremotes | grep -q "gdrive:"; then
|
||||
echo " → Uploading to Google Drive..."
|
||||
rclone copy "$BACKUP_DIR/" gdrive:Backups/Burmddit/
|
||||
echo " ✓ Uploaded to Drive"
|
||||
else
|
||||
echo " ⚠ Google Drive not configured (run 'rclone config')"
|
||||
fi
|
||||
else
|
||||
echo " ⚠ rclone not installed, skipping Drive upload"
|
||||
fi
|
||||
|
||||
# 5. Clean up old local backups
|
||||
echo " → Cleaning old backups..."
|
||||
find "$BACKUP_DIR" -name "*.gz" -mtime +$KEEP_DAYS -delete
|
||||
echo " ✓ Old backups cleaned"
|
||||
|
||||
echo "✅ Backup complete!"
|
||||
echo " Location: $BACKUP_DIR"
|
||||
echo " Files: $(ls -lh $BACKUP_DIR | wc -l) backups"
|
||||
Reference in New Issue
Block a user