Radish alpha
r
rad:zwTxygwuz5LDGBq255RA2CbNGrz8
Radicle CI broker
Radicle
Git
Doesn't support building for many targets ("matrix builds")
Open liw opened 8 months ago someday/maybe

More generally, Radicle CI has no way to support a setup where a project needs to be built on, and tests run on, many operating systems and architectures. Possibly so that parts of the run depend on artifacts from other parts.

A concrete example: assume I have a project that I build deb packages for, and I want to provide binary packages for several Debian releases (oldstable, stable, and unstable) and architetures (amd64, arm64, riscv64). I’d want to do this:

  • build a source package on amd64/oldstable - amd64 because the hardware is likely fast, and oldstable so the source package doesn’t use any features that were only introduced later
  • then on each combination of Debian release and architecture, build a binary deb packqage from the source package, not by building a new source package on each, and also run test suite on that combination
  • if all goes well, gather up the source package and every deb and publish them by uploading them to an APT repository

So: source package -> matrix of binary packages and tests -> publish

I’m not sure at the moment how Radicle CI should approach this, but it will be needed in the long run.