They use powershell instead of cmd.exe, use the tag win32-ps instead of win32, and run Windows 2016 instead of 2012r2. The old runners will be switched off in the comming weeks.
GTK CI infrastructure
GTK uses different CI images depending on platform and jobs.
The CI images are Docker containers, generated either using docker or
podman, and pushed to the GitLab container registry.
Each Docker image has a tag composed of two parts:
${image}: the base image for a given platform, like "fedora" or "debian-stable"${number}: an incremental version number, orlatest
See the container registry for the available images for each branch, as well as their available versions.
Checklist for Updating a CI image
- Update the
${image}.Dockerfilefile with the dependencies - Run
./run-docker.sh build --base ${image} --base-version ${number} - Run
./run-docker.sh push --base ${image} --base-version ${number}once the Docker image is built; you may need to log in by usingdocker loginorpodman login - Update the
imagekeys in the.gitlab-ci.ymlfile with the new image tag - Open a merge request with your changes and let it run
Checklist for Adding a new CI image
- Write a new
${image}.Dockerfilewith the instructions to set up a build environment - Add the
pip3 install mesonincantation - Run
./run-docker.sh build --base ${image} --base-version ${number} - Run
./run-docker.sh push --base ${image} --base-version ${number} - Add the new job to
.gitlab-ci.ymlreferencing the image - Open a merge request with your changes and let it run