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.
This commit is contained in:
105
scripts/deployment/verify-on-chain-deployments.sh
Executable file
105
scripts/deployment/verify-on-chain-deployments.sh
Executable file
@@ -0,0 +1,105 @@
|
||||
#!/usr/bin/env bash
|
||||
# Verify contract deployments on-chain
|
||||
|
||||
set -e
|
||||
|
||||
cd "$(dirname "$0")/../.."
|
||||
|
||||
# Color codes
|
||||
|
||||
echo "=== On-Chain Deployment Verification ==="
|
||||
|
||||
# Load environment variables
|
||||
if [ -f .env ]; then
|
||||
source .env 2>/dev/null || true
|
||||
fi
|
||||
|
||||
if ! command -v cast &> /dev/null; then
|
||||
log_error "Error: cast (Foundry) not found. Install Foundry to verify on-chain deployments."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check Mainnet contracts
|
||||
if [ -n "$ETHEREUM_MAINNET_RPC" ]; then
|
||||
log_info "Ethereum Mainnet:"
|
||||
|
||||
# WETH9
|
||||
echo -n " WETH9 (0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2): "
|
||||
WETH9_CODE=$(cast code 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2 --rpc-url "$ETHEREUM_MAINNET_RPC" 2>/dev/null || echo "")
|
||||
if [ -n "$WETH9_CODE" ] && [ "$WETH9_CODE" != "0x" ] && [ ${#WETH9_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_error "❌ Not found"
|
||||
fi
|
||||
|
||||
# WETH10
|
||||
echo -n " WETH10 (0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f): "
|
||||
WETH10_CODE=$(cast code 0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f --rpc-url "$ETHEREUM_MAINNET_RPC" 2>/dev/null || echo "")
|
||||
if [ -n "$WETH10_CODE" ] && [ "$WETH10_CODE" != "0x" ] && [ ${#WETH10_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_error "❌ Not found"
|
||||
fi
|
||||
|
||||
# CCIPLogger
|
||||
if [ -n "$MAINNET_CCIP_LOGGER" ] && [ "$MAINNET_CCIP_LOGGER" != "" ]; then
|
||||
echo -n " CCIPLogger ($MAINNET_CCIP_LOGGER): "
|
||||
LOGGER_CODE=$(cast code "$MAINNET_CCIP_LOGGER" --rpc-url "$ETHEREUM_MAINNET_RPC" 2>/dev/null || echo "")
|
||||
if [ -n "$LOGGER_CODE" ] && [ "$LOGGER_CODE" != "0x" ] && [ ${#LOGGER_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_error "❌ Not found"
|
||||
fi
|
||||
else
|
||||
echo -e " CCIPLogger: ${RED}❌ Not configured in .env${NC}"
|
||||
fi
|
||||
|
||||
# CCIPWETH9Bridge
|
||||
if [ -n "$MAINNET_CCIP_WETH9_BRIDGE" ] && [ "$MAINNET_CCIP_WETH9_BRIDGE" != "" ]; then
|
||||
echo -n " CCIPWETH9Bridge ($MAINNET_CCIP_WETH9_BRIDGE): "
|
||||
BRIDGE9_CODE=$(cast code "$MAINNET_CCIP_WETH9_BRIDGE" --rpc-url "$ETHEREUM_MAINNET_RPC" 2>/dev/null || echo "")
|
||||
if [ -n "$BRIDGE9_CODE" ] && [ "$BRIDGE9_CODE" != "0x" ] && [ ${#BRIDGE9_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_error "❌ Not found"
|
||||
fi
|
||||
else
|
||||
echo -e " CCIPWETH9Bridge: ${RED}❌ Not configured in .env${NC}"
|
||||
fi
|
||||
|
||||
# CCIPWETH10Bridge
|
||||
if [ -n "$MAINNET_CCIP_WETH10_BRIDGE" ] && [ "$MAINNET_CCIP_WETH10_BRIDGE" != "" ]; then
|
||||
echo -n " CCIPWETH10Bridge ($MAINNET_CCIP_WETH10_BRIDGE): "
|
||||
BRIDGE10_CODE=$(cast code "$MAINNET_CCIP_WETH10_BRIDGE" --rpc-url "$ETHEREUM_MAINNET_RPC" 2>/dev/null || echo "")
|
||||
if [ -n "$BRIDGE10_CODE" ] && [ "$BRIDGE10_CODE" != "0x" ] && [ ${#BRIDGE10_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_error "❌ Not found"
|
||||
fi
|
||||
else
|
||||
echo -e " CCIPWETH10Bridge: ${RED}❌ Not configured in .env${NC}"
|
||||
fi
|
||||
else
|
||||
log_warn "⚠️ Mainnet RPC not configured"
|
||||
fi
|
||||
|
||||
log_info "Chain-138:"
|
||||
|
||||
if [ -n "$CHAIN138_RPC_URL" ]; then
|
||||
# CCIPTxReporter
|
||||
if [ -n "$CHAIN138_CCIP_REPORTER" ] && [ "$CHAIN138_CCIP_REPORTER" != "" ]; then
|
||||
echo -n " CCIPTxReporter ($CHAIN138_CCIP_REPORTER): "
|
||||
REPORTER_CODE=$(cast code "$CHAIN138_CCIP_REPORTER" --rpc-url "$CHAIN138_RPC_URL" 2>/dev/null || echo "")
|
||||
if [ -n "$REPORTER_CODE" ] && [ "$REPORTER_CODE" != "0x" ] && [ ${#REPORTER_CODE} -gt 2 ]; then
|
||||
log_success "✅ Deployed"
|
||||
else
|
||||
log_warn "⚠️ Cannot verify (RPC may not be accessible)"
|
||||
fi
|
||||
else
|
||||
echo -e " CCIPTxReporter: ${RED}❌ Not configured in .env${NC}"
|
||||
fi
|
||||
else
|
||||
log_warn "⚠️ Chain-138 RPC not configured"
|
||||
fi
|
||||
|
||||
echo "=== Verification Complete ==="
|
||||
Reference in New Issue
Block a user