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 upgrade handlers to simapp #11826

Closed
4 tasks
anilcse opened this issue Apr 29, 2022 · 3 comments
Closed
4 tasks

Add upgrade handlers to simapp #11826

anilcse opened this issue Apr 29, 2022 · 3 comments

Comments

@anilcse
Copy link
Collaborator

anilcse commented Apr 29, 2022

Summary

While working on integration tests as part of QA, observed that there is no clean way to automate software upgrade tests. Having upgrade handlers for each version would make it easy for automating this and thus improve test coverage. It can also act as an example for teams trying to build upgrade handlers

Proposal

Add upgrade handlers for simapp for each version.

v045 contains the following upgrade handler:

  • upgrade-v044-to-v045

Similarly v0.46.x will have,

  • upgrade-v045-to-v046

For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@alexanderbez
Copy link
Contributor

I like the idea

@ValarDragon
Copy link
Contributor

I'm in favor of this!

I'd actually like to suggest changing the simapp app.go code structure to be like Osmosis'. (Especially after osmosis-labs/osmosis#1379 )

Namely, using a common Upgrade and Fork struct, and making a separately defined struct for all the module keepers. I think the package structure used there, relative to gaia, makes the package much more scalable. (And helps mitigates the footguns currently present around not using pointers for all keepers wrt hooks)

@tac0turtle
Copy link
Member

done here https://github.com/cosmos/cosmos-sdk/blob/main/simapp/upgrades.go, closing, but if there is more please open a new issue

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants