RLY

Go Relayer (RLY) - Strangelove

Make sure you have installed go.

1. Install rly

Clone the repository, checkout the latest stable release and install rly

git clone https://github.com/cosmos/relayer.git
cd relayer && git checkout v2.4.0
make install

2. Initialize the config file

Run the following command to initialize the configuration in ~/.relayer/config/config.yaml

rly config init

3. Configure RLY

To set up the RLY config file You can add the respective channels and chains using the Chain registry queries:

rly chains add secretnetwork
rly chains add osmosis

rly fetch paths osmosis-secretnetwork

Or open the generated ~/.relayer/config/config.yaml file, and copy-paste the sample configuration below and adjust it to point to the RPC endpoints of your Secret and Osmosis full nodes:

global:
    api-listen-addr: :5183
    timeout: 10s
    memo: Relayed by Me
    light-cache-size: 20
chains:
    secret:
        type: cosmos
        value:
            key-directory: /home/<user>/.relayer/keys/secret-4
            key: default
            chain-id: secret-4
            rpc-addr: http://127.0.0.1:26657
            account-prefix: secret
            keyring-backend: default
            gas-adjustment: 1.2
            gas-prices: 0.1uscrt
            min-gas-amount: 1
            debug: false
            timeout: 20s
            block-timeout: ""
            output-format: json
            sign-mode: direct
            extra-codecs: []
            coin-type: 529
            broadcast-mode: batch
    osmosis:
        type: cosmos
        value:
            key-directory: /home/<user>/.relayer/keys/osmosis-1
            key: default
            chain-id: osmosis-1
            rpc-addr: http://127.0.0.1:26557
            account-prefix: osmo
            keyring-backend: default
            gas-adjustment: 1.2
            gas-prices: 0.01uosmo
            min-gas-amount: 10000000
            debug: false
            timeout: 20s
            block-timeout: ""
            output-format: json
            sign-mode: direct
            extra-codecs: []
            coin-type: 118
            broadcast-mode: batch
paths:
        osmosis-secretnetwork:
        src:
            chain-id: osmosis-1
            client-id: 07-tendermint-1588
            connection-id: connection-1244
        dst:
            chain-id: secret-4
            client-id: 07-tendermint-2
            connection-id: connection-1
        src-channel-filter:
            rule: ""
            channel-list: []

Now you need to add a new key for your relayer or import an existing one to use to sign and relay IBC transactions. Adding a new key happens with the following command:

rly keys add secret [key-name]  
rly keys add osmosis [key-name]

If you already have a private key and want to restore it from your mnemonic you can use the restore subcommand.

rly keys restore secret [key-name] "mnemonic words here"
rly keys restore osmosis [key-name] "mnemonic words here"

If you specify a different [key-name] from default you would need to edit the config.yaml and change the key parameter value to the label that youโ€™ve chosen.

Start RLY

If your nodes are fully synced, feel free to start the rly daemon:

rly start

Last updated