#!/bin/bash set -e echo "======================================" echo " Upgrading NexusGuard SD-WAN Suite " echo "======================================" # Step 1: Docker down echo "[+] Stopping Docker containers..." docker-compose down --remove-orphans echo "[+] Docker containers stopped." # Step 2: Git pull main repo echo "[+] Pulling latest main repo..." git pull # Step 3: Update submodules echo "[+] Updating submodules..." git submodule update --init --recursive # Step 4: Submodule checkout — pull latest main on each for sub in apps/server-core apps/device-agent apps/dashboard-ui; do if [ -d "$sub" ]; then echo "[+] Updating $sub..." cd "$sub" git checkout main 2>/dev/null || git checkout master 2>/dev/null || true git pull cd - > /dev/null fi done # Step 5: Re-check superproject submodule pointers git submodule update --remote --merge 2>/dev/null || true # Step 6: Docker up echo "[+] Starting Docker containers..." docker-compose up -d echo "======================================" echo " NexusGuard upgrade complete! " echo " API Port : 8080 " echo "======================================"