gitlab: disable macOS jobs in forks
The GitLab macOS runners are only available in Premium and Ultimate tier projects. This permits their use in QEMU upstream via the OSS Program membership perk, but this does not extend to forks of QEMU. The macOS jobs thus need to be disabled in forks, otherwise all pipelines will immediately report a failure due to inability to access a runner. Signed-off-by: Daniel P. Berrangé <berrange@redhat.com> Reviewed-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com> Link: https://lore.kernel.org/qemu-devel/20260610091700.2772973-1-berrange@redhat.com Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>
Daniel P. Berrangé committed
Jun 10, 2026 at 10:17 UTC
02b5ed7a8eddba8959050d3fa6fa9ed84a9bf666
3 files changed
+14
.gitlab-ci.d/base.yml
+5
@@ -52,6 +52,11 @@ variables:
52
- if: '$CI_PIPELINE_SOURCE == "schedule"'
53
when: never
54
55
+ # macOS jobs can't run in forks until gitlab opens up runner availability
56
+ # to all tiers https://gitlab.com/groups/gitlab-org/-/work_items/8267
57
+ - if: '$QEMU_JOB_MACOS == "1" && $CI_PROJECT_NAMESPACE != $QEMU_CI_UPSTREAM'
58
+ when: never
59
+
60
# Publishing jobs should only run on the default branch in upstream
61
- if: '$QEMU_JOB_PUBLISH == "1" && $CI_PROJECT_NAMESPACE == $QEMU_CI_UPSTREAM && $CI_COMMIT_BRANCH != $CI_DEFAULT_BRANCH'
62
when: never
.gitlab-ci.d/macos.yml
+2
@@ -36,6 +36,7 @@ aarch64-macos-15-build:
36
extends: .macos_job_template
37
image: macos-15-xcode-16
38
variables:
39
+ QEMU_JOB_MACOS: 1
40
NAME: macos-15
41
PATH_EXTRA: /opt/homebrew/gettext/bin
42
PKG_CONFIG_PATH: /opt/homebrew/curl/lib/pkgconfig:/opt/homebrew/ncurses/lib/pkgconfig:/opt/homebrew/readline/lib/pkgconfig
@@ -52,6 +53,7 @@ aarch64-macos-26-build:
53
extends: .macos_job_template
54
image: macos-26-xcode-26
55
variables:
56
+ QEMU_JOB_MACOS: 1
57
NAME: macos-26
58
DYLD_LIBRARY_PATH: /opt/homebrew/opt/expat/lib/
59
PATH_EXTRA: /opt/homebrew/gettext/bin
docs/devel/testing/ci-jobs.rst.inc
+7
@@ -125,6 +125,13 @@ QEMU_JOB_FUNCTIONAL
125
126
The job runs the functional test suite
127
128
+QEMU_JOB_MACOS
129
+~~~~~~~~~~~~~~
130
+
131
+The job requires access to the macOS shared runners, which are
132
+only available to Premium/Ultimate tiers. This includes OSS project
133
+members, but not forks.
134
+
135
Contributor controlled runtime variables
136
----------------------------------------
137