You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add support for skipping slow builds and reusing previous results
This PR follows from the discussion in
#13 .
It splits the workflow into two ways of working:
1. When skipping slow Ruby builds, it only does ruby-head builds; this
means debug and asan builds from a previous release are reused
2. When not skipping slow Ruby builds, this workflow works exactly as
before
The "main" tricks are:
1. The matrix for the "build" job is now dynamic, allowing us to
reduce the number of builds
2. There's a "reuse-slow" job that is run as alternative to
download/reupload builds
I think the final result is quite simple/maintainable, although I'll
admit it took quite a few iterations to get to this point.
Note that this PR does not do everything we discussed in
#13 :
1. It doesn't create the stable 3.4 asan variant yet
2. It doesn't change the build cron schedule or use the skip_slow for
anything other than manually triggered builds yet
My thinking is, I wanted feedback on if this was the right way to go
before investing on the latter parts. (But this PR is self-contained
to go in as-is)
How does it work? Here's an example run:
* Without skip_slow:
[run](https://github.com/DataDog/ruby-dev-builder/actions/runs/13326349375) / [resulting release](https://github.com/DataDog/ruby-dev-builder/releases/tag/v20250214.093006)
* With skip_slow:
[run](https://github.com/DataDog/ruby-dev-builder/actions/runs/13326366082) / [resulting release](https://github.com/DataDog/ruby-dev-builder/releases/tag/v20250214.093100)
You may spot that 'ubuntu-24.04-arm' is missing: those runners were
having a bad day when I was testing (segfaults and whatnot, often not
even in Ruby but also in the rust compiler) so I removed them
temporarily to be able to do a full green run.
0 commit comments