[RFC] Refactoring OpenWrt's build infra

Hauke Mehrtens hauke at hauke-m.de
Wed Oct 5 13:29:39 PDT 2022


On 10/5/22 17:56, Thibaut wrote:
> Hi,
> 
> Following an earlier conversation on IRC with Petr, I’m willing to work on refactoring our buildbot setup as follows:
> 
> - single master for each stage (images and packages)
> - latent workers attached to either master, thus able to build opportunistically from either master or release branches as needed / as work becomes available
> 
> The main upside is that all buildslaves could be pooled, improving overall throughput and reducing wasted « idle time », thus lowering build times and operating costs.
> 
> Petr also suggested that extra release workers could be spawned at will (through e.g. cloud VMs) when a new release is to be tagged; tagged release could be scheduled only to release workers: this would still work within this « single master » build scheme.
> 
> NB: I’m aware of the potential performance penalty of having buildslaves randomly switching between branches, so I would try to come up with a reasonably smart solution to this issue if it doesn’t conflict with the main goals.
> 
> Before I set on to revamp the system accordingly I want to ask if this proposal seems like a Good Idea™ :)
> 
> Comments welcome,
> T.

Hi,

This sounds like a good idea, but I am not an expert in this topic.

I would approve such a change, but others are much more knowledge how 
our infrastructure works.

I do not know if we need special container for each release branch, I 
think we try to use an old Debian to build to make it possible to use 
the image builder binaries also on older systems.

Hauke



More information about the openwrt-devel mailing list