From 49a41d96f6b03495cf556f28ae0f4b766907d706 Mon Sep 17 00:00:00 2001 From: Dev Date: Sun, 26 Jun 2022 18:29:43 -0500 Subject: [PATCH] linux guardiand works --- projects/evm-messenger/linux_wh.sh | 32 ---------- projects/evm-messenger/orchestrator.js | 65 +++++++++++-------- projects/evm-messenger/wormhole.sh | 86 +++++++++++++------------- 3 files changed, 81 insertions(+), 102 deletions(-) delete mode 100644 projects/evm-messenger/linux_wh.sh diff --git a/projects/evm-messenger/linux_wh.sh b/projects/evm-messenger/linux_wh.sh deleted file mode 100644 index 77cbf3b..0000000 --- a/projects/evm-messenger/linux_wh.sh +++ /dev/null @@ -1,32 +0,0 @@ -docker kill guaridand && docker rm guardiand -docker run -d --name guardiand --network host -p 7073:7073 -p 7071:7071 -p 7070:7070 --hostname guardian-0 --cap-add=IPC_LOCK --entrypoint /guardiand guardian node \ - --unsafeDevMode --guardianKey /tmp/bridge.key --publicRPC "[::]:7070" --publicWeb "[::]:7071" --adminSocket /tmp/admin.sock --dataDir /tmp/data \ - --ethRPC ws://localhost:8545 \ - --ethContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --bscRPC ws://localhost:8546 \ - --bscContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --polygonRPC ws://localhost:8545 \ - --avalancheRPC ws://localhost:8545 \ - --auroraRPC ws://localhost:8545 \ - --fantomRPC ws://localhost:8545 \ - --oasisRPC ws://localhost:8545 \ - --karuraRPC ws://localhost:8545 \ - --acalaRPC ws://localhost:8545 \ - --klaytnRPC ws://localhost:8545 \ - --celoRPC ws://localhost:8545 \ - --moonbeamRPC ws://localhost:8545 \ - --neonRPC ws://localhost:8545 \ - --terraWS ws://localhost:8545 \ - --terra2WS ws://localhost:8545 \ - --terraLCD https://http://terra-terrad:1317 \ - --terra2LCD http://localhost:1317 \ - --terraContract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ - --terra2Contract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ - --solanaContract Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o \ - --solanaWS ws://localhost:8900 \ - --solanaRPC http://localhost:8899 \ - --algorandIndexerRPC ws://localhost:8545 \ - --algorandIndexerToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ - --algorandAlgodToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ - --algorandAlgodRPC https://http://localhost:4001 \ - --algorandAppID "4" \ No newline at end of file diff --git a/projects/evm-messenger/orchestrator.js b/projects/evm-messenger/orchestrator.js index 6a3e6ab..8bdee9f 100644 --- a/projects/evm-messenger/orchestrator.js +++ b/projects/evm-messenger/orchestrator.js @@ -1,6 +1,6 @@ import { exec } from "child_process"; import fs from "fs"; -import { ethers, ContractFactory } from "ethers"; +import { ethers } from "ethers"; import { getEmitterAddressEth, parseSequenceFromLogEth, @@ -21,7 +21,7 @@ async function main() { console.log( `Deploying EVM network: ${process.argv[2]} to ${network.rpc}` ); - + exec( `cd chains/evm && forge build && forge create --legacy --rpc-url ${network.rpc} --private-key ${network.privateKey} src/Messenger.sol:Messenger && exit`, (err, out, errStr) => { @@ -44,24 +44,6 @@ async function main() { } } ); - - /* - exec(`cd chains/evm && forge build`) //Compiles EVM Code - const signer = new ethers.Wallet(network.privateKey).connect( - new ethers.providers.JsonRpcProvider(network.rpc) - ); - const MessengerJSON = JSON.parse(fs.readFileSync('./chains/evm/out/Messenger.sol/Messenger.json').toString()); - const MessengerFactory = new ContractFactory(MessengerJSON.abi, Buffer.from(MessengerJSON.deployedBytecode.object, "hex"), signer); - const contract = await MessengerFactory.deploy(); - console.log("Deployed to address: ", contract.address); - network.deployedAddress = contract.address; - network.emittedVAAs = []; - config.networks[process.argv[2]] = network; - fs.writeFileSync( - "./xdapp.config.json", - JSON.stringify(config, null, 4) - ); - */ } else { throw new Error("Invalid Network Type!"); } @@ -90,7 +72,13 @@ async function main() { const messenger = new ethers.Contract( network.deployedAddress, - JSON.parse(fs.readFileSync('./chains/evm/out/Messenger.sol/Messenger.json').toString()).abi, + JSON.parse( + fs + .readFileSync( + "./chains/evm/out/Messenger.sol/Messenger.json" + ) + .toString() + ).abi, signer ); await messenger.registerApplicationContracts( @@ -112,17 +100,26 @@ async function main() { ); const messenger = new ethers.Contract( network.deployedAddress, - JSON.parse(fs.readFileSync('./chains/evm/out/Messenger.sol/Messenger.json').toString()).abi, + JSON.parse( + fs + .readFileSync( + "./chains/evm/out/Messenger.sol/Messenger.json" + ) + .toString() + ).abi, signer ); const tx = await ( await messenger.sendMsg(Buffer.from(process.argv[4])) ).wait(); - + await new Promise((r) => setTimeout(r, 5000)); const emitterAddr = getEmitterAddressEth(messenger.address); const seq = parseSequenceFromLogEth(tx, network.bridgeAddress); - console.log("Searching for: ", `${config.wormhole.restAddress}/v1/signed_vaa/${network.wormholeChainId}/${emitterAddr}/${seq}`) + console.log( + "Searching for: ", + `${config.wormhole.restAddress}/v1/signed_vaa/${network.wormholeChainId}/${emitterAddr}/${seq}` + ); const vaaBytes = await ( await fetch( `${config.wormhole.restAddress}/v1/signed_vaa/${network.wormholeChainId}/${emitterAddr}/${seq}` @@ -158,11 +155,19 @@ async function main() { ); const messenger = new ethers.Contract( network.deployedAddress, - JSON.parse(fs.readFileSync('./chains/evm/out/Messenger.sol/Messenger.json').toString()).abi, + JSON.parse( + fs + .readFileSync( + "./chains/evm/out/Messenger.sol/Messenger.json" + ) + .toString() + ).abi, signer ); - const tx = await messenger.receiveEncodedMsg(Buffer.from(vaaBytes, "base64")); + const tx = await messenger.receiveEncodedMsg( + Buffer.from(vaaBytes, "base64") + ); console.log(`Submitted VAA: ${vaaBytes}\nTX: ${tx.hash}`); } } else if (process.argv[3] == "get_current_msg") { @@ -175,7 +180,13 @@ async function main() { ); const messenger = new ethers.Contract( network.deployedAddress, - JSON.parse(fs.readFileSync('./chains/evm/out/Messenger.sol/Messenger.json').toString()).abi, + JSON.parse( + fs + .readFileSync( + "./chains/evm/out/Messenger.sol/Messenger.json" + ) + .toString() + ).abi, signer ); console.log( diff --git a/projects/evm-messenger/wormhole.sh b/projects/evm-messenger/wormhole.sh index aa0fc6f..880b7e8 100644 --- a/projects/evm-messenger/wormhole.sh +++ b/projects/evm-messenger/wormhole.sh @@ -46,67 +46,67 @@ cd ../../ # Run Guardiand if [ $(uname -m) = "arm64" ]; then - docker run -d --name guardiand -p 7073:7073 -p 7071:7071 -p 7070:7070 --hostname guardian-0 --cap-add=IPC_LOCK --platform linux/amd64 --entrypoint /guardiand guardian node \ + docker run -d --name guardiand --network host --platform linux/amd64 --hostname guardian-0 --cap-add=IPC_LOCK --entrypoint /guardiand guardian node \ --unsafeDevMode --guardianKey /tmp/bridge.key --publicRPC "[::]:7070" --publicWeb "[::]:7071" --adminSocket /tmp/admin.sock --dataDir /tmp/data \ - --ethRPC ws://host.docker.internal:8545 \ + --ethRPC ws://localhost:8545 \ --ethContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --bscRPC ws://host.docker.internal:8546 \ + --bscRPC ws://localhost:8546 \ --bscContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --polygonRPC ws://host.docker.internal:8545 \ - --avalancheRPC ws://host.docker.internal:8545 \ - --auroraRPC ws://host.docker.internal:8545 \ - --fantomRPC ws://host.docker.internal:8545 \ - --oasisRPC ws://host.docker.internal:8545 \ - --karuraRPC ws://host.docker.internal:8545 \ - --acalaRPC ws://host.docker.internal:8545 \ - --klaytnRPC ws://host.docker.internal:8545 \ - --celoRPC ws://host.docker.internal:8545 \ - --moonbeamRPC ws://host.docker.internal:8545 \ - --neonRPC ws://host.docker.internal:8545 \ - --terraWS ws://host.docker.internal:8545 \ - --terra2WS ws://host.docker.internal:8545 \ - --terraLCD http://host.docker.internal:1317 \ - --terra2LCD http://host.docker.internal:1317 \ + --polygonRPC ws://localhost:8545 \ + --avalancheRPC ws://localhost:8545 \ + --auroraRPC ws://localhost:8545 \ + --fantomRPC ws://localhost:8545 \ + --oasisRPC ws://localhost:8545 \ + --karuraRPC ws://localhost:8545 \ + --acalaRPC ws://localhost:8545 \ + --klaytnRPC ws://localhost:8545 \ + --celoRPC ws://localhost:8545 \ + --moonbeamRPC ws://localhost:8545 \ + --neonRPC ws://localhost:8545 \ + --terraWS ws://localhost:8545 \ + --terra2WS ws://localhost:8545 \ + --terraLCD https://http://terra-terrad:1317 \ + --terra2LCD http://localhost:1317 \ --terraContract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ --terra2Contract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ --solanaContract Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o \ - --solanaWS ws://host.docker.internal:8900 \ - --solanaRPC http://host.docker.internal:8899 \ - --algorandIndexerRPC ws://host.docker.internal:8545 \ + --solanaWS ws://localhost:8900 \ + --solanaRPC http://localhost:8899 \ + --algorandIndexerRPC ws://localhost:8545 \ --algorandIndexerToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ --algorandAlgodToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ - --algorandAlgodRPC http://host.docker.internal:4001 \ + --algorandAlgodRPC https://http://localhost:4001 \ --algorandAppID "4" else - docker run -d --name guardiand -p 7073:7073 -p 7071:7071 -p 7070:7070 --hostname guardian-0 --cap-add=IPC_LOCK --entrypoint /guardiand guardian node \ +docker run -d --name guardiand --network host --hostname guardian-0 --cap-add=IPC_LOCK --entrypoint /guardiand guardian node \ --unsafeDevMode --guardianKey /tmp/bridge.key --publicRPC "[::]:7070" --publicWeb "[::]:7071" --adminSocket /tmp/admin.sock --dataDir /tmp/data \ - --ethRPC ws://host.docker.internal:8545 \ + --ethRPC ws://localhost:8545 \ --ethContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --bscRPC ws://host.docker.internal:8546 \ + --bscRPC ws://localhost:8546 \ --bscContract "0xC89Ce4735882C9F0f0FE26686c53074E09B0D550" \ - --polygonRPC ws://host.docker.internal:8545 \ - --avalancheRPC ws://host.docker.internal:8545 \ - --auroraRPC ws://host.docker.internal:8545 \ - --fantomRPC ws://host.docker.internal:8545 \ - --oasisRPC ws://host.docker.internal:8545 \ - --karuraRPC ws://host.docker.internal:8545 \ - --acalaRPC ws://host.docker.internal:8545 \ - --klaytnRPC ws://host.docker.internal:8545 \ - --celoRPC ws://host.docker.internal:8545 \ - --moonbeamRPC ws://host.docker.internal:8545 \ - --neonRPC ws://host.docker.internal:8545 \ - --terraWS ws://host.docker.internal:8545 \ - --terra2WS ws://host.docker.internal:8545 \ + --polygonRPC ws://localhost:8545 \ + --avalancheRPC ws://localhost:8545 \ + --auroraRPC ws://localhost:8545 \ + --fantomRPC ws://localhost:8545 \ + --oasisRPC ws://localhost:8545 \ + --karuraRPC ws://localhost:8545 \ + --acalaRPC ws://localhost:8545 \ + --klaytnRPC ws://localhost:8545 \ + --celoRPC ws://localhost:8545 \ + --moonbeamRPC ws://localhost:8545 \ + --neonRPC ws://localhost:8545 \ + --terraWS ws://localhost:8545 \ + --terra2WS ws://localhost:8545 \ --terraLCD https://http://terra-terrad:1317 \ - --terra2LCD http://host.docker.internal:1317 \ + --terra2LCD http://localhost:1317 \ --terraContract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ --terra2Contract terra18vd8fpwxzck93qlwghaj6arh4p7c5n896xzem5 \ --solanaContract Bridge1p5gheXUvJ6jGWGeCsgPKgnE3YgdGKRVCMY9o \ - --solanaWS ws://host.docker.internal:8900 \ - --solanaRPC http://host.docker.internal:8899 \ - --algorandIndexerRPC ws://host.docker.internal:8545 \ + --solanaWS ws://localhost:8900 \ + --solanaRPC http://localhost:8899 \ + --algorandIndexerRPC ws://localhost:8545 \ --algorandIndexerToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ --algorandAlgodToken "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" \ - --algorandAlgodRPC https://http://host.docker.internal:4001 \ + --algorandAlgodRPC https://http://localhost:4001 \ --algorandAppID "4" fi