Hi all, Over the past few weeks significant work has been undertaken to develop the ability to make use of containerised builds for FreeBSD.
Over the weekend i'm happy to report that this has now been rolled out and is now in use across all 5 CI workers that support invent.kde.org. This means going forward that we should no longer experience issues with running out of disk space on our FreeBSD CI jobs anymore, and we will have the ability to ensure others can easily reproduce our setup on their local system. The FreeBSD images for Qt 5.15 and Qt 6.6 that are in use can be found at https://invent.kde.org/sysadmin/ci-images along with the other images we publish. For those curious about how to set up their own builder, instructions can be found in the gitlab-templates/ folder of sysadmin/ci-utilities (instructions are also present there for Linux and Windows). Alongside this, we've also transitioned from using Docker on the Linux side of the CI workers to using rootless (unprivileged) Podman containers. This change was necessitated by changes to Bubblewrap, which is the underlying container technology used by flatpak-builder, that made it incompatible with the workarounds we previously had in place to run it under Docker. For most projects, this should not pose any issues however due to a last minute issue that was discovered during the rollout the DRM virtual gem devices while present won't be accessible. To my knowledge this only impacts KWin. It is possible other projects that were doing actions in their tests that need some form of privilege (such as invoking a debugger) may also be affected, however in theory there should not be much difference between the two container implementations. This change has also come along with a switch to Debian Bookworm (and the 6.1.0 kernel that comes with it) which depending on your tests could also have an impact. The underlying operating system in use within our Linux CI images is not changed and continues to be OpenSUSE for desktop Linux, and Ubuntu 22.04 for Android mobile builds. At this time the setup for building of Linux images has yet to be adapted, so that capability is temporarily unavailable. It is expected to be restored in the coming days. Until that is completed, we will be unable to rebuild any of our Linux images. Thanks, Ben