Files
smom-dbis-138/scripts/deployment/check-all-deployment-sources.sh
defiQUG 1fb7266469 Add Oracle Aggregator and CCIP Integration
- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control.
- Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities.
- Created .gitmodules to include OpenZeppelin contracts as a submodule.
- Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment.
- Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks.
- Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring.
- Created scripts for resource import and usage validation across non-US regions.
- Added tests for CCIP error handling and integration to ensure robust functionality.
- Included various new files and directories for the orchestration portal and deployment scripts.
2025-12-12 14:57:48 -08:00

147 lines
5.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# Check all possible sources for deployment addresses
set -e
cd "$(dirname "$0")/../.."
# Color codes
echo "=== Checking All Deployment Sources ==="
# 1. Check .env file
log_info "1. Environment Variables (.env)"
if [ -f .env ]; then
echo " ✅ .env file exists"
# Check for Mainnet addresses
MAINNET_VARS=$(grep -E "MAINNET_|ETHEREUM_" .env 2>/dev/null | grep -v "^#" | wc -l)
CHAIN138_VARS=$(grep -E "CHAIN138_" .env 2>/dev/null | grep -v "^#" | wc -l)
echo " Mainnet variables: $MAINNET_VARS"
echo " Chain-138 variables: $CHAIN138_VARS"
# List specific addresses if found
if grep -q "MAINNET_CCIP_LOGGER" .env 2>/dev/null; then
LOGGER=$(grep "MAINNET_CCIP_LOGGER" .env | cut -d'=' -f2 | tr -d '"' | tr -d "'" | xargs)
if [ -n "$LOGGER" ] && [ "$LOGGER" != "" ]; then
echo -e " ${GREEN}✅ CCIPLogger: $LOGGER${NC}"
fi
fi
if grep -q "MAINNET_CCIP_WETH9_BRIDGE" .env 2>/dev/null; then
BRIDGE9=$(grep "MAINNET_CCIP_WETH9_BRIDGE" .env | cut -d'=' -f2 | tr -d '"' | tr -d "'" | xargs)
if [ -n "$BRIDGE9" ] && [ "$BRIDGE9" != "" ]; then
echo -e " ${GREEN}✅ CCIPWETH9Bridge: $BRIDGE9${NC}"
fi
fi
if grep -q "MAINNET_CCIP_WETH10_BRIDGE" .env 2>/dev/null; then
BRIDGE10=$(grep "MAINNET_CCIP_WETH10_BRIDGE" .env | cut -d'=' -f2 | tr -d '"' | tr -d "'" | xargs)
if [ -n "$BRIDGE10" ] && [ "$BRIDGE10" != "" ]; then
echo -e " ${GREEN}✅ CCIPWETH10Bridge: $BRIDGE10${NC}"
fi
fi
if grep -q "CHAIN138_CCIP_REPORTER" .env 2>/dev/null; then
REPORTER=$(grep "CHAIN138_CCIP_REPORTER" .env | cut -d'=' -f2 | tr -d '"' | tr -d "'" | xargs)
if [ -n "$REPORTER" ] && [ "$REPORTER" != "" ]; then
echo -e " ${GREEN}✅ CCIPTxReporter: $REPORTER${NC}"
fi
fi
else
echo -e " ${RED}❌ .env file not found${NC}"
fi
# 2. Check Foundry broadcast files
log_info "2. Foundry Broadcast Files"
if [ -d "broadcast" ]; then
echo " ✅ broadcast directory exists"
# Check for Mainnet deployments
MAINNET_DEPLOYS=$(find broadcast -name "*.json" -type f 2>/dev/null | grep -E "(mainnet|1)" | wc -l)
CHAIN138_DEPLOYS=$(find broadcast -name "*.json" -type f 2>/dev/null | grep -E "(138)" | wc -l)
echo " Mainnet deployment files: $MAINNET_DEPLOYS"
echo " Chain-138 deployment files: $CHAIN138_DEPLOYS"
if [ $MAINNET_DEPLOYS -gt 0 ]; then
echo " Recent Mainnet deployments:"
find broadcast -name "*.json" -type f 2>/dev/null | grep -E "(mainnet|1)" | head -5 | while read file; do
echo " - $file"
done
fi
else
echo -e " ${YELLOW}⚠️ broadcast directory not found${NC}"
fi
# 3. Check Hardhat artifacts
log_info "3. Hardhat Artifacts"
if [ -d "artifacts" ]; then
echo " ✅ artifacts directory exists"
# Check for deployed contract addresses in artifacts
DEPLOYED=$(find artifacts -name "*.json" -type f 2>/dev/null | xargs grep -l "deployedAddress\|address" 2>/dev/null | wc -l)
echo " Artifacts with addresses: $DEPLOYED"
else
echo -e " ${YELLOW}⚠️ artifacts directory not found${NC}"
fi
# 4. Check documentation files
log_info "4. Documentation Files"
DOCS_WITH_ADDRESSES=$(find docs -name "*.md" -type f 2>/dev/null | xargs grep -l "0x[a-fA-F0-9]\{40\}" 2>/dev/null | wc -l)
echo " Documentation files with addresses: $DOCS_WITH_ADDRESSES"
if [ $DOCS_WITH_ADDRESSES -gt 0 ]; then
echo " Files containing addresses:"
find docs -name "*.md" -type f 2>/dev/null | xargs grep -l "0x[a-fA-F0-9]\{40\}" 2>/dev/null | head -5 | while read file; do
echo " - $file"
done
fi
# 5. Check for contract address files
log_info "5. Contract Address Files"
ADDRESS_FILES=$(find . -name "*address*.json" -o -name "*deploy*.json" -o -name "*contract*.json" 2>/dev/null | grep -v node_modules | grep -v ".git" | head -5)
if [ -n "$ADDRESS_FILES" ]; then
echo " Found address files:"
echo "$ADDRESS_FILES" | while read file; do
echo " - $file"
done
else
echo -e " ${YELLOW}⚠️ No contract address files found${NC}"
fi
echo "=== Summary ==="
# Count total found addresses
TOTAL_FOUND=0
if [ -f .env ]; then
if grep -q "MAINNET_CCIP_LOGGER=" .env 2>/dev/null && [ -n "$(grep "MAINNET_CCIP_LOGGER" .env | cut -d'=' -f2 | tr -d ' ')" ]; then
TOTAL_FOUND=$((TOTAL_FOUND + 1))
fi
if grep -q "MAINNET_CCIP_WETH9_BRIDGE=" .env 2>/dev/null && [ -n "$(grep "MAINNET_CCIP_WETH9_BRIDGE" .env | cut -d'=' -f2 | tr -d ' ')" ]; then
TOTAL_FOUND=$((TOTAL_FOUND + 1))
fi
if grep -q "MAINNET_CCIP_WETH10_BRIDGE=" .env 2>/dev/null && [ -n "$(grep "MAINNET_CCIP_WETH10_BRIDGE" .env | cut -d'=' -f2 | tr -d ' ')" ]; then
TOTAL_FOUND=$((TOTAL_FOUND + 1))
fi
fi
echo " Contracts with addresses found: $TOTAL_FOUND/3 (Mainnet)"
echo " WETH9/WETH10: Predeployed at canonical addresses"
if [ $TOTAL_FOUND -eq 0 ]; then
log_error "❌ No deployment addresses found"
echo " All contracts need to be deployed"
elif [ $TOTAL_FOUND -lt 3 ]; then
log_warn "⚠️ Partial deployment"
echo " Some contracts still need deployment"
else
log_success "✅ All contracts have addresses configured"
fi