49 lines
1.6 KiB
Bash
49 lines
1.6 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
# Phase 3: CCIP fleet deploy checklist - validate env and print steps.
|
||
|
|
# Usage: ./scripts/ccip/ccip-deploy-checklist.sh [--dry-run]
|
||
|
|
# Does not deploy nodes; validates prerequisites and prints deployment order from CCIP_DEPLOYMENT_SPEC.
|
||
|
|
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
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
|
||
|
|
|
||
|
|
echo "[Phase 3] CCIP fleet deploy checklist"
|
||
|
|
echo " Spec: docs/07-ccip/CCIP_DEPLOYMENT_SPEC.md"
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
FAILED=0
|
||
|
|
|
||
|
|
# VMID ranges (from spec)
|
||
|
|
echo "VMID ranges:"
|
||
|
|
echo " 5400-5401 Ops/Admin"
|
||
|
|
echo " 5402-5403 Monitoring"
|
||
|
|
echo " 5410-5425 Commit (16)"
|
||
|
|
echo " 5440-5455 Execute (16)"
|
||
|
|
echo " 5470-5476 RMN (5-7)"
|
||
|
|
echo ""
|
||
|
|
|
||
|
|
# Optional env checks (CCIP often uses Chainlink node env)
|
||
|
|
for v in CCIP_ETH_ROUTER CCIP_ETH_LINK_TOKEN ETH_MAINNET_SELECTOR; do
|
||
|
|
if [[ -z "${!v:-}" ]]; then
|
||
|
|
echo "[WARN] $v not set (required for mainnet CCIP)"
|
||
|
|
((FAILED++)) || true
|
||
|
|
else
|
||
|
|
echo "[OK] $v set"
|
||
|
|
fi
|
||
|
|
done
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "Deployment order (from spec):"
|
||
|
|
echo " 1. Deploy Ops/Admin nodes (5400-5401)"
|
||
|
|
echo " 2. Deploy Monitoring nodes (5402-5403)"
|
||
|
|
echo " 3. Deploy Commit nodes (5410-5425)"
|
||
|
|
echo " 4. Deploy Execute nodes (5440-5455)"
|
||
|
|
echo " 5. Deploy RMN nodes (5470-5476)"
|
||
|
|
echo " 6. Configure NAT pools (blocks #2-#4 per NETWORK_ARCHITECTURE)"
|
||
|
|
echo ""
|
||
|
|
echo "Run: see docs/07-ccip/CCIP_DEPLOYMENT_SPEC.md, docs/03-deployment/OPERATIONAL_RUNBOOKS.md § CCIP Operations"
|
||
|
|
# Exit 0 so checklist is informational; fix env and re-run if deploying
|
||
|
|
exit 0
|