Files
solace-bg-dubai/deployment/proxmox/deploy-remote.sh
defiQUG c94eb595f8
Some checks failed
CI / lint-and-test (push) Has been cancelled
Initial commit: add .gitignore and README
2026-02-09 21:51:53 -08:00

57 lines
2.0 KiB
Bash
Executable File

#!/usr/bin/env bash
# Remote Deployment Script
# This script copies deployment files to Proxmox host and runs deployment
set -euo pipefail
PROXMOX_HOST="${PROXMOX_HOST:-192.168.11.10}"
PROXMOX_USER="${PROXMOX_USER:-root}"
DEPLOYMENT_DIR="/tmp/solace-dapp-deployment"
echo "=========================================="
echo "Remote Deployment to Proxmox VE"
echo "=========================================="
echo "Proxmox Host: $PROXMOX_HOST"
echo "User: $PROXMOX_USER"
echo ""
# Check if DATABASE_PASSWORD is set
if [[ -z "${DATABASE_PASSWORD:-}" ]]; then
echo "ERROR: DATABASE_PASSWORD environment variable must be set"
echo "Example: export DATABASE_PASSWORD='your_secure_password'"
exit 1
fi
# Get the script directory
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
echo "Copying deployment files to Proxmox host..."
ssh "$PROXMOX_USER@$PROXMOX_HOST" "mkdir -p $DEPLOYMENT_DIR"
scp -r "$SCRIPT_DIR"/* "$PROXMOX_USER@$PROXMOX_HOST:$DEPLOYMENT_DIR/"
echo "Copying project files..."
ssh "$PROXMOX_USER@$PROXMOX_HOST" "mkdir -p $DEPLOYMENT_DIR/project"
scp -r "$PROJECT_ROOT/backend" "$PROXMOX_USER@$PROXMOX_HOST:$DEPLOYMENT_DIR/project/"
scp -r "$PROJECT_ROOT/frontend" "$PROXMOX_USER@$PROXMOX_HOST:$DEPLOYMENT_DIR/project/"
scp -r "$PROJECT_ROOT/contracts" "$PROXMOX_USER@$PROXMOX_HOST:$DEPLOYMENT_DIR/project/"
echo "Setting up configuration..."
ssh "$PROXMOX_USER@$PROXMOX_HOST" "cat > $DEPLOYMENT_DIR/config/dapp.conf <<EOF
$(cat "$SCRIPT_DIR/config/dapp.conf")
DATABASE_PASSWORD=$DATABASE_PASSWORD
PROJECT_ROOT=$DEPLOYMENT_DIR/project
EOF
"
echo "Running deployment on Proxmox host..."
ssh "$PROXMOX_USER@$PROXMOX_HOST" "cd $DEPLOYMENT_DIR && chmod +x *.sh && sudo ./deploy-dapp.sh"
echo ""
echo "=========================================="
echo "Deployment Complete"
echo "=========================================="
echo "Check container status:"
echo " ssh $PROXMOX_USER@$PROXMOX_HOST 'pct list | grep -E \"300[0-3]\"'"