Files
smom-dbis-138/docs/deployment/MAINNET_DEPLOYMENT_CHECKLIST.md
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

2.4 KiB

Ethereum Mainnet Deployment Checklist

Contracts to Deploy

1. CCIPLogger

  • Status: Pending
  • Location: contracts/ccip-integration/CCIPLogger.sol
  • Deployment: npm run deploy:logger:mainnet
  • Dependencies: CCIP Router (Chainlink official: 0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D)
  • Constructor Parameters:
    • router: CCIP Router address
    • authorizedSigner: Optional signer address (can be zero)
    • sourceChainSelector: Chain-138 selector (0x000000000000008a)

2. CCIPWETH9Bridge

  • Status: Pending
  • Location: contracts/ccip/CCIPWETH9Bridge.sol
  • Deployment: script/DeployCCIPWETH9Bridge.s.sol
  • Dependencies:
    • CCIP Router (Chainlink official)
    • WETH9 (already exists: 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2)
  • Constructor Parameters:
    • ccipRouter: CCIP Router address
    • weth9: WETH9 address
    • feeToken: LINK token address (0x514910771AF9Ca656af840dff83E8264EcF986CA)

3. CCIPWETH10Bridge

  • Status: Pending
  • Location: contracts/ccip/CCIPWETH10Bridge.sol
  • Deployment: script/DeployCCIPWETH10Bridge.s.sol
  • Dependencies:
    • CCIP Router (Chainlink official)
    • WETH10 (already exists: 0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f)
  • Constructor Parameters:
    • ccipRouter: CCIP Router address
    • weth10: WETH10 address
    • feeToken: LINK token address

Deployment Order

  1. CCIPLogger (first - no dependencies on new contracts)
  2. CCIPWETH9Bridge (can deploy after CCIPLogger)
  3. CCIPWETH10Bridge (can deploy after CCIPLogger)

Pre-Deployment Checklist

  • Run dry-run: ./scripts/deployment/dry-run-mainnet-deployment.sh
  • Verify wallet has sufficient ETH (check: ./scripts/deployment/check-mainnet-balances.sh)
  • Verify all environment variables are set
  • Verify contracts compile successfully
  • Verify RPC connection to Mainnet

Post-Deployment Checklist

  • Verify contracts on Etherscan
  • Update .env with deployed addresses
  • Configure bridge destinations
  • Test cross-chain functionality
  • Set up monitoring and alerts

Cost Estimates

See docs/GAS_FEE_CALCULATIONS.md for current cost estimates.

Commands

# List all contracts
./scripts/deployment/list-mainnet-contracts.sh

# Run dry-run
./scripts/deployment/dry-run-mainnet-deployment.sh

# Deploy all contracts
./scripts/deployment/deploy-all-mainnet.sh