image: fedora:40

before_script:
 - dnf update -y
 - dnf install -y make python

# By default artifacts are only saved on success. This uses when:always
# because the test logs are important to help diagnose failures.
.intree_template:
 artifacts:
  when: always
  expire_in: 2 days
  when: always
  paths:
   - logs

.outoftree_template:
 artifacts:
  when: always
  expire_in: 2 days
  when: always
  paths:
   - build/logs

build-aarch64:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-aarch64 gcc-aarch64-linux-gnu
 - ./configure --arch=aarch64 --cross-prefix=aarch64-linux-gnu-
 - make -j2
 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh
      cache
      debug-bp
      debug-sstep
      debug-wp
      gicv2-active
      gicv2-ipi
      gicv2-mmio
      gicv3-active
      gicv3-ipi
      its-introspection
      its-trigger
      pci-test
      pmu-cycle-counter
      pmu-event-counter-config
      pmu-sw-incr
      selftest-setup
      selftest-smp
      selftest-vectors-kernel
      selftest-vectors-user
      timer
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-aarch64-efi:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-aarch64 gcc-aarch64-linux-gnu edk2-aarch64
 - ./configure --arch=aarch64 --cross-prefix=aarch64-linux-gnu- --enable-efi --enable-efi-direct
 - make -j2
 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh
      selftest-setup
      selftest-smp
      selftest-vectors-kernel
      selftest-vectors-user
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-aarch64-efi-acpi:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-aarch64 gcc-aarch64-linux-gnu edk2-aarch64
 - ./configure --arch=aarch64 --cross-prefix=aarch64-linux-gnu- --enable-efi --enable-efi-direct
 - make -j2
 - EFI_USE_ACPI=y ACCEL=tcg MAX_SMP=8 ./run_tests.sh
      selftest-setup
      selftest-smp
      selftest-vectors-kernel
      selftest-vectors-user
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-aarch64-clang:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-aarch64 gcc-aarch64-linux-gnu clang
 - mkdir build
 - cd build
 - ../configure --arch=arm64 --cc=clang --cflags='--target=aarch64' --cross-prefix=aarch64-linux-gnu-
 - make -j2
 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh
      cache
      debug-bp
      debug-sstep
      debug-wp
      gicv2-active
      gicv2-ipi
      gicv2-mmio
      gicv3-active
      gicv3-ipi
      its-introspection
      its-trigger
      pci-test
      pmu-cycle-counter
      pmu-event-counter-config
      pmu-sw-incr
      selftest-setup
      selftest-smp
      selftest-vectors-kernel
      selftest-vectors-user
      timer
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-aarch64-clang-efi:
 extends: .intree_template
 script:
 - dnf install -y edk2-aarch64 qemu-system-aarch64 gcc-aarch64-linux-gnu clang
 - ./configure --arch=arm64 --cc=clang --cflags='--target=aarch64' --cross-prefix=aarch64-linux-gnu- --enable-efi --enable-efi-direct
 - make -j2
 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh
      selftest-setup
      selftest-smp
      selftest-vectors-kernel
      selftest-vectors-user
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-arm:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-arm gcc-arm-linux-gnu
 - mkdir build
 - cd build
 - ../configure --arch=arm --cross-prefix=arm-linux-gnu-
 - make -j2
 - ACCEL=tcg MAX_SMP=8 ./run_tests.sh
     selftest-setup selftest-vectors-kernel selftest-vectors-user selftest-smp
     pci-test pmu-cycle-counter gicv2-ipi gicv2-mmio gicv3-ipi gicv2-active
     gicv3-active
     | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-ppc64be:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu nmap-ncat
 - mkdir build
 - cd build
 - ../configure --arch=ppc64 --endian=big --cross-prefix=powerpc64-linux-gnu-
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      selftest-setup
      selftest-migration
      selftest-migration-skip
      spapr_hcall
      rtas-get-time-of-day
      rtas-get-time-of-day-base
      rtas-set-time-of-day
      emulator
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi

build-ppc64le:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-ppc gcc-powerpc64-linux-gnu nmap-ncat
 - ./configure --arch=ppc64 --endian=little --cross-prefix=powerpc64-linux-gnu-
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      selftest-setup
      selftest-migration
      selftest-migration-skip
      spapr_hcall
      rtas-get-time-of-day
      rtas-get-time-of-day-base
      rtas-set-time-of-day
      emulator
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi

build-riscv32:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-riscv gcc-riscv64-linux-gnu
 - mkdir build
 - cd build
 - ../configure --arch=riscv32 --cross-prefix=riscv64-linux-gnu-
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-riscv64:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-riscv gcc-riscv64-linux-gnu
 - ./configure --arch=riscv64 --cross-prefix=riscv64-linux-gnu-
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-riscv64-efi:
 extends: .intree_template
 script:
 - dnf install -y edk2-riscv64 qemu-system-riscv gcc-riscv64-linux-gnu
 - cp /usr/share/edk2/riscv/RISCV_VIRT_CODE.fd .
 - truncate -s 32M RISCV_VIRT_CODE.fd
 - ./configure --arch=riscv64 --cross-prefix=riscv64-linux-gnu- --enable-efi
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-riscv32-clang:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-riscv gcc-riscv64-linux-gnu clang
 - ./configure --arch=riscv32 --cc=clang --cflags='--target=riscv32' --cross-prefix=riscv64-linux-gnu-
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-riscv64-clang:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-riscv gcc-riscv64-linux-gnu clang
 - mkdir build
 - cd build
 - ../configure --arch=riscv64 --cc=clang --cflags='--target=riscv64' --cross-prefix=riscv64-linux-gnu-
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-riscv64-clang-efi:
 extends: .intree_template
 script:
 - dnf install -y edk2-riscv64 qemu-system-riscv gcc-riscv64-linux-gnu clang
 - cp /usr/share/edk2/riscv/RISCV_VIRT_CODE.fd .
 - truncate -s 32M RISCV_VIRT_CODE.fd
 - ./configure --arch=riscv64 --cc=clang --cflags='--target=riscv64' --cross-prefix=riscv64-linux-gnu- --enable-efi
 - make -j2
 - printf "FOO=foo\nBAR=bar\nBAZ=baz\nMVENDORID=0\nMARCHID=0\nMIMPID=0\n" >test-env
 - ACCEL=tcg KVM_UNIT_TESTS_ENV=test-env ./run_tests.sh
      selftest
      sbi
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-s390x:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-s390x gcc-s390x-linux-gnu
 - mkdir build
 - cd build
 - ../configure --arch=s390x --cross-prefix=s390x-linux-gnu-
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      adtl-status-no-vec-no-gs-tcg
      adtl-status-tcg
      cpumodel
      css
      diag10
      diag288
      diag308
      edat
      emulator
      epsw
      exittime
      firq-linear-cpu-ids-tcg
      firq-nonlinear-cpu-ids-tcg
      iep
      intercept
      mvpg
      sck
      sclp-1g
      sclp-3g
      selftest-setup
      sieve
      smp
      stsi
      tprot
      vector
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi

build-x86_64:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-x86 gcc
 - ./configure --arch=x86_64
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      eventinj
      intel_iommu
      ioapic-split
      memory
      pks
      pku
      rdpru
      realmode
      rmap_chain
      setjmp
      sieve
      smap
      smptest
      smptest3
      syscall
      tsc
      umip
      vmexit_cpuid
      vmexit_cr0_wp
      vmexit_cr4_pge
      vmexit_inl_pmtimer
      vmexit_ipi
      vmexit_ipi_halt
      vmexit_mov_from_cr8
      vmexit_mov_to_cr8
      vmexit_ple_round_robin
      vmexit_tscdeadline
      vmexit_tscdeadline_immed
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi

build-i386:
 extends: .outoftree_template
 script:
 - dnf install -y qemu-system-x86 gcc
 - mkdir build
 - cd build
 - ../configure --arch=i386
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      cmpxchg8b
      eventinj
      realmode
      setjmp
      sieve
      smap
      smptest
      smptest3
      taskswitch
      tsc
      umip
      vmexit_cpuid
      vmexit_cr0_wp
      vmexit_cr4_pge
      vmexit_inl_pmtimer
      vmexit_ipi
      vmexit_ipi_halt
      vmexit_mov_from_cr8
      vmexit_mov_to_cr8
      vmexit_ple_round_robin
      vmexit_tscdeadline
      vmexit_tscdeadline_immed
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi

build-clang:
 extends: .intree_template
 script:
 - dnf install -y qemu-system-x86 clang
 - ./configure --arch=x86_64 --cc=clang
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      eventinj
      intel_iommu
      ioapic-split
      memory
      pks
      pku
      rdpru
      rmap_chain
      setjmp
      sieve
      smap
      smptest
      smptest3
      syscall
      tsc
      umip
      vmexit_cpuid
      vmexit_cr0_wp
      vmexit_cr4_pge
      vmexit_inl_pmtimer
      vmexit_ipi
      vmexit_ipi_halt
      vmexit_mov_from_cr8
      vmexit_mov_to_cr8
      vmexit_ple_round_robin
      vmexit_tscdeadline
      vmexit_tscdeadline_immed
      | tee results.txt
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

build-centos8:
 extends: .outoftree_template
 image: centos:8
 before_script:
# CentOS mirrors have changed, these sed scripts fixes the repos.
 - sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/*.repo
 - sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/*.repo
 - sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/*.repo
 - yum update -y
 - yum install -y make qemu-kvm gcc
 script:
 - mkdir build
 - cd build
 - ../configure --arch=x86_64 --disable-pretty-print-stacks
 - make -j2
 - ACCEL=tcg ./run_tests.sh
      eventinj
      intel_iommu
      ioapic-split
      memory
      pks
      pku
      port80
      rdpru
      rmap_chain
      setjmp
      sieve
      smap
      smptest
      smptest3
      syscall
      tsc
      umip
      vmexit_cpuid
      vmexit_cr0_wp
      vmexit_cr4_pge
      vmexit_inl_pmtimer
      vmexit_ipi
      vmexit_ipi_halt
      vmexit_mov_from_cr8
      vmexit_mov_to_cr8
      vmexit_ple_round_robin
      vmexit_tscdeadline
      vmexit_tscdeadline_immed
      | tee results.txt
 - if grep -q FAIL results.txt ; then exit 1 ; fi
 - grep -q PASS results.txt && ! grep -q FAIL results.txt

# Cirrus-CI provides containers with macOS and Linux with KVM enabled,
# so we can test some scenarios there that are not possible with the
# gitlab-CI shared runners. We use the "cirrus-run" container from the
# libvirt project to start the jobs. See the following URL for more
# information how to set up your environment to use these containers:
#
#   https://gitlab.com/libvirt/libvirt/-/blob/v7.0.0/ci/README.rst
#
.cirrus_build_job_template: &cirrus_build_job_definition
 image: registry.gitlab.com/libvirt/libvirt-ci/cirrus-run:latest
 before_script:
  - sed -e "s|[@]CI_REPOSITORY_URL@|$CI_REPOSITORY_URL|g"
        -e "s|[@]CI_COMMIT_REF_NAME@|$CI_COMMIT_REF_NAME|g"
        -e "s|[@]CI_COMMIT_SHA@|$CI_COMMIT_SHA|g"
        < ci/$CI_JOB_NAME.yml > ci/_$CI_JOB_NAME.yml
 script:
  - cirrus-run -v --show-build-log always ci/_$CI_JOB_NAME.yml
 only:
  variables:
   - $CIRRUS_GITHUB_REPO
   - $CIRRUS_API_TOKEN

cirrus-ci-fedora:
 <<: *cirrus_build_job_definition

cirrus-ci-macos-i386:
 <<: *cirrus_build_job_definition

cirrus-ci-macos-x86-64:
 <<: *cirrus_build_job_definition

s390x-kvm:
 extends: .intree_template
 before_script: []
 tags:
  - s390x-z15-vm
 script:
  - ./configure --arch=s390x
  - make -j$(nproc)
  - ACCEL=kvm ./run_tests.sh
      selftest-setup
      selftest-migration-skip
      cmm
      cpumodel
      css
      diag10
      diag288
      diag308
      emulator
      execute
      gs
      iep
      intercept
      migration
      migration-memory
      migration-sck
      migration-skey-parallel
      migration-skey-sequential
      pfmf
      sclp-1g
      sclp-3g
      sie
      sieve
      skrf
      sthyi
      stsi
      vector
      | tee results.txt
  - grep -q PASS results.txt && ! grep -q FAIL results.txt
 only:
  variables:
   - $S390X_Z15_RUNNER_AVAILABLE

check-kerneldoc:
  extends: .intree_template
  stage: build
  image: python:3.10-alpine
  needs: []
  script:
    - ./configure --arch=x86_64
    - make -s check-kerneldoc 2>&1 | tee docwarnings.txt
    - test -z `cat docwarnings.txt`
  before_script:
    - apk -U add bash make perl gcc
  allow_failure: true

check-shellcheck:
  extends: .intree_template
  stage: build
  image: python:3.10-alpine
  needs: []
  script:
    - ./configure --arch=x86_64
    - make -s shellcheck 2>&1 | tee shellcheckwarnings.txt
    - test -z `cat shellcheckwarnings.txt`
  before_script:
    - apk -U add bash make gcc shellcheck
  allow_failure: true

check-patch:
  extends: .intree_template
  stage: build
  image: python:3.10-alpine
  needs: []
  script:
    - scripts/check-patch.py
  before_script:
    - apk -U add git perl
  allow_failure: true
