-
Notifications
You must be signed in to change notification settings - Fork 745
ci: cross-target build & test updates #2095
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
Conversation
af86354
to
684e42b
Compare
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2095 +/- ##
=======================================
Coverage 94.76% 94.76%
=======================================
Files 102 102
Lines 23514 23514
=======================================
Hits 22283 22283
Misses 1231 1231 ☔ View full report in Codecov by Sentry. |
a5b14bc
to
dc66dad
Compare
Shoud be ready now - review comments should be resolved |
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, thanks!
Given that all the intermediate commits here just resolve TODOs introduced in the first commit, I don't think there's value in keeping them and we should just squash this. @brodycj can you do that?
Benchmark resultsInstruction countsSignificant differencesThere are no significant instruction count differences Other differencesClick to expand
Wall-timeSignificant differencesThere are no significant wall-time differences Other differencesClick to expand
Additional informationCheckout details:
|
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.
Thanks! This is cool :-)
It seems like the increase in CI runtime is reasonable (all of the new jobs are still faster than the coverage task).
f882e6b
to
cf48253
Compare
I just rebased with recent updates from Yes this will definitely take some more CI resources, in the form of more parallel jobs. I did keep what I think are the most important cross targets toward the top of the matrix ... and did add some comments to help people understand what I think is the relative importance of these cross targets. Assuming that we can start adding more and more embedded targets, as discussed in #2100, I would totally favor removing say a couple of the targets I added to reduce the chance of waiting for CI jobs stuck queued. Thanks! |
Head branch was pushed to by a user without write access
cf48253
to
58dfc6a
Compare
Seems to be held up by "Check cross compilation targets" job, which I had renamed in this PR.. |
Head branch was pushed to by a user without write access
3f30ac0
to
a431772
Compare
I have pushed some updates to add a few more targets & keep the same |
I have removed the old job name from the merge queue checks. Right now the merge queue is not gating on any of the cross-compilation jobs. Not sure what we want to do with that going forward? |
UPDATED: update to do
cross test
over multiple targetsLeaving out the following targets, need to use
portable-atomic
to get CA test working for these (already got these working in my personal branch):Another nice target for
no-std
, if we can work around issue with no atomic refs for issue #2068:thumbv6m-none-eabi
will likely defer these missing targets for issue #2100 (time permitting, of course)
NOTES - UPDATED:
I think this should only be seen as a very small, slightly-incremental step towards testing on more and more embedded, "no-std" target environments.
Building & testing with
cross-rs
for many embedded targets seems to be limited by the following issues:cross
docker images (there may be some others out there in the wild)aws-lc-rs
/aws-lc-sys
requires some bindgen setup to build for most of the targets other than the normal Windows / /macOS / normal headless Linux targets. And it looks to me like even if we would not enable theaws_lc_rs
feature,cross test
would still includeaws-lc-rs
/aws-lc-sys
due to thisdev-depenencies
entry needed forrustls/examples/internal/test_ca.rs
:rcgen = { version = "0.13", default-features = false, features = ["aws_lc_rs", "pem"] }
SOME HELPFUL RESOURCES: