Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rebase to cosmos/relayer/main #13

Closed
wants to merge 69 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
69 commits
Select commit Hold shift + click to select a range
e4e9f27
docs: fix typos (#1319)
vuittont60 Oct 31, 2023
26aa983
Create new client with custom unbonding period (#1313)
boojamya Nov 2, 2023
9b80dd0
fix: add not exist check for loadConfigFile error (#1325)
mmsqe Nov 10, 2023
2c60f6c
feat: add log-level in global config (#1324)
mmsqe Nov 10, 2023
27cf122
fix: cleanup close init after close confirmed (#1326)
mmsqe Nov 11, 2023
c0783eb
upgrade deps for cometbft v0.38.0, ibc-go v0.8.0, sdk v0.50.0 and han…
jtieri Nov 14, 2023
7e02760
Add Unbonding Period to `clients-expiration` query. (#1327)
boojamya Nov 14, 2023
d0b2700
deps: bump version numbers for handful of deps (#1334)
jtieri Nov 15, 2023
be8ebe0
Auto add issues to Strangelove project board (#1337)
boojamya Nov 21, 2023
34d3d4f
fix: `cosmos_relayer_tx_failure` metric redundant count (#1343)
boojamya Nov 26, 2023
7efcd30
verbose tx error (#1344)
boojamya Nov 26, 2023
c6e5bdb
fix: Use the provider IR instead of creating a new one (#1346)
vitsalis Dec 4, 2023
1c18c2b
Ensure that ✘ is displayed for clients if they are expired (#1352)
vimystic Dec 5, 2023
7f03bc7
rename metric (#1347)
boojamya Dec 5, 2023
dd40ff2
penumbra: update proof spec to new multistore format (#1355)
avahowell Dec 6, 2023
cf2754a
penumbra provider: fix getAnchor: don't query out of range heights (#…
avahowell Dec 8, 2023
8669bf0
penumbra: use ibc-data prefix in QueryTendermintProof (#1361)
avahowell Dec 13, 2023
912472c
fix: update penumbra protos & make adjustments to account for cometbf…
jtieri Dec 13, 2023
654ea9f
fix: pipe memo from cli to broadcast tx logic for `MsgTransfer` and `…
jtieri Dec 14, 2023
cfe8b93
fix: Observed Packet Metric (#1345)
boojamya Dec 14, 2023
523748e
Problem: simulate gas is less than required with feegrants (#1364)
mmsqe Dec 18, 2023
f52b342
Update troubleshoot doc (#1350)
boojamya Dec 18, 2023
ba17805
Add Prometheus metrics for `unrelayed-packets` and `unrelayed-acknole…
boojamya Dec 18, 2023
56a534c
Link custom client trusting period ratio (#1365)
TheMarstonConnell Dec 21, 2023
3655821
build(deps): bump golang.org/x/crypto in /interchaintest (#1367)
dependabot[bot] Dec 26, 2023
c017b8c
build(deps): bump golang.org/x/crypto from 0.15.0 to 0.17.0 (#1366)
dependabot[bot] Dec 26, 2023
820caf5
build(deps): bump github.com/dvsekhvalnov/jose2go from 1.5.0 to 1.6.0…
dependabot[bot] Dec 27, 2023
c98f389
build(deps): bump github.com/dvsekhvalnov/jose2go in /interchaintest …
dependabot[bot] Jan 8, 2024
71acbb8
build(deps): bump github.com/containerd/containerd in /interchaintest…
dependabot[bot] Jan 8, 2024
3b05fdb
add ICS-29 guide to path docs (#1375)
ertemann Jan 9, 2024
caf9d52
When creating a client, make `max-clock-drift` configurable (#1369)
boojamya Jan 9, 2024
4ad5ab2
fix: add handling for MsgTimeout in Penumbra ChainProvider (#1378)
jtieri Jan 10, 2024
9bd144e
Update Security Procedures for Hacker One Program (#1382)
akc2267 Jan 19, 2024
1ef7db5
feat: introduce cometbft client wrapper to eliminate forked repo (#1384)
jtieri Jan 26, 2024
5ab55c0
feat: add configurable limits for receiver and ICS-20 memo fields (#1…
jtieri Jan 26, 2024
7cb083c
External feegrants (#1338)
KyleMoser Jan 29, 2024
ef1578e
refactor: encapsulate slim client in wrapper (#1388)
jtieri Jan 30, 2024
287354b
Fix flush race (#1363)
agouin Jan 30, 2024
f76614d
update penumbra protos and fix tx.go, query.go with new apis (#1379)
avahowell Jan 31, 2024
a9ce8d6
Problem: no concrete type registered for type URL of EthAccount (#1390)
mmsqe Jan 31, 2024
be5a4cf
ci: bump goreleaser-cross version (#1391)
jtieri Jan 31, 2024
4c41650
build(deps): bump github.com/opencontainers/runc in /interchaintest (…
dependabot[bot] Feb 1, 2024
d821ab7
retry only if processing completed for a packet (#1393)
agouin Feb 1, 2024
c9528bb
build(deps): bump github.com/moby/moby in /interchaintest (#1394)
dependabot[bot] Feb 2, 2024
5896675
fix: use context timeout per paginated query (#1395)
jtieri Feb 2, 2024
11b7de3
fix(injective): replace x/auth/types with /types (#1397)
AntiTyping Feb 7, 2024
f6f622e
fix: only send client updates when necessary and when msg is properly…
jtieri Feb 27, 2024
2cc152b
Update Fixed Validation of `VoteExtensionsEnableHeight` can cause cha…
JOJOBET-DALTONLAR Feb 28, 2024
5b42d82
build(deps): bump github.com/cometbft/cometbft in /interchaintest (#1…
dependabot[bot] Feb 28, 2024
250cb55
chore: update deps and e2e tests (#1409)
jtieri Feb 28, 2024
6c29f16
feat: implement support for Osmosis EIP-1559 (#1412)
jtieri Mar 6, 2024
4692fb1
chore: update CODEOWNERS file (#1415)
jtieri Mar 7, 2024
c4eac28
Change version in README.MD from 2.4.0 to 2.5.2 (#1424)
Sr20dem Mar 14, 2024
04a0df5
fix(logging): displays correct chain info when query IBC header fails…
AntiTyping Mar 14, 2024
b110a7a
chore: add chain and client ids to incomplete flush log output (#1428)
jtieri Mar 18, 2024
f129891
ci: broken links & spelling (#1431)
Reecepbcups Mar 26, 2024
bc46373
fix wallet balance metric (#1433)
boojamya Mar 26, 2024
b34f8c6
chore: update dependency versions (#1435)
jtieri Mar 27, 2024
5429329
build(deps): bump github.com/cosmos/cosmos-sdk from 0.50.4 to 0.50.5 …
dependabot[bot] Mar 27, 2024
67e0f23
build(deps): bump github.com/cosmos/cosmos-sdk in /interchaintest (#1…
dependabot[bot] Mar 27, 2024
65d4330
feat: add the ability to query IBC denom trace (#1436)
jtieri Mar 29, 2024
9e4ac98
chore: update Penumbra proto generated code and fix import paths (#1437)
jtieri Mar 29, 2024
b7ea45d
fix stuck packet (#1442)
boojamya Apr 9, 2024
6140d27
build(deps): bump github.com/cosmos/ibc-go/v8 from 8.1.1 to 8.2.0 (#1…
dependabot[bot] Apr 9, 2024
970af77
build(deps): bump github.com/cosmos/ibc-go/v8 in /interchaintest (#1441)
dependabot[bot] Apr 9, 2024
f582fcd
fix: update query path for getAnchor in Penumbra provider (#1443)
jtieri Apr 11, 2024
3c7eb23
fix: perform upper and lower bounds check on unbonding value before c…
jtieri Apr 12, 2024
7742a1c
feature: Added adjustments to support on-demand blocks (#6)
omritoptix Nov 14, 2023
e232025
Merge branch 'main-dym' into danwt/rebase-main-dym-onto-upstream-main
danwt Apr 18, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[codespell]
skip = *.pulsar.go,*.pb.go,*.pb.gw.go,*.json,*.git,*.bin,*.sum,*.mod,query_test.go
ignore-words-list = usera
count =
quiet-level = 3
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
# CODEOWNERS: https://help.github.com/articles/about-codeowners/
* @jackzampolin @jtieri @boojamya @mark-rushakoff
* @jtieri @boojamya @agouin
35 changes: 35 additions & 0 deletions .github/workflows/chores.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: chores

on:
pull_request:

jobs:
link-check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: gaurav-nelson/github-action-markdown-link-check@1.0.15

typos:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run codespell
continue-on-error: true
run: |
# .codespellrc is used
sudo apt-get install codespell -y
codespell -w --config .codespellrc
exit $?

pr-title-format:
name: Lint PR Title
permissions:
pull-requests: read
statuses: write
contents: read
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5.4.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
23 changes: 14 additions & 9 deletions .github/workflows/interchaintest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,15 +147,20 @@ jobs:
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Generate matrix
id: set-matrix
run: |
# Run the command and convert its output to a JSON array
TESTS=$(cd interchaintest && go test -list ^TestScenario ./... | grep -v "^ok " | jq -R -s -c 'split("\n")[:-1]')
echo "matrix=${TESTS}" >> $GITHUB_OUTPUT
- name: Set up Go 1.21
uses: actions/setup-go@v4
with:
go-version: '1.21'

- name: Checkout code
uses: actions/checkout@v4

- name: Generate matrix
id: set-matrix
run: |
# Run the command and convert its output to a JSON array
TESTS=$(cd interchaintest && go test -list ^TestScenario ./... | grep -v "^ok " | grep -v "proto: duplicate proto type registered" | jq -R -s -c 'split("\n")[:-1]')
echo "matrix=${TESTS}" >> $GITHUB_OUTPUT

# Note : This job will not start until prepare-scenario-matrix completes sucessfully
scenarios:
Expand Down
20 changes: 20 additions & 0 deletions .github/workflows/strangelove-project-management.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Strangelove Project Management

on:
issues:
types:
- opened
- transferred
- reopened

jobs:
add-to-project:
name: Add issue to project
runs-on: ubuntu-latest
steps:
- uses: actions/add-to-project@v0.5.0
with:
# You can target a project in a different organization
# to the issue
project-url: https://github.com/orgs/strangelove-ventures/projects/4
github-token: ${{ secrets.strangelove_motherboard_access_token }}
11 changes: 8 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,12 @@
* [\#1226](https://github.com/cosmos/relayer/pull/1226) Avoid invalid Bech32 prefix error in parallel tests when sdk Config get overwritten by each other in single process.
* [\#1231](https://github.com/cosmos/relayer/pull/1231) Reduce get bech32 prefix when get signer.
* [\#1302](https://github.com/cosmos/relayer/pull/1302) Avoid packet get relayed when estimated gas is higher than max gas.
* [\#1303](https://github.com/cosmos/relayer/pull/1303) Add missing max gas amount on txf to avoid estimate less gas when simualte runTx.
* [\#1303](https://github.com/cosmos/relayer/pull/1303) Add missing max gas amount on txf to avoid estimate less gas when simulate runTx.
* [\#1324](https://github.com/cosmos/relayer/pull/1324) Add log-level in global config.
* [\#1325](https://github.com/cosmos/relayer/pull/1325) Ignore only file not exist error when loadConfigFile.
* [\#1326](https://github.com/cosmos/relayer/pull/1326) Avoid sending channel close confirm message after channel get closed successfully.
* [\#1364](https://github.com/cosmos/relayer/pull/1364) Include feegrant message when calculate gas.
* [\#1390](https://github.com/cosmos/relayer/pull/1390) Avoid no concrete type registered for type URL error of EthAccount.

## v0.9.3

Expand Down Expand Up @@ -132,7 +137,7 @@
### CLI/scripts

* [\#412](https://github.com/cosmos/relayer/pull/412) Auto update clients to prevent expiry. `rly start` command supports auto updating a client if it is about to expire. Use the `--time-threshold` flag.
* [\#323](https://github.com/cosmos/relayer/pull/323) Implmenet an API server. A rest server with API endpoints to support interacting with the relayer
* [\#323](https://github.com/cosmos/relayer/pull/323) Implement an API server. A rest server with API endpoints to support interacting with the relayer
* [\#406](https://github.com/cosmos/relayer/pull/406) Split `add-dir` into `add-chains` and `add-paths`. You must add a chain, then the keys, and then the paths. This enables support of bottom up validation.
* [\#428](https://github.com/cosmos/relayer/pull/428) Fix add-paths failure when called on exiting configuration
* [\#427](https://github.com/cosmos/relayer/pull/427) Fix nil paths bug which occurred when validating paths
Expand All @@ -149,5 +154,5 @@

* (deps) Bump SDK version to [v0.41.0](https://github.com/cosmos/cosmos-sdk/releases/tag/v0.41.0).
* Bug fixes and minor improvements
* (relayer)[\#329](https://github.com/cosmos/relayer/issues/329) client, conenction, and channel handshake refactor (identifiers generated auto generated on-chain)
* (relayer)[\#329](https://github.com/cosmos/relayer/issues/329) client, connection, and channel handshake refactor (identifiers generated auto generated on-chain)
* (relayer)[\#386](https://github.com/cosmos/relayer/pull/386) client, connection and channel identifier reuse
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -115,15 +115,15 @@ get-gaia:
@git clone --branch $(GAIA_VERSION) --depth=1 https://github.com/cosmos/gaia.git $(GAIA_REPO)

build-gaia:
@[ -d $(GAIA_REPO) ] || { echo "Repositry for gaia does not exist at $(GAIA_REPO). Try running 'make get-gaia'..." ; exit 1; }
@[ -d $(GAIA_REPO) ] || { echo "Repository for gaia does not exist at $(GAIA_REPO). Try running 'make get-gaia'..." ; exit 1; }
@cd $(GAIA_REPO) && \
make install &> /dev/null
@gaiad version --long

.PHONY: two-chains test test-integration interchaintest install build lint coverage clean

PACKAGE_NAME := github.com/cosmos/relayer
GOLANG_CROSS_VERSION ?= v1.19.4
GOLANG_CROSS_VERSION ?= v1.21.5

SYSROOT_DIR ?= sysroots
SYSROOT_ARCHIVE ?= sysroots.tar.bz2
Expand Down
87 changes: 44 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,12 @@
[![Go Report Card](https://goreportcard.com/badge/github.com/cosmos/relayer)](https://goreportcard.com/report/github.com/cosmos/relayer)
[![License: Apache-2.0](https://img.shields.io/github/license/cosmos/relayer.svg?style=flat-square)](https://github.com/cosmos/relayer/blob/main/LICENSE)
[![Lines Of Code](https://img.shields.io/tokei/lines/github/cosmos/relayer?style=flat-square)](https://github.com/cosmos/relayer)
[![Version](https://img.shields.io/github/tag/cosmos/relayer.svg?style=flat-square)](https://github.com/cosmos/relayer/latest)
[![Version](https://img.shields.io/github/tag/cosmos/relayer.svg?style=flat-square)](https://github.com/cosmos/relayer/releases/latest)
</div>

In IBC, blockchains do not directly pass messages to each other over the network. This is where `relayer` comes in.
In IBC, blockchains do not directly pass messages to each other over the network. This is where `relayer` comes in.
A relayer process monitors for updates on opens paths between sets of [IBC](https://ibcprotocol.org/) enabled chains.
The relayer submits these updates in the form of specific message types to the counterparty chain. Clients are then used to
The relayer submits these updates in the form of specific message types to the counterparty chain. Clients are then used to
track and verify the consensus state.

In addition to relaying packets, this relayer can open paths across chains, thus creating clients, connections and channels.
Expand All @@ -24,17 +24,18 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n
---

## Table Of Contents
- [Basic Usage - Relaying Across Chains](#Basic-Usage---Relaying-Packets-Across-Chains)
- [Basic Usage - Relaying Across Chains](#basic-usage---relaying-packets-across-chains)
- [Create Path Across Chains](./docs/create-path-across-chain.md)
- [Advanced Usage](./docs/advanced_usage.md)
- [Troubleshooting](./docs/troubleshooting.md)
- [Features](./docs/features.md)
- [Relayer Terminology](./docs/terminology.md)
- [New Chain Implementation](./docs/chain_implementation.md)
- [Recommended Pruning Settings](./docs/node_pruning.md)
- [Demo/Dev-Environmnet](./examples/README.md)
- [Demo/Dev-Environment](./examples/README.md)

---

## Basic Usage - Relaying Packets Across Chains

> The `-h` (help) flag tailing any `rly` command will be your best friend. USE THIS IN YOUR RELAYING JOURNEY.
Expand All @@ -47,64 +48,64 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n

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

2. **Initialize the relayer's configuration directory/file.**

```shell
$ rly config init
```
**Default config file location:** `~/.relayer/config/config.yaml`

By default, transactions will be relayed with a memo of `rly(VERSION)` e.g. `rly(v2.4.0)`.
By default, transactions will be relayed with a memo of `rly(VERSION)` e.g. `rly(v2.5.2)`.

To customize the memo for all relaying, use the `--memo` flag when initializing the configuration.

```shell
$ rly config init --memo "My custom memo"
```

Custom memos will have `rly(VERSION)` appended. For example, a memo of `My custom memo` running on relayer version `v2.4.0` would result in a transaction memo of `My custom memo | rly(v2.4.0)`.
Custom memos will have `rly(VERSION)` appended. For example, a memo of `My custom memo` running on relayer version `v2.5.2` would result in a transaction memo of `My custom memo | rly(v2.5.2)`.

The `--memo` flag is also available for other `rly` commands also that involve sending transactions such as `rly tx link` and `rly start`. It can be passed there to override the `config.yaml` value if desired.

To omit the memo entirely, including the default value of `rly(VERSION)`, use `-` for the memo.

3. **Configure the chains you want to relay between.**
In our example, we will configure the relayer to operate on the canonical path between the Cosmos Hub and Osmosis.

In our example, we will configure the relayer to operate on the canonical path between the Cosmos Hub and Osmosis.
<br>
The `rly chains add` command fetches chain meta-data from the [chain-registry](https://github.com/cosmos/chain-registry) and adds it to your config file.

```shell
$ rly chains add cosmoshub osmosis
```

Adding chains from the chain-registry randomly selects an RPC address from the registry entry.
If you are running your own node, manually go into the config and adjust the `rpc-addr` setting.

> NOTE: `rly chains add` will check the liveliness of the available RPC endpoints for that chain in the chain-registry.
Adding chains from the chain-registry randomly selects an RPC address from the registry entry.
If you are running your own node, manually go into the config and adjust the `rpc-addr` setting.

> NOTE: `rly chains add` will check the liveliness of the available RPC endpoints for that chain in the chain-registry.
> It is possible that the command will fail if none of these RPC endpoints are available. In this case, you will want to manually add the chain config.

To add the chain config files manually, example config files have been included [here](https://github.com/cosmos/relayer/tree/main/docs/example-configs/)
```shell
$ rly chains add --url https://raw.githubusercontent.com/cosmos/relayer/main/docs/example-configs/cosmoshub-4.json cosmoshub
$ rly chains add --url https://raw.githubusercontent.com/cosmos/relayer/main/docs/example-configs/osmosis-1.json osmosis
```

4. **Import OR create new keys for the relayer to use when signing and relaying transactions.**

>`key-name` is an identifier of your choosing.
>`key-name` is an identifier of your choosing.

If you need to generate a new private key you can use the `add` subcommand.

```shell
$ rly keys add cosmoshub [key-name]
$ rly keys add osmosis [key-name]
$ rly keys add cosmoshub [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.

```shell
Expand All @@ -115,18 +116,18 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n
5. **Use the `key-name` created above.**

>This step is necessary if you chose a `key-name` other than "default"

```shell
$ rly keys use cosmoshub [key-name]
$ rly keys use osmosis [key-name]
$ rly keys use cosmoshub [key-name]
$ rly keys use osmosis [key-name]
```

6. **Ensure the keys associated with the configured chains are funded.**

>Your configured addresses will need to contain some of the respective native tokens for paying relayer fees.
>Your configured addresses will need to contain some of the respective native tokens for paying relayer fees.

<br>
You can query the balance of each configured key by running:
You can query the balance of each configured key by running:

```shell
$ rly q balance cosmoshub
Expand All @@ -135,7 +136,7 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n

7. **Configure path meta-data in config file.**
<br>
We have the chain meta-data configured, now we need path meta-data. For more info on `path` terminology visit [here](docs/troubleshooting.md).
We have the chain meta-data configured, now we need path meta-data. For more info on `path` terminology visit [here](docs/troubleshooting.md).
>NOTE: Thinking of chains in the config as "source" and "destination" can be confusing. Be aware that most path are bi-directional.

<br>
Expand All @@ -145,22 +146,22 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n
```shell
$ rly paths fetch
```
> **NOTE:** Don't see the path metadata for paths you want to relay on?
> **NOTE:** Don't see the path metadata for paths you want to relay on?
> Please open a PR to add this metadata to the GitHub repo!

8. #### **Configure the channel filter.**
By default, the relayer will relay packets over all channels on a given connection.

By default, the relayer will relay packets over all channels on a given connection.
<br>
Each path has a `src-channel-filter` which you can utilize to specify which channels you would like to relay on.
Each path has a `src-channel-filter` which you can utilize to specify which channels you would like to relay on.
<br>
The `rule` can be one of three values:
The `rule` can be one of three values:
- `allowlist` which tells the relayer to relay on _ONLY_ the channels in `channel-list`
- `denylist` which tells the relayer to relay on all channels _BESIDES_ the channels in `channel-list`
- empty value, which is the default setting, and tells the relayer to relay on all channels
- empty value, which is the default setting, and tells the relayer to relay on all channels
<br>
Since we are only worried about the canonical channel between the Cosmos Hub and Osmosis our filter settings would look like the following.

Since we are only worried about the canonical channel between the Cosmos Hub and Osmosis our filter settings would look like the following.
<br>
Example:
```yaml
Expand All @@ -175,9 +176,9 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n
connection-id: connection-1
src-channel-filter:
rule: allowlist
channel-list: [channel-141]
channel-list: [channel-141]
```

>Because two channels between chains are tightly coupled, there is no need to specify the dst channels.
>If you only know the "dst" channel-ID you can query the "src" channel-ID by running: `rly q channel <dst_chain_name> <dst_channel_id> <port> | jq '.channel.counterparty.channel_id'`

Expand All @@ -189,9 +190,9 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n
$ rly paths list
$ rly start [path]
# Optionally you can omit the `path` argument to start all configured paths
$ rly start
$ rly start
```

>When running multiple instances of `rly start`, you will need to use the `--debug-addr` flag and provide an address:port. You can also pass an empty string `''` to turn off this feature or pass `localhost:0` to randomly select a port.

---
Expand All @@ -200,8 +201,8 @@ Additional information on how IBC works can be found [here](https://ibc.cosmos.n

## Security Notice

If you would like to report a security critical bug related to the relayer repo,
please reach out @jackzampolin or @Ethereal0ne on telegram.
If you would like to report a security bug related to the relayer repo,
please follow the instructions in [SECURITY.md](SECURITY.md).

## Code of Conduct

Expand Down
Loading
Loading