137 lines
3.3 KiB
Markdown
137 lines
3.3 KiB
Markdown
|
|
# Bidirectional Bridge Configuration - Requirements
|
||
|
|
|
||
|
|
**Date**: 2025-01-18
|
||
|
|
**Status**: ⚠️ **PREREQUISITES NEEDED**
|
||
|
|
|
||
|
|
## Required Prerequisites
|
||
|
|
|
||
|
|
### 1. PRIVATE_KEY ✅ Required
|
||
|
|
|
||
|
|
**Status**: ⚠️ **NOT SET**
|
||
|
|
|
||
|
|
**Required**: Private key for bridge admin account
|
||
|
|
|
||
|
|
**Bridge Admin Address** (from deployment verification):
|
||
|
|
```
|
||
|
|
0x4a666f96fc8764181194447a7dfdb7d471b301c8
|
||
|
|
```
|
||
|
|
|
||
|
|
**To Set**:
|
||
|
|
```bash
|
||
|
|
# Add to .env file
|
||
|
|
echo "PRIVATE_KEY=0x<your-private-key-for-admin-address>" >> .env
|
||
|
|
|
||
|
|
# Or set as environment variable
|
||
|
|
export PRIVATE_KEY=0x<your-private-key-for-admin-address>
|
||
|
|
```
|
||
|
|
|
||
|
|
**Note**: This private key must correspond to the admin address `0x4a666f96fc8764181194447a7dfdb7d471b301c8` that controls all bridges on both chains.
|
||
|
|
|
||
|
|
### 2. RPC Endpoints ✅ Required
|
||
|
|
|
||
|
|
**Mainnet RPC**:
|
||
|
|
- Default: `https://eth.llamarpc.com`
|
||
|
|
- Or set: `ETHEREUM_MAINNET_RPC=<rpc-url>` in `.env`
|
||
|
|
|
||
|
|
**ChainID 138 RPC**:
|
||
|
|
- Default: `http://192.168.11.211:8545` (VMID 2101)
|
||
|
|
- Or set: `RPC_URL_138=<rpc-url>` in `.env`
|
||
|
|
|
||
|
|
**Status**: ⚠️ **Need verification** - RPCs may need configuration
|
||
|
|
|
||
|
|
### 3. ChainID 138 Selector ✅ Available
|
||
|
|
|
||
|
|
**Status**: ✅ **FOUND**
|
||
|
|
|
||
|
|
**Value**: `5009297550715157269` (from `networks.json`)
|
||
|
|
|
||
|
|
**Auto-detection**: Scripts will automatically use this value from `networks.json`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Setup Instructions
|
||
|
|
|
||
|
|
### Step 1: Set PRIVATE_KEY
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cd /home/intlc/projects/proxmox/smom-dbis-138
|
||
|
|
|
||
|
|
# Add PRIVATE_KEY to .env (replace with actual private key)
|
||
|
|
echo "PRIVATE_KEY=0x<your-admin-private-key>" >> .env
|
||
|
|
|
||
|
|
# Verify it's set
|
||
|
|
grep PRIVATE_KEY .env
|
||
|
|
```
|
||
|
|
|
||
|
|
### Step 2: Verify RPC Endpoints
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# Test Mainnet RPC
|
||
|
|
cast chain-id --rpc-url https://eth.llamarpc.com
|
||
|
|
|
||
|
|
# Test ChainID 138 RPC
|
||
|
|
cast chain-id --rpc-url http://192.168.11.211:8545
|
||
|
|
```
|
||
|
|
|
||
|
|
### Step 3: Check Prerequisites
|
||
|
|
|
||
|
|
```bash
|
||
|
|
./scripts/configuration/check-prerequisites.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
This will verify:
|
||
|
|
- PRIVATE_KEY is set
|
||
|
|
- RPC endpoints are accessible
|
||
|
|
- ChainID 138 selector is available
|
||
|
|
- Admin address matches bridge admin
|
||
|
|
|
||
|
|
### Step 4: Run Configuration
|
||
|
|
|
||
|
|
Once prerequisites are met:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
./scripts/configuration/execute-full-bidirectional-config.sh
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Admin Address Verification
|
||
|
|
|
||
|
|
**All bridges use the same admin**: `0x4a666f96fc8764181194447a7dfdb7d471b301c8`
|
||
|
|
|
||
|
|
**Verify admin on Mainnet**:
|
||
|
|
```bash
|
||
|
|
cast call 0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6 "admin()" --rpc-url https://eth.llamarpc.com
|
||
|
|
# Expected: 0x0000000000000000000000004a666f96fc8764181194447a7dfdb7d471b301c8
|
||
|
|
```
|
||
|
|
|
||
|
|
**Verify admin on ChainID 138**:
|
||
|
|
```bash
|
||
|
|
cast call 0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6 "admin()" --rpc-url http://192.168.11.211:8545
|
||
|
|
# Expected: 0x0000000000000000000000004a666f96fc8764181194447a7dfdb7d471b301c8
|
||
|
|
```
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Current Status
|
||
|
|
|
||
|
|
| Requirement | Status | Action Needed |
|
||
|
|
|-------------|--------|---------------|
|
||
|
|
| PRIVATE_KEY | ⚠️ Not set | Add to .env |
|
||
|
|
| Mainnet RPC | ⚠️ Needs check | Verify accessibility |
|
||
|
|
| ChainID 138 RPC | ⚠️ Needs check | Verify accessibility |
|
||
|
|
| ChainID 138 Selector | ✅ Available | Auto-detected |
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
## Next Steps
|
||
|
|
|
||
|
|
1. **Set PRIVATE_KEY** in `.env` for admin address
|
||
|
|
2. **Verify RPC endpoints** are accessible
|
||
|
|
3. **Run prerequisites check**: `./scripts/configuration/check-prerequisites.sh`
|
||
|
|
4. **Execute configuration**: `./scripts/configuration/execute-full-bidirectional-config.sh`
|
||
|
|
|
||
|
|
---
|
||
|
|
|
||
|
|
**Status**: ⚠️ **AWAITING PRIVATE_KEY CONFIGURATION**
|