Skip to content

Commit

Permalink
Add ibc-go v8 to integration tests (#3694)
Browse files Browse the repository at this point in the history
* Add simapp v8 to CI jobs

* Add simapp v8 to nix flake

* Handle CLI breaking changes of Cosmos SDK v0.50 in test bootstrap

* Handle genesis config 'voting_perdiod' and CLI 'query txs' changes for Cosmos SDK v0.50.1

* Use 'MsgSubmitProposal' instead of deprecated 'UpgradeProposal' to initiate a chain upgrade

* Update 'tx upgrade-chain' CLI template

* Fix 'tx chain-upgrade' tests

* Update chain upgrade for compatibility between different ibc-go versions

* Improve assertion for client upgrade tests

* Update ibc-proto-rs to v0.39.0

* Add changelog entry

* Fix and improve guide section for client upgrade

* Wait before querying client state for client upgrade tests

* Apply suggestions from code review

Co-authored-by: Romain Ruetschi <[email protected]>
Signed-off-by: Luca Joss <[email protected]>

* Rename method 'ibc_version()' to 'version_specs'

* Extract the verification of legacy version in a method

* Implement 'FromStr' instead of 'TryFrom<String>' for 'ProposalStatus'

* Fix cargo-doc warning

* Add changelog entry for CLI

* Change the '--gov-account' flag as optional but will fail if trying to upgrade a chain with ibc-go v8+

* Update guide

* Move and update changelog entry for CLI

* Return a 'Specs' struct in 'version_specs()' method

* Fix clippy errors

---------

Signed-off-by: Luca Joss <[email protected]>
Co-authored-by: Romain Ruetschi <[email protected]>
  • Loading branch information
ljoss17 and romac authored Nov 16, 2023
1 parent 9e1b91b commit c945791
Show file tree
Hide file tree
Showing 42 changed files with 1,038 additions and 347 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Add a `--gov-account` option to `hermes tx upgrade-chain` to specify the
authority account used to sign upgrade proposal for chains running IBC-Go v8+.
([\#3696](https://github.com/informalsystems/hermes/issues/3696))
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- Use legacy `UpgradeProposal` or newer `MsgIbcSoftwareUpgrade` message when upgrading
a chain depending on whether the chain is running IBC-Go v8 or older.
([\#3696](https://github.com/informalsystems/hermes/issues/3696))
9 changes: 9 additions & 0 deletions .github/workflows/integration.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,9 @@ jobs:
- package: ibc-go-v7-simapp
command: simd
account_prefix: cosmos
- package: ibc-go-v8-simapp
command: simd
account_prefix: cosmos
- package: wasmd
command: wasmd
account_prefix: wasm
Expand Down Expand Up @@ -157,6 +160,9 @@ jobs:
- package: ibc-go-v7-simapp
command: simd
account_prefix: cosmos
- package: ibc-go-v8-simapp
command: simd
account_prefix: cosmos
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v22
Expand Down Expand Up @@ -206,6 +212,9 @@ jobs:
- package: ibc-go-v7-simapp
command: simd
account_prefix: cosmos
- package: ibc-go-v8-simapp
command: simd
account_prefix: cosmos
- package: migaloo
command: migalood
account_prefix: migaloo
Expand Down
3 changes: 3 additions & 0 deletions .github/workflows/multi-chains.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@ jobs:
- package: ibc-go-v7-simapp
command: simd
account_prefix: cosmos
- package: ibc-go-v8-simapp
command: simd
account_prefix: cosmos
- package: wasmd
command: wasmd
account_prefix: wasm
Expand Down
105 changes: 60 additions & 45 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion crates/chain-registry/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ description = """

[dependencies]
ibc-relayer-types = { version = "0.26.1", path = "../relayer-types" }
ibc-proto = { version = "0.38.0", features = ["serde"] }
ibc-proto = { version = "0.39.0", features = ["serde"] }
tendermint-rpc = { version = "0.34.0", features = ["http-client", "websocket-client"] }

async-trait = "0.1.72"
Expand Down
Loading

0 comments on commit c945791

Please sign in to comment.