-
Notifications
You must be signed in to change notification settings - Fork 6.3k
Run soltest and cli tests on Linux ARM #16322
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
base: develop
Are you sure you want to change the base?
Conversation
|
I thought you went to sleep already so I actually also started a quick PR for this :) #16321 I got through yaml syntax errors, but still not sure if the tests will actually pass. If you're working on it now, please take a look and feel free to pull the missing parts into yours if you need them. I'll just focus on other things I wanted to do in the meantime. |
I also thought you went to sleep and didn't check to see if there was already work in that direction :D
Ok, will do. |
|
CLI tests fail with: I'd check if the binary the build job saves to the workspace is under the same path as in the The soltest job is probably failing for a similar reason. |
Yes, this is the reason. The build job saves the binaries with prefix |
.circleci/config.yml
Outdated
| - run: | ||
| name: Create symbolic link with expected solc binary name | ||
| command: | | ||
| ln -s build/solc/solc-static-linux-arm build/solc/solc | ||
| - cmdline_tests |
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.
Nice solution. We probably should do it with macOS as well (not necessarily in this PR). There we instead use run_soltest (which is an internal detail of the soltest command) because the executable name is different.
cameel
left a comment
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.
If the CI passes this is good enough, though it could also use a few small tweaks (see my comments). If you want to merge this already, they could be done in a separate PR as well.
|
Argh, it actually did fail. |
f1ce987 to
7449641
Compare
|
There's no I SSH-ed into the failed job VM earlier today and installed it manually by following every step from the dockerfile, but that did indeed work and installed evmone properly. |
|
Ah, looks like the buildpack dep is the culprit - we're not copying |
b295469 to
0a02511
Compare
|
There are 3 smt tests which are failing: The message changes from "violations happens" to "violation might happen", e.g. (smtCheckerTests/external_calls/external_call_indirect_2.sol): Not sure if this happens because of ARM. |
|
What I see now is that I would need to see the failures. |
|
OK, I see. I'll take a look at those tests tomorrow. |
|
@matheusaaguiar : #16330 is my proposed solution |
Rebasing now, let's hope it helps. |
e7c65bb to
cbde3f7
Compare
Looks like that did it - but bytecode compare is not unfortunately failing - luckily - not because of the actual bytecode comparison, but rather due to the run files persisted having the same name. @cameel do you have any ideas, as I can't really see anything wrong in |
e9a95b5 to
8df4e68
Compare
Is it still an issue or did you solve it? I see all the jobs passing now in CI. |
Oh nice, @matheusaaguiar fixed it. What did you do? |
| name: Create symbolic link with expected solc and solfuzzer binaries name | ||
| command: | | ||
| ln --symbolic --relative build/solc/solc-static-linux-arm build/solc/solc | ||
| ln --symbolic --relative build/test/tools/solfuzzer-linux-arm build/test/tools/solfuzzer |
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.
Any reason #16322 (comment) was reverted?
|
@cameel, We were getting this error (which @nikola-matic mentioned) when running bytecode compare: So I reverted #16322 (comment) and updated the test jobs to use more fine-grained steps (instead of calling the templates |
8df4e68 to
9763e9f
Compare
Currently we have ARM releases but we only run bytecode equivalence tests.
This PR adds a job in the CI to run
soltestand cli tests on ARM binary.Closes #11351.
Closes #16321.
depends on #16328.