-
Notifications
You must be signed in to change notification settings - Fork 99
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
test: Add chain upgrade test as gh action #430
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #430 +/- ##
=======================================
Coverage 69.54% 69.54%
=======================================
Files 67 67
Lines 4006 4006
=======================================
Hits 2786 2786
Misses 1124 1124
Partials 96 96
☔ View full report in Codecov by Sentry. |
This reverts commit ec54e73.
Signed-off-by: Spoorthi <9302666+spoo-bar@users.noreply.github.com>
Signed-off-by: Spoorthi <9302666+spoo-bar@users.noreply.github.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm and works! GJ!
Using the Interchain test framework, this PR adds a chain upgrade test case as well as a gh workflow which runs the test for every PR targeting main
How it works
There are two hardcoded values for the test. ( 👀 /interchaintest/setup.go)
initialVersion
- whose value is expected to be the latest release of the repo/the version that mainnet is running on.upgradeName
- whose value is expected to be the next release upgrade handler nameSteps
initialVersion
upgradeName
e.g. Here is gh workflow where we I tried to push changes but there is no upgrade handler for the new upgrade yet and thus the action fails. https://github.com/archway-network/archway/actions/runs/5939415337/job/16106111680
How to use it
There are two ways to use this:
Test via github workflow
The
Run Interchaintest
github workflow automatically runs on every PR targeting main.Test locally
This is a bit more complicated. The test does not use the docker builds that our scripts generate. The interchaintest framework integrates with heighliner built images. So to run the test locally, you would need to do the following:
git clone https://github.com/strangelove-ventures/heighliner.git cd heighliner go install
Why we need this
Note
The default Interchaintest framework does not work with Archway as it dosent handle Coin precision of 18 very well. There are some hardcoded values for genesis accounts and gentx which amount to too little for archway. So, I have forked the repo and just fixed the hardcoded values to make more sense for Archway.