Replace Kaniko with something that among others can create a riscv64 image
We currently rely on kaniko for building the images. We introduced it for being able to build i386 images (see c4336657). However, kaniko doesn't provide a riscv64 image so far. If we want to add RISC-V support, we currently need an alternative to kaniko, or hack kaniko and provide that image.
c4336657 was pushed on 2020. Probably because the lack of knowledge about other tools, and because buildah and podman were "recently" introduced in debian at that time, kaniko seemed to be the most suitable approach to replace docker-in-docker and introduce support for other architectures (other than amd64). The situation has evolved since then, and we can use something with a mature support in Debian.
Kaniko is "just" used to build and push the images into the registry, and buildah seems to be a suitable replacement.
The test pipelines that are run by the internal pipeline (.gitlab-ci.yml
) make it possible to test the different built images, and we can rely on that for the MR that will close this. There is one exception though: While replacing kaniko, it would be great to introduce a test pipeline to test the base
images for architectures non-enabled by default (ARM currently). Running build jobs for those architectures should be the minimum, and the autopkgtest, blhc, reprotest and other images for arm64 would be ideal.