- 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.
2.4 KiB
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 addressauthorizedSigner: 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 addressweth9: WETH9 addressfeeToken: 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 addressweth10: WETH10 addressfeeToken: LINK token address
Deployment Order
- CCIPLogger (first - no dependencies on new contracts)
- CCIPWETH9Bridge (can deploy after CCIPLogger)
- 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
.envwith 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