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

Automatic client upgrades #1148

Open
7 tasks
Tracked by #1209
adizere opened this issue Jul 3, 2021 · 1 comment
Open
7 tasks
Tracked by #1209

Automatic client upgrades #1148

adizere opened this issue Jul 3, 2021 · 1 comment
Labels
I: logic Internal: related to the relaying logic O: new-feature Objective: cause to add a new feature or support O: tests Objective: Test more aspect of the relayer O: usability Objective: cause to improve the user experience (UX) and ease using the product
Milestone

Comments

@adizere
Copy link
Member

adizere commented Jul 3, 2021

Crate

Summary

Add support in Hermes to detect a chain upgrade and to automatically trigger the upgrading of all clients which target the upgraded chain.

Problem Definition

The problem is that currently Hermes has only a manual upgrade client command, and we are at a WIP stage on adding a bulk upgrade clients CLI (#763).
It would be good to support client upgrading in a reactive manner; so this feature is an extension to the reactive capabilities (#823) of Hermes, to additionally support client upgrades.

Another problem we'd like to tackle is to extend the end-to-end tests with a scenario for chain & client upgrades.
Currently we only have some manual testing guide for this scenario.

Proposal

  • investigate and find which event does a chain generate upon upgrading
  • add mechanism to handle the event, so that Hermes automatically triggers client upgrade
  • all clients (which target the upgraded chain) hosted on one of the chains in the config file should be upgraded

Acceptance Criteria

  • support for reactive client upgrade
  • extension to E2E test suite with appropriate test scenario for chain & client upgrade

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@adizere adizere added O: new-feature Objective: cause to add a new feature or support I: logic Internal: related to the relaying logic O: tests Objective: Test more aspect of the relayer O: usability Objective: cause to improve the user experience (UX) and ease using the product labels Jul 3, 2021
@adizere adizere added this to the 08.2021 milestone Jul 3, 2021
@adizere adizere modified the milestones: 08.2021, 09.2021 Sep 6, 2021
@adizere adizere modified the milestones: 09.2021, 12.2021 Sep 16, 2021
@adizere adizere modified the milestones: 12.2021, v0.8.4 Nov 3, 2021
@romac romac modified the milestones: v0.11.1, v0.12.0 Feb 2, 2022
@adizere adizere modified the milestones: v0.12.0, v0.12.1 Feb 14, 2022
@adizere adizere modified the milestones: v0.12.1, Backlog Feb 24, 2022
@adizere adizere removed the P-medium label Feb 24, 2022
@adizere adizere modified the milestones: Backlog, v1.1 Mar 23, 2022
@adizere adizere modified the milestones: v1.1, v1.2 Jun 29, 2022
@ljoss17
Copy link
Contributor

ljoss17 commented Oct 27, 2022

Emitting upgrade_chain events should be released with ibc-go v7.0.0 early 2023

@adizere adizere modified the milestones: v1.2, v1.3 Oct 31, 2022
@seanchen1991 seanchen1991 modified the milestones: v1.3, Backlog Dec 13, 2022
@seanchen1991 seanchen1991 modified the milestones: Backlog, v1.4 Feb 10, 2023
@seanchen1991 seanchen1991 modified the milestones: v1.4, v1.5 Feb 24, 2023
@seanchen1991 seanchen1991 modified the milestones: v1.5, v1.6, v2 Apr 10, 2023
@romac romac changed the title Reactive relayer feature for upgrading clients Automatic client upgrades Aug 25, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
I: logic Internal: related to the relaying logic O: new-feature Objective: cause to add a new feature or support O: tests Objective: Test more aspect of the relayer O: usability Objective: cause to improve the user experience (UX) and ease using the product
Projects
Status: 📥 Todo
Development

No branches or pull requests

5 participants