✦ NOTICE: Please only create new paths on mainnet with intent. The Cosmos community thanks you ⚛️
In our "Relaying Packets Across Chains" example, we set up the relayer to relay between Cosmoshub and Osmosis. Since those two chains already have a path opened between them, we will use two mock chains: ibc-0 and ibc-1.
-
Add basic path info to config.
# rly paths new [src-chain-id] [dst-chain-id] [path-name] [flags] $ rly paths new ibc-0 ibc-1 my_demo_path -
Next we need to create a
channel,client, andconnection.The most efficient way to do this is to use
rly transaction linkcommand.# rly transact link [path-name] [flags] $ rly transact link my_demo_pathThis is a triplewammy, it creates a
client,connection, andchannelall in one command.If you would like more control, you can run each command individually:
rly transact clientsrly transact connectionrly transact channel
All the above commands will update your config with the new path meta-data EXCEPT the new channel-id, which will be printed in stdout.
It's recommended to make note of this channel. If desired, add it to your "allowlist" in your config file. This would be
channel-0from the print out below.2022-03-25T20:09:33.997921Z info Channel created {"src_chain_id": "ibc-0", "src_channel_id": "channel-0", "src_port_id": "transfer", "dst_chain_id": "ibc-1", "dst_channel_id": "channel-0", "dst_port_id": "transfer"}Note:
connectionsare built on top ofclientsandchannelsare built on top ofconnections.As new
clients,connectionsandchannelsare created on mainnet, consider adding and tagging them on the relevant paths.json file on the chain-registryCONGRATS! You can now start relaying over the new path!
