Currently following runners are available
fiesta runner is a shared runner, which means it will be available for all repositories, fiesta-flatpak is runner instance running on same machine with specific privileges enabled needed to run flatpak builds. freebsd-node3 is DO server which used to serve the build.kde.org, currently it is used for doing FreeBSD builds. ange-windows-kvm is the KVM virtual machine on ange.kde.org running Windows 10.
ange-docker-kvm is virtual machine on ange.kde.org configured to allow access to docker test, currently only enabled for ci-tooling repo.
Flatpak runner administration
Flatpak runner requires seperate configuration apart from the normal docker executor registration.
[[runners]] name = "fiesta-flatpak" url = "https://invent.kde.org/" token = "xxxxxxxxxxxxxxxxxxxx" executor = "docker" [runners.docker] tls_verify = false image = "ubuntu:bionic" privileged = false disable_entrypoint_overwrite = false oom_kill_disable = false disable_cache = false cap_add = ["SYS_ADMIN", "NET_ADMIN"] devices = ["/dev/fuse"] volumes = ["/cache", "/var/lib/flatpak"] shm_size = 0 [runners.cache] [runners.cache.s3] [runners.cache.gcs]
Important part is,
volumes entry. Which is modified to make it possible to run flatpak inside docker container.
Windows runner administration
Gitlab documentation suggests running gitlab-runner on windows as a service. However, since KDE builds require GUI access, you can't run it as a service. You will have to run as Scheduled task. Following is the
bat script used to run gitlab-runner.
cd C:\CI\ gitlab-runner.exe run --config C:\CI\config.toml --working-directory C:\CI\ > C:\CI\gitlab-runner.log 2> C:\CI\gitlab-runner-stderr.log
todo: document more details