Relayer
This is a tutorial creating an IBC relayer between Nolus Testnet (nolus-rila) and Osmosis Testnet (osmo-test-4)
Last updated
This is a tutorial creating an IBC relayer between Nolus Testnet (nolus-rila) and Osmosis Testnet (osmo-test-4)
Last updated
16+ vCPUs or Intel or AMD 16 core CPU
at least 64GB RAM
4TB+ nVME drives
Before beginning, ensure you have a Nolus full node running in the background. You could relay on the same machine or connect to the Osmosis and Nolus full nodes via a network. You will need build-essential and git installed to follow these instructions.
Download the latest Osmosis binary. Check out https://docs.osmosis.zone/networks/join-testnet for a detailed setup guideline. The currently used version for the osmo-test-4 testnet binary is v14.0.0-rc1.
Running on same machine are not recomended if your machine are not so good
First thing you need to install osmosis! they have a one line installer script or you can install it manually. Go to https://docs.osmosis.zone/networks/join-testnet run osmosis testnet full nodes, add wallet and request some osmo testnet from faucet https://faucet.osmosis.zone/#/ or https://www.allthatnode.com/faucet/osmosis.dsrv
Make sure your nolus full node are fully synced and osmosis full node are fully synced. Then go to the next step.
Since we are relying on a Rust-based implementation, we would need to install some Rust dependencies first:
Create the directory where you'll place the binary, clone the hermes source repository and build it using the latest release:
Make a hermes “keys” directory, copy config.toml from the cloned repo to the .hermes directory:
Check if hermes is installed properly by running:
Edit the hermes config.toml file by including configurations for the two chains that you want to relay between, namely Nolus Rila testnet and Osmosis testnet:
You would need to specify the hermes configurations for your two running nodes. Do not forget to remove the generated by default “chains” section with the example at the end of the file:
Add your relayer wallet to hermes' keyring (located in $HOME/.hermes/keys
). The wallet should have a positive balance on both the Nolus and the Osmosis networks since the relayer would need to pay gas fees to submit IBC transactions.
then enter your wallet phrase word (from a special address for relayer address only)
The best practice is to use the same mnemonic over all networks. Do not use your relaying addresses for anything else because it will lead to account sequence errors.
Validate your ~/.hermes/config.toml
file by running:
Perform a health check:
You should see a similar output as the one below:
If your nodes are fully synced, feel free to start the hermes daemon:
Let's test a transaction move balance from nolus chain to osmosis chain via your relayer, use this script:
then try to move balance from osmosis to nolus
Change Your_Key with your key and Address_Osomosis_Receiver to your osmosis testnet address.
If it's success, you could see somekind of message like this: