Open
Bug 1408137
Opened 7 years ago
Updated 2 years ago
Implement the equivalent of artifact builds with optimization
Categories
(Firefox Build System :: Task Configuration, task)
Firefox Build System
Task Configuration
Tracking
(Not tracked)
NEW
People
(Reporter: dustin, Unassigned)
References
(Blocks 1 open bug)
Details
We have some stuff in-tree right now to allow --artifact in try pushes, which does some magic to avoid re-building.
We should be able to do that automatically, using the optimization process. If nothing that requires a build has changed, find an existing build in the index and use that.
This is a little tricky on try, where 'an existing build' may be corrupted. We already face that problem with toolchains and docker images, though, so perhaps we don't need to think too hard?
Reporter | ||
Comment 1•7 years ago
|
||
I've not self-assigned because (a) I don't especially want to own this and (b) I don't think now is a great time to make what could be a very breaking change.
Comment 2•7 years ago
|
||
IIRC we already have a few bugs on file to do artifact builds by default.
I think a major blocker is not knowing the full set of files that can influence a build. This is obviously a prerequisite to the "automatically" part. Although with SCHEDULES.exclusive, I /think/ we can swap in an artifact build. Although with the current artifact build logic, we need to set up a cross-push task dependency. While possible, this is riddled with gotchas, such as a cancelled/failed build on a previous push resulting in tasks for another push not running. We could only do the artifact build swap if a previous build is complete though!
Blocks: fastci
Reporter | ||
Comment 3•7 years ago
|
||
All of our index-based optimizations only find successful, completed jobs. It means thundering herds are not optimal, but avoids all those gotchas.
Updated•7 years ago
|
Product: TaskCluster → Firefox Build System
Updated•2 years ago
|
Severity: normal → S3
You need to log in
before you can comment on or make changes to this bug.
Description
•