# Remaining Steps to Complete Deployment ## Critical Issues ### 1. Besu RPC Nodes Not Running **Status**: ❌ Blocking contract deployment **Issue**: The Besu RPC nodes (VMIDs 2500, 2501, 2502) are failing to start due to a RocksDB database metadata corruption issue. **Error**: ``` Failed to retrieve the RocksDB database meta version: No content to map due to end-of-input ``` **Fix Required**: 1. Check Besu data directories in containers 2500, 2501, 2502 2. Either fix the database metadata or reinitialize the blockchain nodes 3. Verify RPC endpoints are accessible: - http://192.168.11.250:8545 - http://192.168.11.251:8545 - http://192.168.11.252:8545 **Commands to diagnose**: ```bash ssh root@192.168.11.10 "pct exec 2500 -- ls -la /var/lib/besu/data" ssh root@192.168.11.10 "pct exec 2500 -- journalctl -u besu-rpc -n 50" ``` ### 2. Contract Deployment **Status**: ⏳ Waiting for RPC nodes Once RPC nodes are fixed, deploy contracts: ```bash ssh root@192.168.11.10 "pct exec 3001 -- bash -c 'cd /opt/contracts && export PATH=\"/root/.local/share/pnpm:\$PATH\" && pnpm run deploy:chain138'" ``` After deployment, update these environment files with the deployed addresses: - `frontend/.env` - `frontend/.env.production` - `frontend/.env.local` - `backend/.env` - `contracts/.env` ## Completed Steps ✅ 1. ✅ Chain 138 network configuration added to frontend, backend, and contracts 2. ✅ Environment files created with Chain 138 RPC URLs 3. ✅ Frontend container deployed (VMID 3000) 4. ✅ Backend container deployed (VMID 3001) 5. ✅ Indexer container deployed (VMID 3002) 6. ✅ Database container deployed (VMID 3003) 7. ✅ Contracts code copied to backend container 8. ✅ Systemd services configured for all components ## Next Steps After RPC Fix 1. **Deploy Contracts** ```bash ssh root@192.168.11.10 "pct exec 3001 -- bash -c 'cd /opt/contracts && export PATH=\"/root/.local/share/pnpm:\$PATH\" && pnpm run deploy:chain138'" ``` 2. **Update Contract Addresses** - Extract deployed addresses from deployment output - Update `NEXT_PUBLIC_TREASURY_WALLET_ADDRESS` in frontend env files - Update `NEXT_PUBLIC_SUB_ACCOUNT_FACTORY_ADDRESS` in frontend env files - Update `CONTRACT_ADDRESS` in backend/.env - Update `CONTRACT_ADDRESS` in indexer container 3. **Restart Services** ```bash ssh root@192.168.11.10 "pct exec 3000 -- systemctl restart solace-frontend" ssh root@192.168.11.10 "pct exec 3001 -- systemctl restart solace-backend" ssh root@192.168.11.10 "pct exec 3002 -- systemctl restart solace-indexer" ``` 4. **Verify Deployment** - Check frontend: http://192.168.11.60 (or configured domain) - Check backend API: http://192.168.11.61:3001 - Check indexer logs: `ssh root@192.168.11.10 "pct exec 3002 -- journalctl -u solace-indexer -f"` ## Service Status Check ```bash # Check all services ssh root@192.168.11.10 "pct exec 3000 -- systemctl status solace-frontend" ssh root@192.168.11.10 "pct exec 3001 -- systemctl status solace-backend" ssh root@192.168.11.10 "pct exec 3002 -- systemctl status solace-indexer" ssh root@192.168.11.10 "pct exec 3000 -- systemctl status nginx" ``` ## Network Configuration - **Frontend**: 192.168.11.60 (VMID 3000) - **Backend**: 192.168.11.61 (VMID 3001) - **Indexer**: 192.168.11.62 (VMID 3002) - **Database**: 192.168.11.63 (VMID 3003) - **RPC Nodes**: 192.168.11.250-252 (VMIDs 2500-2502) ## Environment Files Location - Frontend: `/opt/solace-frontend/.env` (VMID 3000) - Backend: `/opt/solace-backend/.env` (VMID 3001) - Indexer: `/opt/solace-indexer/.env` (VMID 3002) - Contracts: `/opt/contracts/.env` (VMID 3001)