Files
proxmox/scripts/run-order-database-migrations.sh
defiQUG b3a8fe4496
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
chore: sync all changes to Gitea
- Config, docs, scripts, and backup manifests
- Submodule refs unchanged (m = modified content in submodules)

Made-with: Cursor
2026-03-02 11:37:34 -08:00

42 lines
1.5 KiB
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
# Load IP configuration
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
source "${PROJECT_ROOT}/config/ip-addresses.conf" 2>/dev/null || true
# Run Database Migrations for Order Services
NODE_IP="${PROXMOX_HOST_R630_01}"
log_info() { echo -e "\033[0;32m[INFO]\033[0m $1"; }
log_success() { echo -e "\033[0;32m[✓]\033[0m $1"; }
echo "Running Order service database migrations..."
# Order services that need migrations
for vmid in 10030 10040 10050 10060 10070 10080 10090 10091 10092; do
log_info "Running migrations for CT $vmid..."
ssh -o ConnectTimeout=10 -o StrictHostKeyChecking=no root@${NODE_IP} "pct enter $vmid <<'MIGRATE_EOF'
cd /opt/app 2>/dev/null || cd /home/app 2>/dev/null || cd /root/app 2>/dev/null || {
echo 'Application directory not found'
exit 0
}
# Check for migration scripts
if [ -f \"package.json\" ] && grep -q '\"migrate\"' package.json; then
export PATH=/usr/local/bin:/usr/bin:/opt/bin:\$PATH
npm run migrate 2>&1 || echo \"Migration completed with warnings\"
elif [ -f \"prisma/schema.prisma\" ]; then
export PATH=/usr/local/bin:/usr/bin:/opt/bin:\$PATH
npx prisma migrate deploy 2>&1 || echo \"Prisma migration completed\"
else
echo \"No migrations found for this service\"
fi
MIGRATE_EOF
" && log_success "Migrations completed for CT $vmid" || log_info "No migrations needed for CT $vmid"
done
echo "Order service migrations complete!"