This Wormhole testnet connects the following chains:
-
Solana Tour de Sol testnet.
-
Ethereum Goerli testnet.
-
Terra Tequila-0004 testnet.
Gossip network name:
/wormhole/testnet/1
Gossip bootstrap node:
/dns4/wormhole-testnet-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWH3VP44t12yKQXrPfMQVKEqSHnk5GTN3RCSqNoakAkLCq
Connected chain contracts:
Network | Bridge contract addresss |
---|---|
Ethereum Goerli (Bridge) | 0x251bBCD91E84098509beaeAfF0B9951859af66D3 |
Ethereum Goerli (Token) | 0xE39f0b145C0aF079B214c5a8840B2B01eA14794c |
Solana Tour de Sol | 5gQf5AUhAgWYgUCt9ouShm9H7dzzXUsLdssYwe5krKhg |
Terra Tequila-0004 | terra18dxnzu8w9dfss3ktetr43p9kuhcjnan8p30puw |
A copy of the contract binaries that were deployed can be found in artifacts/, along with a pointer to the Wormhole revision that they were built from.
Current generation: 0, containing only the Certus One bootstrap node with the
address 0x8b1c9eFA61eBF66Fa1a6deDCF46fb1e37708ce5c
.
See v1.prototext for the first guardian set update that will be executed once everyone's node on the network is live.
Refer to the operations guide on how to set up a node.
/usr/local/bin/guardiand bridge \
--bootstrap "/dns4/wormhole-testnet-bootstrap.certus.one/udp/8999/quic/p2p/12D3KooWH3VP44t12yKQXrPfMQVKEqSHnk5GTN3RCSqNoakAkLCq"
--network "/wormhole/testnet/1" \
--ethContract "0x251bBCD91E84098509beaeAfF0B9951859af66D3" \
--solanaBridgeAddress 5gQf5AUhAgWYgUCt9ouShm9H7dzzXUsLdssYwe5krKhg \ # <-- Solana Bridge address, same as the agent
--solanaRPC http://solana-host:8899 \ # <-- Solana RPC URI, same as the agent
--solanaWS ws://solana-devnet:8900 \ # <-- Solana websocket URI, same as the agent
--nodeName "Certus One" \ # <-- your node's name (for network explorer usage)
--nodeKey /opt/solana/keys/wormhole-node.key \ # <-- auto-generated node key
--bridgeKey /opt/solana/keys/wormhole-guardian.key \ # <-- your guardian key generated by "guardiand keygen"
--ethRPC wss://ethereum-node.example.com/ws/v3/[...] \ # <-- your ETH full/light node websocket URI
--adminSocket /run/guardiand/admin.socket \
--agentRPC /run/guardiand/agent.socket \
--terra \
--terraWS wss://terra-node.example.com:26657/websocket \ # <-- Terra node websocket URI
--terraLCD https://terra-lcd.example.com:1317 \ # <-- Terra LCD node HTTP URI
--terraChainID "tequila-0004" \
--terraContract "terra18dxnzu8w9dfss3ktetr43p9kuhcjnan8p30puw" \
--terraKey /tmp/terra.key # <-- path to mnemonic key for the Terra transaction fee payer
/usr/local/bin/guardiand-solana-agent \
--bridge 5gQf5AUhAgWYgUCt9ouShm9H7dzzXUsLdssYwe5krKhg \
--rpc http://solana-host:8899 \ # <-- URL of your Solana validator RPC server
--ws ws://solana-devnet:8900 \ # <-- Websocket path to your Solana validator PubSub port (RPC port +1)
--keypair /path/to/feepayer.json \ # <-- Keypair of a Solana fee payer account with ~10 SOL in it
--socket /run/guardiand/agent.socket
There's a key with a couple thousand SOL in this folder - you can use it to transfer 10 SOL to your own fee account. We want to test the fee subsidization logic the same way as on mainnet, so please stick with that range.