@samitouri / QOSamiQemu / commits / 94809d5d9b

gitlab: greatly expand captured info about CI runner environment

To aid in debugging wierd CI failures we need greater information about the CI runner environment. It is usually container based and can have some unexpected characteristics that significantly differ from a developer's local environment. This captures the mount list, CPU model, memory information, device node lists, kernel info, user identity and all environment variables. Since this information can get quite large it is not emitted directly in the logs, rather it is exposed in job artifacts under the "ci-runner-env" directory. 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/20260624124657.2725376-7-berrange@redhat.com Signed-off-by: Pierrick Bouvier <pierrick.bouvier@oss.qualcomm.com>

Daniel P. Berrangé committed Jun 24, 2026 at 13:46 UTC 94809d5d9b71fd3217e5587282563681f8233723
2 files changed +12 -1
.gitlab-ci.d/base.yml
+10 -1
@@ -146,6 +146,7 @@ variables:
146 expire_in: 7 days
147 paths:
148 - build/meson-logs
149 + - ci-runner-env
150 reports:
151 junit: build/meson-logs/*.junit.xml
152 before_script:
@@ -155,7 +156,15 @@ variables:
156 # Prevent logs (if any) from prior build job artifacts
157 # from being duplicated in the new job artifacts
158 - rm -f build/meson-logs/*
158 - - test -f /packages.txt && cat /packages.txt
159 + - mkdir -p ci-runner-env
160 + - test -f /packages.txt && cp /packages.txt ci-runner-env/packages.txt
161 + - cp /proc/mounts ci-runner-env/mounts.txt
162 + - cp /proc/cpuinfo ci-runner-env/cpuinfo.txt
163 + - cp /proc/meminfo ci-runner-env/meminfo.txt
164 + - ls -l /dev > ci-runner-env/devices.txt
165 + - uname -a > ci-runner-env/kernel.txt
166 + - id -a > ci-runner-env/user.txt
167 + - printenv | sort > ci-runner-env/environ.txt
168 - section_end setup
169
170 .base_meson_ccache_job_template:
.gitlab-ci.d/buildtest-template.yml
+2
@@ -38,6 +38,7 @@
38 paths:
39 - build
40 - .git-submodule-status
41 + - ci-runner-env
42 exclude:
43 - build/**/*.p
44 - build/**/*.a.p
@@ -83,6 +84,7 @@
84 paths:
85 - build/meson-logs
86 - build/tests/functional/*/*/*.log
87 + - ci-runner-env
88 reports:
89 junit: build/meson-logs/*.junit.xml
90 after_script: