]> git.proxmox.com Git - mirror_qemu.git/blame - .gitlab-ci.yml
Fix build with new yank feature by adding stubs
[mirror_qemu.git] / .gitlab-ci.yml
CommitLineData
c5008c76
AB
1# Currently we have two build stages after our containers are built:
2# - build (for traditional build and test or first stage build)
3# - test (for test stages, using build artefacts from a build stage)
d0caa0a8
DB
4stages:
5 - containers
fa821f23 6 - containers-layer2
d0caa0a8 7 - build
c5008c76 8 - test
d0caa0a8 9
71920809 10include:
922febe2
TH
11 - local: '/.gitlab-ci.d/edk2.yml'
12 - local: '/.gitlab-ci.d/opensbi.yml'
fa821f23 13 - local: '/.gitlab-ci.d/containers.yml'
6bcb5fc0 14 - local: '/.gitlab-ci.d/crossbuilds.yml'
71920809 15
c962864f
DB
16.native_build_job_template: &native_build_job_definition
17 stage: build
18 image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
19 before_script:
20 - JOBS=$(expr $(nproc) + 1)
8d77ce1d 21 - sed -i s,git.qemu.org/git,gitlab.com/qemu-project, .gitmodules
c962864f
DB
22 script:
23 - mkdir build
24 - cd build
25 - if test -n "$TARGETS";
26 then
27 ../configure --enable-werror $CONFIGURE_ARGS --target-list="$TARGETS" ;
28 else
29 ../configure --enable-werror $CONFIGURE_ARGS ;
c47110d9 30 fi || { cat config.log meson-logs/meson-log.txt && exit 1; }
c962864f 31 - make -j"$JOBS"
c5008c76
AB
32 - if test -n "$MAKE_CHECK_ARGS";
33 then
a6eeac3b 34 make -j"$JOBS" $MAKE_CHECK_ARGS ;
c5008c76
AB
35 fi
36
37.native_test_job_template: &native_test_job_definition
38 stage: test
39 image: $CI_REGISTRY_IMAGE/qemu/$IMAGE:latest
40 script:
41 - cd build
42 - find . -type f -exec touch {} +
43 - make $MAKE_CHECK_ARGS
44
5896c539
TH
45.acceptance_template: &acceptance_definition
46 cache:
47 key: "${CI_JOB_NAME}-cache"
48 paths:
49 - ${CI_PROJECT_DIR}/avocado-cache
50 policy: pull-push
ec4d2feb 51 artifacts:
df063546
WSM
52 name: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG"
53 when: always
54 expire_in: 2 days
ec4d2feb
CR
55 paths:
56 - build/tests/results/latest/results.xml
df063546 57 - build/tests/results/latest/test-results
ec4d2feb
CR
58 reports:
59 junit: build/tests/results/latest/results.xml
5896c539
TH
60 before_script:
61 - mkdir -p ~/.config/avocado
62 - echo "[datadir.paths]" > ~/.config/avocado/avocado.conf
63 - echo "cache_dirs = ['${CI_PROJECT_DIR}/avocado-cache']"
64 >> ~/.config/avocado/avocado.conf
ba2232ba
WSM
65 - echo -e '[job.output.testlogs]\nstatuses = ["FAIL"]'
66 >> ~/.config/avocado/avocado.conf
5896c539
TH
67 - if [ -d ${CI_PROJECT_DIR}/avocado-cache ]; then
68 du -chs ${CI_PROJECT_DIR}/avocado-cache ;
69 fi
67202bae 70 - export AVOCADO_ALLOW_UNTRUSTED_CODE=1
c5008c76
AB
71 after_script:
72 - cd build
5896c539 73 - du -chs ${CI_PROJECT_DIR}/avocado-cache
0a8b05c7 74
699616db 75build-system-ubuntu:
c962864f
DB
76 <<: *native_build_job_definition
77 variables:
78 IMAGE: ubuntu2004
699616db
TH
79 TARGETS: aarch64-softmmu alpha-softmmu cris-softmmu hppa-softmmu
80 moxie-softmmu microblazeel-softmmu mips64el-softmmu
a6eeac3b 81 MAKE_CHECK_ARGS: check-build
c5008c76 82 artifacts:
0a796d63 83 expire_in: 2 days
c5008c76
AB
84 paths:
85 - build
86
699616db 87check-system-ubuntu:
c5008c76
AB
88 <<: *native_test_job_definition
89 needs:
699616db 90 - job: build-system-ubuntu
c5008c76
AB
91 artifacts: true
92 variables:
93 IMAGE: ubuntu2004
c962864f 94 MAKE_CHECK_ARGS: check
0a8b05c7 95
699616db 96acceptance-system-ubuntu:
c5008c76
AB
97 <<: *native_test_job_definition
98 needs:
699616db 99 - job: build-system-ubuntu
c5008c76
AB
100 artifacts: true
101 variables:
102 IMAGE: ubuntu2004
103 MAKE_CHECK_ARGS: check-acceptance
5896c539 104 <<: *acceptance_definition
c5008c76 105
699616db
TH
106build-system-debian:
107 <<: *native_build_job_definition
108 variables:
109 IMAGE: debian-amd64
110 TARGETS: arm-softmmu avr-softmmu i386-softmmu mipsel-softmmu
111 riscv64-softmmu sh4eb-softmmu sparc-softmmu xtensaeb-softmmu
112 MAKE_CHECK_ARGS: check-build
113 artifacts:
0a796d63 114 expire_in: 2 days
699616db
TH
115 paths:
116 - build
117
118check-system-debian:
119 <<: *native_test_job_definition
120 needs:
121 - job: build-system-debian
122 artifacts: true
123 variables:
124 IMAGE: debian-amd64
125 MAKE_CHECK_ARGS: check
126
a8a3abe0
AB
127build-tools-and-docs-debian:
128 <<: *native_build_job_definition
129 variables:
130 IMAGE: debian-amd64
131 MAKE_CHECK_ARGS: ctags TAGS cscope
132 CONFIGURE_ARGS: --disable-system --disable-user --enable-docs --enable-tools
133 artifacts:
134 expire_in: 2 days
135 paths:
136 - build
137
699616db
TH
138acceptance-system-debian:
139 <<: *native_test_job_definition
140 needs:
141 - job: build-system-debian
142 artifacts: true
143 variables:
144 IMAGE: debian-amd64
145 MAKE_CHECK_ARGS: check-acceptance
5896c539 146 <<: *acceptance_definition
699616db
TH
147
148build-system-fedora:
c962864f
DB
149 <<: *native_build_job_definition
150 variables:
151 IMAGE: fedora
d0f26e68 152 CONFIGURE_ARGS: --disable-gcrypt --enable-nettle --enable-docs
3ffc7f01 153 TARGETS: tricore-softmmu microblaze-softmmu mips-softmmu
699616db 154 xtensa-softmmu m68k-softmmu riscv32-softmmu ppc-softmmu sparc64-softmmu
a6eeac3b 155 MAKE_CHECK_ARGS: check-build
c5008c76 156 artifacts:
0a796d63 157 expire_in: 2 days
c5008c76
AB
158 paths:
159 - build
160
699616db 161check-system-fedora:
c5008c76
AB
162 <<: *native_test_job_definition
163 needs:
699616db 164 - job: build-system-fedora
c5008c76
AB
165 artifacts: true
166 variables:
167 IMAGE: fedora
c962864f 168 MAKE_CHECK_ARGS: check
0a8b05c7 169
699616db 170acceptance-system-fedora:
c5008c76
AB
171 <<: *native_test_job_definition
172 needs:
699616db 173 - job: build-system-fedora
c5008c76
AB
174 artifacts: true
175 variables:
176 IMAGE: fedora
177 MAKE_CHECK_ARGS: check-acceptance
5896c539 178 <<: *acceptance_definition
c5008c76 179
699616db
TH
180build-system-centos:
181 <<: *native_build_job_definition
182 variables:
183 IMAGE: centos8
affcc09c 184 CONFIGURE_ARGS: --disable-nettle --enable-gcrypt
3ffc7f01 185 TARGETS: ppc64-softmmu or1k-softmmu s390x-softmmu
699616db
TH
186 x86_64-softmmu rx-softmmu sh4-softmmu nios2-softmmu
187 MAKE_CHECK_ARGS: check-build
188 artifacts:
0a796d63 189 expire_in: 2 days
699616db
TH
190 paths:
191 - build
192
193check-system-centos:
194 <<: *native_test_job_definition
195 needs:
196 - job: build-system-centos
197 artifacts: true
198 variables:
199 IMAGE: centos8
200 MAKE_CHECK_ARGS: check
201
202acceptance-system-centos:
203 <<: *native_test_job_definition
204 needs:
205 - job: build-system-centos
206 artifacts: true
207 variables:
208 IMAGE: centos8
209 MAKE_CHECK_ARGS: check-acceptance
5896c539 210 <<: *acceptance_definition
699616db 211
b115ea3a
CYC
212build-system-opensuse:
213 <<: *native_build_job_definition
214 variables:
215 IMAGE: opensuse-leap
216 TARGETS: s390x-softmmu x86_64-softmmu aarch64-softmmu
217 MAKE_CHECK_ARGS: check-build
218 artifacts:
219 expire_in: 2 days
220 paths:
221 - build
222
223check-system-opensuse:
224 <<: *native_test_job_definition
225 needs:
226 - job: build-system-opensuse
227 artifacts: true
228 variables:
229 IMAGE: opensuse-leap
230 MAKE_CHECK_ARGS: check
231
232acceptance-system-opensuse:
233 <<: *native_test_job_definition
234 needs:
235 - job: build-system-opensuse
236 artifacts: true
237 variables:
238 IMAGE: opensuse-leap
239 MAKE_CHECK_ARGS: check-acceptance
240 <<: *acceptance_definition
241
242
0a8b05c7 243build-disabled:
c962864f
DB
244 <<: *native_build_job_definition
245 variables:
246 IMAGE: fedora
94a4f816
PMD
247 CONFIGURE_ARGS:
248 --disable-attr
0c4d885f 249 --disable-auth-pam
94a4f816
PMD
250 --disable-avx2
251 --disable-bochs
252 --disable-brlapi
253 --disable-bzip2
254 --disable-cap-ng
255 --disable-capstone
256 --disable-cloop
257 --disable-coroutine-pool
258 --disable-curl
259 --disable-curses
260 --disable-dmg
261 --disable-docs
0c4d885f 262 --disable-gcrypt
94a4f816
PMD
263 --disable-glusterfs
264 --disable-gnutls
265 --disable-gtk
266 --disable-guest-agent
267 --disable-iconv
0c4d885f 268 --disable-keyring
94a4f816
PMD
269 --disable-kvm
270 --disable-libiscsi
271 --disable-libpmem
272 --disable-libssh
0c4d885f 273 --disable-libudev
94a4f816
PMD
274 --disable-libusb
275 --disable-libxml2
276 --disable-linux-aio
277 --disable-live-block-migration
278 --disable-lzo
279 --disable-malloc-trim
280 --disable-mpath
281 --disable-nettle
282 --disable-numa
0c4d885f 283 --disable-opengl
94a4f816
PMD
284 --disable-parallels
285 --disable-pie
286 --disable-qcow1
287 --disable-qed
288 --disable-qom-cast-debug
289 --disable-rbd
290 --disable-rdma
291 --disable-replication
292 --disable-sdl
293 --disable-seccomp
294 --disable-sheepdog
295 --disable-slirp
296 --disable-smartcard
297 --disable-snappy
0c4d885f 298 --disable-sparse
94a4f816
PMD
299 --disable-spice
300 --disable-strip
301 --disable-tpm
302 --disable-usb-redir
303 --disable-vdi
304 --disable-vhost-crypto
305 --disable-vhost-net
306 --disable-vhost-scsi
307 --disable-vhost-user
308 --disable-vhost-vdpa
309 --disable-vhost-vsock
310 --disable-virglrenderer
311 --disable-vnc
312 --disable-vte
313 --disable-vvfat
314 --disable-xen
315 --disable-zstd
a7524adb
TH
316 TARGETS: arm-softmmu i386-softmmu ppc64-softmmu mips64-softmmu
317 s390x-softmmu i386-linux-user
c962864f 318 MAKE_CHECK_ARGS: check-qtest SPEED=slow
0a8b05c7 319
37b6fd66
PMD
320# This jobs explicitly disable TCG (--disable-tcg), KVM is detected by
321# the configure script. The container doesn't contain Xen headers so
322# Xen accelerator is not detected / selected. As result it build the
323# i386-softmmu and x86_64-softmmu with KVM being the single accelerator
324# available.
0a8b05c7 325build-tcg-disabled:
c962864f
DB
326 <<: *native_build_job_definition
327 variables:
328 IMAGE: centos8
329 script:
330 - mkdir build
331 - cd build
c47110d9 332 - ../configure --disable-tcg --audio-drv-list="" || { cat config.log meson-logs/meson-log.txt && exit 1; }
c962864f
DB
333 - make -j"$JOBS"
334 - make check-unit
335 - make check-qapi-schema
336 - cd tests/qemu-iotests/
337 - ./check -raw 001 002 003 004 005 008 009 010 011 012 021 025 032 033 048
c7cf4ddb
TH
338 052 063 077 086 101 104 106 113 148 150 151 152 157 159 160 163
339 170 171 183 184 192 194 197 208 215 221 222 226 227 236 253 277
d8a18da5 340 - ./check -qcow2 028 051 056 057 058 065 068 082 085 091 095 096 102 122
c7cf4ddb
TH
341 124 132 139 142 144 145 151 152 155 157 165 194 196 197 200 202
342 208 209 215 216 218 222 227 234 246 247 248 250 254 255 257 258
343 260 261 262 263 264 270 272 273 277 279
0a8b05c7
TH
344
345build-user:
c962864f
DB
346 <<: *native_build_job_definition
347 variables:
62c902e0
AB
348 IMAGE: debian-all-test-cross
349 CONFIGURE_ARGS: --disable-tools --disable-system
350 MAKE_CHECK_ARGS: check-tcg
0a8b05c7 351
d01bc253
PMD
352build-user-static:
353 <<: *native_build_job_definition
354 variables:
355 IMAGE: debian-all-test-cross
356 CONFIGURE_ARGS: --disable-tools --disable-system --static
357 MAKE_CHECK_ARGS: check-tcg
358
ac74e282
AB
359# Only build the softmmu targets we have check-tcg tests for
360build-some-softmmu:
361 <<: *native_build_job_definition
362 variables:
363 IMAGE: debian-all-test-cross
364 CONFIGURE_ARGS: --disable-tools --enable-debug-tcg
365 TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
366 MAKE_CHECK_ARGS: check-tcg
367
8cdb2cef
AB
368# Run check-tcg against linux-user (with plugins)
369# we skip sparc64-linux-user until it has been fixed somewhat
370# we skip cris-linux-user as it doesn't use the common run loop
371build-user-plugins:
372 <<: *native_build_job_definition
373 variables:
374 IMAGE: debian-all-test-cross
375 CONFIGURE_ARGS: --disable-tools --disable-system --enable-plugins --enable-debug-tcg --target-list-exclude=sparc64-linux-user,cris-linux-user
376 MAKE_CHECK_ARGS: check-tcg
377 timeout: 1h 30m
378
ac74e282
AB
379build-some-softmmu-plugins:
380 <<: *native_build_job_definition
381 variables:
382 IMAGE: debian-all-test-cross
383 CONFIGURE_ARGS: --disable-tools --disable-user --enable-plugins --enable-debug-tcg
384 TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
385 MAKE_CHECK_ARGS: check-tcg
386
0a8b05c7 387build-clang:
c962864f
DB
388 <<: *native_build_job_definition
389 variables:
390 IMAGE: fedora
391 CONFIGURE_ARGS: --cc=clang --cxx=clang++
392 TARGETS: alpha-softmmu arm-softmmu m68k-softmmu mips64-softmmu
b610eba3 393 ppc-softmmu s390x-softmmu arm-linux-user
c962864f 394 MAKE_CHECK_ARGS: check
5f55d64b 395
1c0c06b1
AB
396# These targets are on the way out
397build-deprecated:
398 <<: *native_build_job_definition
399 variables:
400 IMAGE: debian-all-test-cross
3ffc7f01 401 CONFIGURE_ARGS: --disable-docs --disable-tools
2614670b 402 MAKE_CHECK_ARGS: build-tcg
3ffc7f01
AB
403 TARGETS: ppc64abi32-linux-user tilegx-linux-user lm32-softmmu
404 unicore32-softmmu
2614670b
AB
405 artifacts:
406 expire_in: 2 days
407 paths:
408 - build
409
410# We split the check-tcg step as test failures are expected but we still
411# want to catch the build breaking.
412check-deprecated:
413 <<: *native_test_job_definition
414 needs:
415 - job: build-deprecated
416 artifacts: true
417 variables:
418 IMAGE: debian-all-test-cross
419 MAKE_CHECK_ARGS: check-tcg
1c0c06b1
AB
420 allow_failure: true
421
48eac101 422build-oss-fuzz:
b610eba3
TH
423 <<: *native_build_job_definition
424 variables:
425 IMAGE: fedora
426 script:
48eac101
AB
427 - mkdir build-oss-fuzz
428 - CC="clang" CXX="clang++" CFLAGS="-fsanitize=address"
429 ./scripts/oss-fuzz/build.sh
5ab04d5e 430 - export ASAN_OPTIONS="fast_unwind_on_malloc=0"
48eac101
AB
431 - for fuzzer in $(find ./build-oss-fuzz/DEST_DIR/ -executable -type f
432 | grep -v slirp); do
433 grep "LLVMFuzzerTestOneInput" ${fuzzer} > /dev/null 2>&1 || continue ;
434 echo Testing ${fuzzer} ... ;
320c6e78 435 "${fuzzer}" -runs=1 -seed=1 || exit 1 ;
b610eba3 436 done
5ab04d5e
TH
437 # Unrelated to fuzzer: run some tests with -fsanitize=address
438 - cd build-oss-fuzz && make check-qtest-i386 check-unit
b610eba3 439
5f55d64b 440build-tci:
c962864f
DB
441 <<: *native_build_job_definition
442 variables:
443 IMAGE: fedora
444 script:
445 - TARGETS="aarch64 alpha arm hppa m68k microblaze moxie ppc64 s390x x86_64"
446 - mkdir build
447 - cd build
448 - ../configure --enable-tcg-interpreter
c47110d9 449 --target-list="$(for tg in $TARGETS; do echo -n ${tg}'-softmmu '; done)" || { cat config.log meson-logs/meson-log.txt && exit 1; }
c962864f
DB
450 - make -j"$JOBS"
451 - make run-tcg-tests-x86_64-softmmu
452 - make tests/qtest/boot-serial-test tests/qtest/cdrom-test tests/qtest/pxe-test
453 - for tg in $TARGETS ; do
64ed6f92 454 export QTEST_QEMU_BINARY="./qemu-system-${tg}" ;
c962864f
DB
455 ./tests/qtest/boot-serial-test || exit 1 ;
456 ./tests/qtest/cdrom-test || exit 1 ;
457 done
64ed6f92
PB
458 - QTEST_QEMU_BINARY="./qemu-system-x86_64" ./tests/qtest/pxe-test
459 - QTEST_QEMU_BINARY="./qemu-system-s390x" ./tests/qtest/pxe-test -m slow
affcc09c 460
d1a8b308
PMD
461# Alternate coroutines implementations are only really of interest to KVM users
462# However we can't test against KVM on Gitlab-CI so we can only run unit tests
463build-coroutine-ucontext:
464 <<: *native_build_job_definition
465 variables:
466 IMAGE: ubuntu2004
467 CONFIGURE_ARGS: --with-coroutine=ucontext --disable-tcg
468 MAKE_CHECK_ARGS: check-unit
469
470build-coroutine-sigaltstack:
471 <<: *native_build_job_definition
472 variables:
473 IMAGE: ubuntu2004
474 CONFIGURE_ARGS: --with-coroutine=sigaltstack --disable-tcg
475 MAKE_CHECK_ARGS: check-unit
476
affcc09c
DB
477# Most jobs test latest gcrypt or nettle builds
478#
479# These jobs test old gcrypt and nettle from RHEL7
480# which had some API differences.
481build-crypto-old-nettle:
482 <<: *native_build_job_definition
483 variables:
484 IMAGE: centos7
485 TARGETS: x86_64-softmmu x86_64-linux-user
486 CONFIGURE_ARGS: --disable-gcrypt --enable-nettle
487 MAKE_CHECK_ARGS: check-build
488 artifacts:
489 paths:
490 - build
491
492check-crypto-old-nettle:
493 <<: *native_test_job_definition
494 needs:
495 - job: build-crypto-old-nettle
496 artifacts: true
497 variables:
498 IMAGE: centos7
499 MAKE_CHECK_ARGS: check
500
501
502build-crypto-old-gcrypt:
503 <<: *native_build_job_definition
504 variables:
505 IMAGE: centos7
506 TARGETS: x86_64-softmmu x86_64-linux-user
507 CONFIGURE_ARGS: --disable-nettle --enable-gcrypt
508 MAKE_CHECK_ARGS: check-build
509 artifacts:
510 paths:
511 - build
512
513check-crypto-old-gcrypt:
514 <<: *native_test_job_definition
515 needs:
516 - job: build-crypto-old-gcrypt
517 artifacts: true
518 variables:
519 IMAGE: centos7
520 MAKE_CHECK_ARGS: check
521
522
523build-crypto-only-gnutls:
524 <<: *native_build_job_definition
525 variables:
526 IMAGE: centos7
527 TARGETS: x86_64-softmmu x86_64-linux-user
528 CONFIGURE_ARGS: --disable-nettle --disable-gcrypt --enable-gnutls
529 MAKE_CHECK_ARGS: check-build
530 artifacts:
531 paths:
532 - build
533
534check-crypto-only-gnutls:
535 <<: *native_test_job_definition
536 needs:
537 - job: build-crypto-only-gnutls
538 artifacts: true
539 variables:
540 IMAGE: centos7
541 MAKE_CHECK_ARGS: check
1f475472 542
1352d568
PMD
543# We don't need to exercise every backend with every front-end
544build-trace-multi-user:
545 <<: *native_build_job_definition
546 variables:
547 IMAGE: ubuntu2004
548 CONFIGURE_ARGS: --enable-trace-backends=log,simple,syslog --disable-system
549
550build-trace-ftrace-system:
551 <<: *native_build_job_definition
552 variables:
553 IMAGE: ubuntu2004
554 CONFIGURE_ARGS: --enable-trace-backends=ftrace --target-list=x86_64-softmmu
555
556build-trace-ust-system:
557 <<: *native_build_job_definition
558 variables:
559 IMAGE: ubuntu2004
560 CONFIGURE_ARGS: --enable-trace-backends=ust --target-list=x86_64-softmmu
1f475472 561
3fed93f3
AB
562# Check our reduced build configurations
563build-without-default-devices:
564 <<: *native_build_job_definition
565 variables:
566 IMAGE: centos8
567 CONFIGURE_ARGS: --without-default-devices --disable-user
568
53f41245
AB
569build-without-default-features:
570 <<: *native_build_job_definition
571 variables:
572 IMAGE: debian-amd64
573 CONFIGURE_ARGS: --without-default-features --disable-user
574 MAKE_CHECK_ARGS: check-unit
575
1f475472
DB
576check-patch:
577 stage: build
578 image: $CI_REGISTRY_IMAGE/qemu/centos8:latest
579 script: .gitlab-ci.d/check-patch.py
580 except:
581 variables:
582 - $CI_PROJECT_NAMESPACE == 'qemu-project' && $CI_COMMIT_BRANCH == 'master'
583 variables:
584 GIT_DEPTH: 1000
585 allow_failure: true
34ed46a2
DB
586
587check-dco:
588 stage: build
589 image: $CI_REGISTRY_IMAGE/qemu/centos8:latest
590 script: .gitlab-ci.d/check-dco.py
591 except:
592 variables:
593 - $CI_PROJECT_NAMESPACE == 'qemu-project' && $CI_COMMIT_BRANCH == 'master'
594 variables:
595 GIT_DEPTH: 1000
4daa9055 596
c4698e36
MAL
597build-libvhost-user:
598 stage: build
599 image: $CI_REGISTRY_IMAGE/qemu/fedora:latest
600 before_script:
601 - dnf install -y meson ninja-build
602 script:
603 - mkdir subprojects/libvhost-user/build
604 - cd subprojects/libvhost-user/build
605 - meson
606 - ninja
607
a8a3abe0
AB
608# Prepare for GitLab pages deployment. Anything copied into the
609# "public" directory will be deployed to $USER.gitlab.io/$PROJECT
4daa9055 610pages:
a8a3abe0 611 image: $CI_REGISTRY_IMAGE/qemu/debian-amd64:latest
4daa9055
DB
612 stage: test
613 needs:
a8a3abe0 614 - job: build-tools-and-docs-debian
4daa9055 615 script:
a8a3abe0
AB
616 - mkdir -p public
617 # HTML-ised source tree
618 - make gtags
619 - htags -anT --tree-view=filetree -m qemu_init
620 -t "Welcome to the QEMU sourcecode"
621 - mv HTML public/src
622 # Project documentation
4daa9055
DB
623 - mv build/docs/index.html public/
624 - for i in devel interop specs system tools user ; do mv build/docs/$i public/ ; done
625 artifacts:
626 paths:
627 - public