#!/bin/bash # Script to create a production deployment zip file set -e ZIP_NAME="gnx-web-production-$(date +%Y%m%d).zip" TEMP_DIR=$(mktemp -d) echo "📦 Creating deployment package: $ZIP_NAME" echo "" # Copy files to temp directory echo "📋 Copying files..." rsync -av --progress \ --exclude='.git' \ --exclude='node_modules' \ --exclude='__pycache__' \ --exclude='*.pyc' \ --exclude='venv' \ --exclude='env' \ --exclude='.venv' \ --exclude='*.log' \ --exclude='*.sqlite3' \ --exclude='backups' \ --exclude='*.swp' \ --exclude='*.swo' \ --exclude='.DS_Store' \ --exclude='.vscode' \ --exclude='.idea' \ --exclude='.next' \ --exclude='dist' \ --exclude='build' \ --exclude='*.egg-info' \ --exclude='.dockerignore' \ --exclude='.zipignore' \ ./ "$TEMP_DIR/gnx-web/" # Create zip echo "" echo "🗜️ Creating zip file..." cd "$TEMP_DIR" zip -r "$ZIP_NAME" gnx-web/ > /dev/null # Move to original directory mv "$ZIP_NAME" "$OLDPWD/" # Cleanup cd "$OLDPWD" rm -rf "$TEMP_DIR" echo "✅ Deployment package created: $ZIP_NAME" echo "" echo "📋 File size: $(du -h "$ZIP_NAME" | cut -f1)" echo "" echo "📤 Ready to upload to server!"