On Mon, 24 Oct 2011 08:13:31 -0500, RS (Richard) wrote: > If we can get distributed building working though, I might be willing > to upgrade my service a bit.
For a short-term solution, this would need a little bit of development of the Plague build service. The server (the "builder manager") can handle remote builders, which go offline temporarily. It pings them regularly for a sign of life, but it doesn't do any appropriate scheduling of build jobs to distribute the load equally to all available builders. The builder with the most free build slots is considered the most powerful and wins. The number of free build slots is the only criterion. How many slots a builder offers is not configurable, but hardcoded depending on number of CPUs. That would need to change, too. Experimenting with many more builders distributed to contributors' machines would have made a lot of sense years ago. Though, it could be that development in that area would have competed with koji. The Plague builders as used by RPM Fusion (and as had been used by Fedora Extras) are "passive", which means they must be reachable from the outside. The "active" builders, which would query the server themselves and could hide behind a tightened up firewall, have been a feature of the unreleased Plague 0.5.0 development version only. Also to consider: Would each builder work with its own repository config? For example, using mostly default mock configs with mirrorlist pointing at the repos? Or would the project create an own central mirror for all needed repos and have builders use that one? If not, what technique is used (and probably not implemented yet) to have builders wait for certain required packages to become available in a repo (similar to koji wait-repo)?