-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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 workflow that verifies compatibility with different versions of evm nodes #12332
Conversation
I see that you haven't updated any CHANGELOG files. Would it make sense to do so? |
I see that you haven't updated any README files. Would it make sense to do so? |
@@ -0,0 +1,65 @@ | |||
#!/usr/bin/env bash |
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.
Would it make sense to just update the buildTestMatrixList.sh script to handle this case instead of duplicating most of its code?
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.
@tateexon created a ticker for myself to tackle it in another PR
|
||
// COPIED FROM go-ethereum/ethclient/gethclient - must be kept up to date! | ||
// Modified to include legacy 'data' as well as 'input' in order to support non-compliant servers. | ||
func toCallArg(msg ethereum.CallMsg) interface{} { |
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.
I'm assuming there's no chance we can convince them to make this a public function? Is there any way we can make checking for this part of the GitHub action? We will definitely forget.
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.
EXPORTED!
Quality Gate passedIssues Measures |
…vm nodes (#12332) * add workflow that verifies compatibility with different versions of evm nodes * fix lints * fix worklow definion * another workflow fix * another fix * send slack notifications only if go-ethereum dep was modified * bump go-ethereum to v1.13.9 to test the workflow * remove hardcoded commit hashes... * fix comparison * bump * use correctly git diff * fetch develop before comparing * remove unnecesary outputs declaration * add outputs debug * remove step id * use explicit outputs * execute workflow also on dispatch if go-ethereum version did not change * fix script output * fix quoting of custom images in TOML, echo test compatibility matrix * don't use pyroscope in compatibility tests * use newer CTF * latest ctf, couple of fixes * bump CTF, run compatibility tests only for geth * all smoke tests will now use TOML config * set ethereum version to empty * adjust TOML created in CI to latest CTF changes * run also ocr2 test * adjust regex capture for Slack message * try to group compatibilty tests results by product * group by product, not full matrix * run even more product tests to check compatibility * fix parameter field name * log details before starting private ethereum network * fix how TOML is build for custom eth client image * fix typo in argument name * fix versions + always notify slack * add a ContractBackend wrapper that is backward-compatible with go-ethereum < 1.11.0 * add comment to contract calelr * try running compatibility fix on broken version * just trigger * try to build image in CI * try to checkout old commit * fix contract caller, and let's see if it fails or not * remove code used for testing, fix slack reporting * fix a situation, when we lose transaction timeout setting for networks that are not overwritten * trigger compatibility tests for PR bumping go-ethereum to 1.13.14 * add gas limit for Fiji, fix a situation when new networks were ignored * fix lints * remove hardcoded github sha * add changeset * separate method for restarting CL cluster * update go.mod * go.mod * lints * do not bump go-eth * use latest CTF v1.27.0 * dump down go-ethereum, fix some comments and descriptions * add helper that exposes legacy methods to use them in test wrapper and rpc client * remove stale comment
Workflow that is triggered, when we update
go-ethereum
in maingo.mod
.When that happens we will execute predefined tests on predefined client versions stored in
integration-tests/smoke/evm_node_compatibility_test_list.json
. It also support on-demand triggering with custom input (base64-ed evm node matrix with the same format as the mentioned file).It does not address L2 EVM node compatibility.