recently I've been working on updating kata packages with the goal to have them integrated into the official openSUSE repositories and to provide builds for more architectures.
This is a report of the current status. I'd like to have some feedback from the community, and to know if you'd consider transitioning to this new packaging structure.
We created a new development project on OBS, named devel:kubic:katacontainers, that is supposed to host the most up-to-date packages version, and will be used as source to submit packages update to the official openSUSE repositories. Me, Jose Carlos, Eric, and Peng Tao are maintainers for this project. Here's the link: https://build.opensuse.org/project/show/devel:kubic:katacontainers
- katacontainers: this contains all the host-side components, i.e. the runtime, shim, proxy, ksm-throttler.
I decided to have a single package grouping all the go host-side components, as all of them are needed to run kata containers on the host, and as of now there are no use cases where a user may want to cherry pick just some of them.
- katacontainers-kernel: kernel for the VM. This is the same package as in home:katacontainers.
- qemu-lite: this is the same package as in home:katacontainers.
- kata-agent, kata-osbuilder, containment-rpm-kata: these are not meant to be installed on the host. They are consumed by OBS and kiwi in order to generate kata compatible VM images on OBS.
There's also a subproject named devel:kubic:katacontainers:images, that's used to build kata VM images based on various distribution flavours. As of now it contains:
- katacontainers-image-leap, katacontainers-image-tumbleweed: these are rootfs images, built using kiwi and based on the openSUSE Leap and Tumbleweed distributions. kiwi is able to build packages for other distributions, both RPM and DEB based, so expect more to be added.
The current status is that packages work fine on x86_64 and aarch64. I could not manage yet to find a suitable PPC machine to run tests. I also enabled builds for s390x, and most of the packages can build successfully on it.
- qemu-vanilla: I think that it should not be bundled with katacontainers. Each distribution should rely on its own QEMU version.
- Clearlinux VM image: we could consider adding a pre-built x86_64 image.
- Debian / Ubuntu packages: I did not work on updated dsc/control files, so it's something TODO. Contributors are welcome :)
- Nightlies, stable versions: TODO.