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

Add initial support for Ocular to automate part of Hermes configuration #2187

Closed
7 tasks
adizere opened this issue May 6, 2022 · 0 comments · Fixed by #2533
Closed
7 tasks

Add initial support for Ocular to automate part of Hermes configuration #2187

adizere opened this issue May 6, 2022 · 0 comments · Fixed by #2533
Assignees
Labels
I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product
Milestone

Comments

@adizere
Copy link
Member

adizere commented May 6, 2022

Summary

Add a hermes config add <CHAIN_ID> CLI to automatically populate a new section in the Hermes configuration file with data for chain <CHAIN_ID> based on data from the chain-registry.

Problem Definition

Developers and beginner relayer users do not have access to their own full nodes for relaying or reading on-chain state from production. Even with full nodes available, it can difficult to configure correctly the config.toml of Hermes.

Proposal

We can use the chain-registry data to populate correctly a config.toml section for Hermes, for any chain present in the registry. Ocular is a Rust library to access the information stored in the chain-registry. In here we describe some ways in which Hermes can make use of Ocular.

In particular for the present issue, we'll likely depend on the ocular API method fn chain_info(chain_id: String) -> ChainInfo to be able to fetch chain information from the chain registry. The description of ChainInfo is not yet available, but the section "Ocular requirement B" from the issue linked above provides details about it. From the resulting ChainInfo we can generate a Hermes chain configuration section in config.toml.

Update: On the ocular side, initial support is now available for our use-case: PeggyJV/ocular#63

Acceptance Criteria

  • add hermes config add <CHAIN_ID> with the details provided above
  • we're not interested path information (i.e., channel filter), so we can skip populating the [chains.packet_filter] section

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@adizere adizere added I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product labels May 6, 2022
@adizere adizere added this to the v1.1 milestone May 6, 2022
@adizere adizere modified the milestones: v1.1, v1.2 Jun 29, 2022
@AlianBenabdallah AlianBenabdallah added A: blocked Admin: blocked by another (internal/external) issue or PR and removed A: blocked Admin: blocked by another (internal/external) issue or PR labels Aug 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: CLI Internal: related to the relayer's CLI O: usability Objective: cause to improve the user experience (UX) and ease using the product
Projects
None yet
2 participants