61 lines
1.7 KiB
Bash
61 lines
1.7 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
# Stop all DBIS Core services gracefully
|
||
|
|
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../../.." && pwd)"
|
||
|
|
|
||
|
|
# Source utilities
|
||
|
|
source "$PROJECT_ROOT/dbis_core/scripts/utils/common.sh"
|
||
|
|
|
||
|
|
# Load configuration
|
||
|
|
load_config
|
||
|
|
|
||
|
|
log_info "========================================="
|
||
|
|
log_info "DBIS Core - Stop Services"
|
||
|
|
log_info "========================================="
|
||
|
|
log_info ""
|
||
|
|
|
||
|
|
check_root
|
||
|
|
if ! command_exists pct; then
|
||
|
|
error_exit "This script must be run on Proxmox host (pct command not found)"
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Stop containers in reverse order
|
||
|
|
log_info "Stopping containers..."
|
||
|
|
|
||
|
|
# Stop Frontend
|
||
|
|
if pct list | grep -q "^\s*${VMID_DBIS_FRONTEND:-10130}\s"; then
|
||
|
|
log_info "Stopping Frontend..."
|
||
|
|
pct stop "${VMID_DBIS_FRONTEND:-10130}" 2>/dev/null || log_warn "Frontend may already be stopped"
|
||
|
|
sleep 2
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Stop API
|
||
|
|
if pct list | grep -q "^\s*${VMID_DBIS_API_PRIMARY:-10150}\s"; then
|
||
|
|
log_info "Stopping API Primary..."
|
||
|
|
pct stop "${VMID_DBIS_API_PRIMARY:-10150}" 2>/dev/null || log_warn "API may already be stopped"
|
||
|
|
sleep 2
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Stop Redis
|
||
|
|
if pct list | grep -q "^\s*${VMID_DBIS_REDIS:-10120}\s"; then
|
||
|
|
log_info "Stopping Redis..."
|
||
|
|
pct stop "${VMID_DBIS_REDIS:-10120}" 2>/dev/null || log_warn "Redis may already be stopped"
|
||
|
|
sleep 2
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Stop PostgreSQL (last)
|
||
|
|
if pct list | grep -q "^\s*${VMID_DBIS_POSTGRES_PRIMARY:-10100}\s"; then
|
||
|
|
log_info "Stopping PostgreSQL Primary..."
|
||
|
|
pct stop "${VMID_DBIS_POSTGRES_PRIMARY:-10100}" 2>/dev/null || log_warn "PostgreSQL may already be stopped"
|
||
|
|
sleep 2
|
||
|
|
fi
|
||
|
|
|
||
|
|
log_info ""
|
||
|
|
log_success "Services stopped!"
|
||
|
|
log_info ""
|
||
|
|
log_info "Run './scripts/management/start-services.sh' to start services again"
|
||
|
|
|