-
Notifications
You must be signed in to change notification settings - Fork 15
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
ci: Test more targets, move the testing logic to a script #28
Conversation
The last red build on main took 40 minutes, which means that's the time for the toolchain to be ready. Workflows can run for 3-6 hours, so I will try to build the whole system here. If that takes too long, I will fall back to installing zstd (or some other package). |
1e2d914
to
5d42777
Compare
I would like to cover a lot more targets so maybe we could only bother with the full |
5d42777
to
e5445f3
Compare
.github/workflows/crossdev.yml
Outdated
- riscv64-unknown-linux-gnu | ||
- riscv64-unknown-linux-musl | ||
- sparc-unknown-linux-gnu | ||
- sparc-unknown-linux-musl |
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.
There is no sparc* port for musl (or musl port for sparc*), unfortunately.
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.
Good point, removed
e5445f3
to
cdb716b
Compare
Now that we have some jobs failing, I realized that the CI jobs are hard to debug, because the outputs of I will also make the whole script fail realy in the next push. |
I suppose, not sure if I love the name though. |
.github/workflows/crossdev.yml
Outdated
- riscv64-unknown-linux-musl | ||
- sparc-unknown-linux-gnu | ||
- sparc64-unknown-linux-gnu | ||
- sparc64-unknown-linux-musl |
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.
This needs to go too.
Nevermind, there is |
I had no idea! |
cdb716b
to
d3e813e
Compare
29dd526
to
0e45474
Compare
b0963f6
to
a804317
Compare
5bfd73d
to
6b8830e
Compare
de10492
to
4d70cf1
Compare
@thesamesam Are you by any chance able to restart single jobs? These two failed just because of flakyness of https://github.com/gentoo/crossdev/actions/runs/12005351093/job/33461826634?pr=28 These targets worked before. If not, I will force push, but I'm wondering if we can avoid that. I'm usually able to restart jobs in repositories I own. In general, I think we're almost there. Once everything is green, I think we are good to go. |
Unfortunately, I can't (the permissions most people have are very limited on the gentoo github repos). But maybe it's a sign of a real bug, actually (or a real risk of flakiness): let's change it to |
Cover all possible targets. The ones which fail to build, are disabled with an appropriate comment explaining the error. To make the tests easier to reproduce locally, provide the `container_test.sh` script and move the most of logic there. Signed-off-by: Michal Rostecki <[email protected]>
4d70cf1
to
04af455
Compare
Looks like we're good to go? Thanks a lot for your work. I'll wait until you switch to ready before merging. I have always been a bit uneasy about crossdev changes because of the lack of such automated testing. |
I marked it as ready. Thank you for your review! Looking forward to test my LLVM-related changes with it. BTW, would you be open for using Github Actions in the main gentoo repo as well? I know that there is Tinderbox and https://qa-reports.gentoo.org/. But from my understanding, Tinderbox tests mostly already merged changes and the QA reports on pull requests are mostly syntax linters? I think a Github Action which tries to |
I think that's a more controversial question that would require broader discussion. It would be nice for PRs at least to help catch errors like that though, I agree. There have been a lot of different efforts in the past to have tinderboxing-setup-as-regular-CI like Zorry is doing at the moment with buildbot, but relying on github actions would kind of be advantageous here anyway for untrusted/arbitrary PRs anyway... |
Cover all possible targets. The ones which fail to build, are disabled with an appropriate comment explaining the error.
To make the tests easier to reproduce locally, provide the
container_test.sh
script and move the most of logic there.