variables:
  FDO_UPSTREAM_REPO: mesa/mesa

include:
  - project: 'freedesktop/ci-templates'
    ref: 59de540b620c45739871d1a073d76d5521989d11
    file: '/templates/debian.yml'
  - local: '.gitlab-ci/lava-gitlab-ci.yml'
  - local: '.gitlab-ci/test-source-dep.yml'

stages:
  - deploy
  - container
  - container-2
  - meson-x86_64
  - scons
  - meson-misc
  - llvmpipe
  - softpipe
  - freedreno
  - panfrost
  - radv
  - lima
  - virgl
  - success

pages:
  image: alpine
  stage: deploy
  script:
  - apk --no-cache add py3-pip
  - pip3 install sphinx sphinx_rtd_theme
  - sphinx-build -b html docs public
  artifacts:
    paths:
    - public
  only:
  - master

# When to automatically run the CI
.ci-run-policy:
  rules:
    # If any files affecting the pipeline are changed, build/test jobs run
    # automatically once all dependency jobs have passed
    - changes: &all_paths
      - VERSION
      - bin/git_sha1_gen.py
      - bin/install_megadrivers.py
      - bin/meson_get_version.py
      - bin/symbols-check.py
      # GitLab CI
      - .gitlab-ci.yml
      - .gitlab-ci/**/*
      # Meson
      - meson*
      - build-support/**/*
      - subprojects/**/*
      # SCons
      - SConstruct
      - scons/**/*
      - common.py
      # Source code
      - include/**/*
      - src/**/*
      when: on_success
    # Otherwise, build/test jobs won't run
    - when: never
  retry:
    max: 2
    when:
      - runner_system_failure
  # Cancel CI run if a newer commit is pushed to the same branch
  interruptible: true

success:
  stage: success
  image: debian:stable-slim
  only:
    - merge_requests
  except:
    changes:
      *all_paths
  variables:
    GIT_STRATEGY: none
  script:
    - echo "Dummy job to make sure every merge request pipeline runs at least one job"


.ci-deqp-artifacts:
  artifacts:
    name: "mesa_${CI_JOB_NAME}"
    when: always
    untracked: false
    paths:
      # Watch out!  Artifacts are relative to the build dir.
      # https://gitlab.com/gitlab-org/gitlab-ce/commit/8788fb925706cad594adf6917a6c5f6587dd1521
      - artifacts

# Build the CI docker images.
#
# FDO_DISTRIBUTION_TAG is the tag of the docker image used by later stage jobs. If the
# image doesn't exist yet, the container stage job generates it.
#
# In order to generate a new image, one should generally change the tag.
# While removing the image from the registry would also work, that's not
# recommended except for ephemeral images during development: Replacing
# an image after a significant amount of time might pull in newer
# versions of gcc/clang or other packages, which might break the build
# with older commits using the same tag.
#
# After merging a change resulting in generating a new image to the
# main repository, it's recommended to remove the image from the source
# repository's container registry, so that the image from the main
# repository's registry will be used there as well.

.container:
  stage: container
  extends:
    - .ci-run-policy
  rules:
    # Run pipeline by default if it was triggered by Marge Bot, is for a
    # merge request, and any files affecting it were changed
    - if: '$GITLAB_USER_LOGIN == "marge-bot" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME == $CI_COMMIT_REF_NAME'
      changes:
        *all_paths
      when: on_success
    # Run pipeline by default in the main project if any files affecting it were
    # changed
    - if: '$CI_PROJECT_PATH == "mesa/mesa"'
      changes:
        *all_paths
      when: on_success
    # Allow triggering jobs manually for MRs or branches of forked projects if
    # any files affecting the pipeline were changed
    - changes:
        *all_paths
      when: manual
    # Otherwise, container jobs won't run
    - when: never
  variables:
    FDO_DISTRIBUTION_VERSION: buster-slim
    FDO_REPO_SUFFIX: "debian/$CI_JOB_NAME"
    FDO_DISTRIBUTION_EXEC: 'bash .gitlab-ci/container/${CI_JOB_NAME}.sh'
    # no need to pull the whole repo to build the container image
    GIT_STRATEGY: none

# Debian 10 based x86 build image base
x86_build-base:
  extends:
    - .fdo.container-build@debian
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build-base "2020-06-12"

.use-x86_build-base:
  extends:
    - x86_build-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *x86_build-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_build-base:$BASE_TAG"
  needs:
    - x86_build-base

# Debian 10 based x86 main build image
x86_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build "2020-06-02"

.use-x86_build:
  variables:
    TAG: *x86_build
  image: "$CI_REGISTRY_IMAGE/debian/x86_build:$TAG"
  needs:
    - x86_build-base
    - x86_build

# Debian 10 based i386 cross-build image
i386_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &i386_build "2020-06-02"

.use-i386_build:
  variables:
    TAG: *i386_build
  image: "$CI_REGISTRY_IMAGE/debian/i386_build:$TAG"
  needs:
    - x86_build-base
    - i386_build

# Debian 10 based ppc64el cross-build image
ppc64el_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &ppc64el_build "2020-06-02"

.use-ppc64el_build:
  variables:
    TAG: *ppc64el_build
  image: "$CI_REGISTRY_IMAGE/debian/ppc64el_build:$TAG"
  needs:
    - x86_build-base
    - ppc64el_build

# Debian 10 based s390x cross-build image
s390x_build:
  extends:
    - .use-x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &s390x_build "2020-06-02"

.use-s390x_build:
  variables:
    TAG: *s390x_build
  image: "$CI_REGISTRY_IMAGE/debian/s390x_build:$TAG"
  needs:
    - x86_build-base
    - s390x_build

# Debian 10 based x86 test image base
x86_test-base:
  extends: x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-base "2020-06-02"

.use-x86_test-base:
  extends:
    - x86_build-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *x86_test-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/x86_test-base:$BASE_TAG"
  needs:
    - x86_test-base

# Debian 10 based x86 test image for GL
x86_test-gl:
  extends: .use-x86_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-gl "2020-06-23-virgl"

# Debian 10 based x86 test image for VK
x86_test-vk:
  extends: .use-x86_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_test-vk "2020-06-18-vkcts"

# Debian 9 based x86 build image (old LLVM)
x86_build_old:
  extends: x86_build-base
  variables:
    FDO_DISTRIBUTION_TAG: &x86_build_old "2020-06-12"
    FDO_DISTRIBUTION_VERSION: stretch-slim

.use-x86_build_old:
  variables:
    TAG: *x86_build_old
  image: "$CI_REGISTRY_IMAGE/debian/x86_build_old:$TAG"
  needs:
    - x86_build_old

# Debian 10 based ARM build image
arm_build:
  extends:
    - .fdo.container-build@debian@arm64v8
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &arm_build "2020-06-22-tracie"

.use-arm_build:
  variables:
    TAG: *arm_build
  image: "$CI_REGISTRY_IMAGE/debian/arm_build:$TAG"
  needs:
    - arm_build

# Debian 10 based x86 baremetal image base
arm_test-base:
  extends:
    - .fdo.container-build@debian
    - .container
  variables:
    FDO_DISTRIBUTION_TAG: &arm_test-base "2020-06-22-tracie"

.use-arm_test-base:
  extends:
    - arm_test-base
    - .ci-run-policy
  stage: container-2
  variables:
    BASE_TAG: *arm_test-base
    FDO_BASE_IMAGE: "$CI_REGISTRY_IMAGE/debian/arm_test-base:$BASE_TAG"
  needs:
    - arm_test-base

# x86 image with ARM64 rootfs for baremetal testing.
arm64_test:
  extends:
    - .use-arm_test-base
  variables:
    FDO_DISTRIBUTION_TAG: &arm64_test "2020-06-22-tracie"

.use-arm64_test:
  variables:
    TAG: *arm64_test
  image: "$CI_REGISTRY_IMAGE/debian/arm64_test:$TAG"
  needs:
    - arm_test-base
    - arm64_test

# Native Windows docker builds
#
# Unlike the above Linux-based builds - including MinGW/SCons builds which
# cross-compile for Windows - which use the freedesktop ci-templates, we
# cannot use the same scheme here. As Windows lacks support for
# Docker-in-Docker, and Podman does not run natively on Windows, we have
# to open-code much of the same ourselves.
#
# This is achieved by first running in a native Windows shell instance
# (host PowerShell) in the container stage to build and push the image,
# then in the build stage by executing inside Docker.

.windows-docker-vs2019:
  variables:
    WINDOWS_TAG: "2020-05-05-llvm"
    WINDOWS_IMAGE: "$CI_REGISTRY_IMAGE/windows/x64_build:$WINDOWS_TAG"
    WINDOWS_UPSTREAM_IMAGE: "$CI_REGISTRY/$FDO_UPSTREAM_REPO/windows/x64_build:$WINDOWS_TAG"

windows_build_vs2019:
  extends:
    - .container
    - .windows-docker-vs2019
  stage: container
  variables:
    GIT_STRATEGY: fetch # we do actually need the full repository though
  timeout: 4h # LLVM takes ages
  tags:
    - windows
    - shell
    - "1809"
    - mesa
  script:
    - .\.gitlab-ci\windows\mesa_container.ps1 $CI_REGISTRY $CI_REGISTRY_USER $CI_REGISTRY_PASSWORD $WINDOWS_IMAGE $WINDOWS_UPSTREAM_IMAGE

.use-windows_build_vs2019:
  extends: .windows-docker-vs2019
  image: "$WINDOWS_IMAGE"
  needs:
    - windows_build_vs2019

# BUILD

# Shared between windows and Linux
.build-common:
  extends: .ci-run-policy
  artifacts:
    name: "mesa_${CI_JOB_NAME}"
    when: always
    paths:
      - _build/meson-logs/*.txt
      # scons:
      - build/*/config.log
      - shader-db

# Just Linux
.build-linux:
  extends: .build-common
  variables:
    CCACHE_COMPILERCHECK: "content"
    CCACHE_COMPRESS: "true"
    CCACHE_DIR: /cache/mesa/ccache
  # Use ccache transparently, and print stats before/after
  before_script:
    - export PATH="/usr/lib/ccache:$PATH"
    - export CCACHE_BASEDIR="$PWD"
    - ccache --show-stats
  after_script:
    - ccache --show-stats

.build-windows:
  extends: .build-common
  tags:
    - windows
    - docker
    - "1809"
    - mesa
  cache:
    key: ${CI_JOB_NAME}
    paths:
      - subprojects/packagecache

.meson-build:
  extends:
    - .build-linux
    - .use-x86_build
  stage: meson-x86_64
  variables:
    LLVM_VERSION: 9
  script:
    - .gitlab-ci/meson-build.sh

.scons-build:
  extends:
    - .build-linux
    - .use-x86_build
  stage: scons
  variables:
    SCONSFLAGS: "-j4"
  script:
    - .gitlab-ci/scons-build.sh

meson-testing:
  extends:
    - .meson-build
    - .ci-deqp-artifacts
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11,drm,surfaceless
    GALLIUM_ST: >
      -D dri3=enabled
    GALLIUM_DRIVERS: "swrast,virgl"
    VULKAN_DRIVERS: amd
    BUILDTYPE: "debugoptimized"
    EXTRA_OPTION: >
      -D werror=true
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-gallium:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11,wayland,drm,surfaceless
    GALLIUM_ST: >
      -D dri3=enabled
      -D gallium-extra-hud=true
      -D gallium-vdpau=enabled
      -D gallium-xvmc=enabled
      -D gallium-omx=bellagio
      -D gallium-va=enabled
      -D gallium-xa=enabled
      -D gallium-nine=true
      -D gallium-opencl=disabled
    GALLIUM_DRIVERS: "iris,nouveau,kmsro,r300,r600,freedreno,swr,swrast,svga,v3d,vc4,virgl,etnaviv,panfrost,lima,zink"
    EXTRA_OPTION: >
      -D osmesa=gallium
      -D tools=all
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/run-shader-db.sh

meson-classic:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=dri
      -D gbm=enabled
      -D egl=enabled
      -D platforms=x11,wayland,drm,surfaceless
    DRI_DRIVERS: "auto"
    EXTRA_OPTION: >
      -D osmesa=classic
      -D tools=all

.meson-cross:
  extends:
    - .meson-build
  stage: meson-misc
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D gbm=disabled
      -D egl=enabled
      -D platforms=surfaceless
      -D osmesa=none
    GALLIUM_ST: >
      -D dri3=disabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
    LLVM_VERSION: "8"

.meson-arm:
  extends:
    - .meson-cross
    - .use-arm_build
  variables:
    VULKAN_DRIVERS: freedreno
    GALLIUM_DRIVERS: "etnaviv,freedreno,kmsro,lima,nouveau,panfrost,swrast,tegra,v3d,vc4"
    BUILDTYPE: "debugoptimized"
  tags:
    - aarch64

meson-armhf:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    CROSS: armhf
    LLVM_VERSION: "7"
    EXTRA_OPTION: >
      -D llvm=disabled
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-arm64:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    VULKAN_DRIVERS: "freedreno"
    EXTRA_OPTION: >
      -D llvm=disabled
  script:
    - .gitlab-ci/meson-build.sh
    - .gitlab-ci/prepare-artifacts.sh

meson-arm64-build-test:
  extends:
    - .meson-arm
    - .ci-deqp-artifacts
  variables:
    VULKAN_DRIVERS: "amd"
  script:
    - .gitlab-ci/meson-build.sh

meson-clang:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glvnd=true
    DRI_DRIVERS: "auto"
    GALLIUM_DRIVERS: "auto"
    VULKAN_DRIVERS: intel,amd,freedreno
    CC: "ccache clang-9"
    CXX: "ccache clang++-9"

.meson-windows-vs2019:
  extends:
    - .build-windows
    - .use-windows_build_vs2019
  stage: meson-misc
  script:
    - . .\.gitlab-ci\windows\mesa_build.ps1

scons-win64:
  extends: .scons-build
  variables:
    SCONS_TARGET: platform=windows machine=x86_64 debug=1
    SCONS_CHECK_COMMAND: "true"
  allow_failure: true

meson-clover:
  extends: .meson-build
  variables:
    UNWIND: "enabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D egl=disabled
      -D gbm=disabled
    GALLIUM_DRIVERS: "r600,radeonsi"
    GALLIUM_ST: >
      -D dri3=disabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
      -D gallium-opencl=icd
  script:
    - .gitlab-ci/meson-build.sh
    - LLVM_VERSION=8 .gitlab-ci/meson-build.sh

meson-clover-old-llvm:
  extends:
    - meson-clover
    - .use-x86_build_old
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D egl=disabled
      -D gbm=disabled
      -D platforms=drm,surfaceless
    GALLIUM_DRIVERS: "i915,r600"
  script:
    - LLVM_VERSION=3.9 .gitlab-ci/meson-build.sh
    - LLVM_VERSION=4.0 .gitlab-ci/meson-build.sh
    - LLVM_VERSION=5.0 .gitlab-ci/meson-build.sh
    - LLVM_VERSION=6.0 .gitlab-ci/meson-build.sh
    - LLVM_VERSION=7 .gitlab-ci/meson-build.sh

meson-vulkan:
  extends: .meson-build
  variables:
    UNWIND: "disabled"
    DRI_LOADERS: >
      -D glx=disabled
      -D gbm=disabled
      -D egl=disabled
      -D platforms=x11,wayland,drm
      -D osmesa=none
    GALLIUM_ST: >
      -D dri3=enabled
      -D gallium-vdpau=disabled
      -D gallium-xvmc=disabled
      -D gallium-omx=disabled
      -D gallium-va=disabled
      -D gallium-xa=disabled
      -D gallium-nine=false
      -D gallium-opencl=disabled
      -D b_sanitize=undefined
      -D c_args=-fno-sanitize-recover=all
      -D cpp_args=-fno-sanitize-recover=all
    UBSAN_OPTIONS: "print_stacktrace=1"
    VULKAN_DRIVERS: intel,amd,freedreno
    EXTRA_OPTION: >
      -D vulkan-overlay-layer=true
      -D werror=true

meson-i386:
  extends:
    - .meson-cross
    - .use-i386_build
  variables:
    CROSS: i386
    VULKAN_DRIVERS: intel,amd
    GALLIUM_DRIVERS: "iris,r300,radeonsi,swrast,virgl"
    EXTRA_OPTION: >
      -D vulkan-overlay-layer=true
      -D werror=true

meson-s390x:
  extends:
    - .meson-cross
    - .use-s390x_build
  tags:
    - kvm
  variables:
    CROSS: s390x
    EXTRA_OPTION: >
      -D werror=true
    GALLIUM_DRIVERS: "swrast"

meson-ppc64el:
  extends:
    - meson-s390x
    - .use-ppc64el_build
  variables:
    CROSS: ppc64el
    EXTRA_OPTION: ""
    GALLIUM_DRIVERS: "nouveau,radeonsi,swrast,virgl"
    VULKAN_DRIVERS: "amd"

meson-mingw32-x86_64:
  extends: .meson-build
  stage: meson-misc
  variables:
    UNWIND: "disabled"
    DRI_DRIVERS: ""
    GALLIUM_DRIVERS: "swrast"
    EXTRA_OPTION: >
      -Dllvm=disabled
      -Dosmesa=gallium
      --cross-file=.gitlab-ci/x86_64-w64-mingw32

.test:
  extends:
    - .ci-run-policy
  variables:
    GIT_STRATEGY: none # testing doesn't build anything from source
  before_script:
    # Note: Build dir (and thus install) may be dirty due to GIT_STRATEGY
    - rm -rf install
    - tar -xf artifacts/install.tar
    - LD_LIBRARY_PATH=install/lib find install/lib -name "*.so" -print -exec ldd {} \;
  artifacts:
    when: always
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/

.test-gl:
  extends:
    - .test
  variables:
    TAG: *x86_test-gl
  image: "$CI_REGISTRY_IMAGE/debian/x86_test-gl:$TAG"
  needs:
    - x86_build-base
    - x86_build
    - meson-testing
    - x86_test-base
    - x86_test-gl
  dependencies:
    - meson-testing

.test-vk:
  extends:
    - .test
  variables:
    TAG: *x86_test-vk
  image: "$CI_REGISTRY_IMAGE/debian/x86_test-vk:$TAG"
  needs:
    - x86_build-base
    - x86_build
    - meson-testing
    - x86_test-base
    - x86_test-vk
  dependencies:
    - meson-testing

.piglit-test:
  extends:
    - .test-gl
    - .llvmpipe-rules
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - summary/
  variables:
    LIBGL_ALWAYS_SOFTWARE: 1
    PIGLIT_NO_WINDOW: 1
  script:
    - install/piglit/run.sh

piglit-quick_gl:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 0
    NIR_VALIDATE: 0
    PIGLIT_OPTIONS: >
      --process-isolation false
      -x arb_gpu_shader5
      -x egl_ext_device_
      -x egl_ext_platform_device
      -x ext_timer_query@time-elapsed
      -x glx-multithread-clearbuffer
      -x glx-multithread-shader-compile
      -x max-texture-size
      -x maxsize
    PIGLIT_PROFILES: quick_gl

piglit-glslparser:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 0
    NIR_VALIDATE: 0
    PIGLIT_PROFILES: glslparser

piglit-quick_shader:
  extends: .piglit-test
  variables:
    LP_NUM_THREADS: 1
    NIR_VALIDATE: 0
    PIGLIT_PROFILES: quick_shader

.deqp-test:
  variables:
    DEQP_SKIPS: deqp-default-skips.txt
  script:
    - ./install/deqp-runner.sh

.deqp-test-gl:
  extends:
    - .test-gl
    - .deqp-test

.deqp-test-vk:
  extends:
    - .test-vk
    - .deqp-test
  variables:
    DEQP_VER: vk

.fossilize-test:
  extends: .test-vk
  script:
    - ./install/fossilize-runner.sh
  artifacts:
    when: on_failure
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/

llvmpipe-gles2:
  variables:
    DEQP_VER: gles2
    DEQP_PARALLEL: 4
    NIR_VALIDATE: 0
    # Don't use threads inside llvmpipe, we've already got all 4 cores
    # busy with DEQP_PARALLEL.
    LP_NUM_THREADS: 0
    DEQP_EXPECTED_FAILS: deqp-llvmpipe-fails.txt
    LIBGL_ALWAYS_SOFTWARE: "true"
    DEQP_EXPECTED_RENDERER: llvmpipe
  extends:
    - .deqp-test-gl
    - .llvmpipe-rules

softpipe-gles2:
  extends:
    - llvmpipe-gles2
    - .softpipe-rules
  variables:
    DEQP_EXPECTED_FAILS: deqp-softpipe-fails.txt
    DEQP_SKIPS: deqp-softpipe-skips.txt
    GALLIUM_DRIVER: "softpipe"
    DEQP_EXPECTED_RENDERER: softpipe

softpipe-gles3:
  parallel: 2
  variables:
    DEQP_VER: gles3
  extends: softpipe-gles2

softpipe-gles31:
  parallel: 4
  variables:
    DEQP_VER: gles31
  extends: softpipe-gles2

virgl-gles2-on-gl:
  variables:
    DEQP_VER: gles2
    DEQP_PARALLEL: 4
    NIR_VALIDATE: 0
    DEQP_NO_SAVE_RESULTS: 1
    # Don't use threads inside llvmpipe, we've already got all 4 cores
    # busy with DEQP_PARALLEL.
    LP_NUM_THREADS: 0
    DEQP_EXPECTED_FAILS: deqp-virgl-gl-fails.txt
    DEQP_OPTIONS: "--deqp-log-images=disable"
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "virpipe"
    DEQP_EXPECTED_RENDERER: virgl
  extends:
    - .deqp-test-gl
    - .virgl-rules

virgl-gles3-on-gl:
  parallel: 2
  variables:
    DEQP_VER: gles3
    DEQP_RUNNER_OPTIONS: "--timeout 180"
  extends: virgl-gles2-on-gl

virgl-gles31-on-gl:
  parallel: 4
  variables:
    DEQP_VER: gles31
    MESA_GLES_VERSION_OVERRIDE: "3.1"
    MESA_GLSL_VERSION_OVERRIDE: "310"
    MESA_EXTENSION_OVERRIDE: "-GL_OES_tessellation_shader"
  extends: virgl-gles3-on-gl

virgl-gl30-on-gl:
  variables:
    DEQP_VER: gl30
  extends: virgl-gles2-on-gl

virgl-gl31-on-gl:
  variables:
    DEQP_VER: gl31
  extends: virgl-gles2-on-gl

virgl-gl32-on-gl:
  variables:
    DEQP_VER: gl32
  extends: virgl-gles2-on-gl

# Rules for tests that should not be present in MRs or the main
# project's pipeline (don't block marge or report red on
# mesa/mesamaster) but should be present on pipelines in personal
# branches (so you can opt in to running the flaky test when you want
# to).
.test-manual:
  rules:
    - if: '$CI_PROJECT_PATH != "mesa/mesa" && $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME != $CI_COMMIT_REF_NAME'
      changes:
        *all_paths
      when: manual
    - when: never

virgl-gles2-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles2-on-gl
    - .test-manual

virgl-gles3-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles3-on-gl
    - .test-manual

virgl-gles31-on-gles:
  variables:
    VIRGL_HOST_API: GLES
    DEQP_EXPECTED_FAILS: deqp-virgl-gles-fails.txt
  extends:
    - virgl-gles31-on-gl
    - .test-manual

arm64_a630_gles2:
  extends:
    - arm64_a306_gles2
  variables:
    BM_KERNEL: /lava-files/cheza-kernel
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 root=/dev/nfs rw nfsrootdebug nfsroot=,tcp,nfsvers=4.2 init=/init"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-fails.txt
    DEQP_SKIPS: deqp-freedreno-a630-skips.txt
    GIT_STRATEGY: none
    DEQP_EXPECTED_RENDERER: FD630
    DEQP_NO_SAVE_RESULTS: ""
  tags:
    - google-freedreno-cheza
  script:
    - ./install/bare-metal/cros-servo.sh

arm64_a630_gles31:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: gles31
    # gles31 is about 12 minutes with validation enabled.
    NIR_VALIDATE: 0

arm64_a630_gles3:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: gles3
    # gles3 is about 15 minutes with validation enabled.
    NIR_VALIDATE: 0

# We almost always manage to lower UBOs back to constant uploads in
# the test suite, so get a little testing for it here.
arm64_a630_noubo:
  extends: arm64_a630_gles31
  variables:
    DEQP_VER: gles31
    IR3_SHADER_DEBUG: nouboopt
    DEQP_CASELIST_FILTER: "functional.*ubo"

# The driver does some guessing as to whether to render using gmem
# or bypass, and some GLES3.1 features interact with either one.
# Do a little testing with gmem and bypass forced.
arm64_a630_bypass:
  extends: arm64_a630_gles31
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 5
    FD_MESA_DEBUG: nogmem
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt

arm64_a630_traces:
  extends:
    - arm64_a630_gles2
  variables:
    BARE_METAL_TEST_SCRIPT: "/install/tracie-runner-gl.sh"
    DEVICE_NAME: "freedreno-a630"
    TRACIE_NO_UNIT_TESTS: 1
    # This lets us run several more traces which don't use any features we're
    # missing.
    MESA_GLSL_VERSION_OVERRIDE: "460"
    MESA_GL_VERSION_OVERRIDE: "4.6"

# Along with checking gmem path, check that we don't get obvious nir
# validation failures (though it's too expensive to have it on for the
# full CTS)
arm64_a630_gmem:
  extends: arm64_a630_gles31
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 5
    FD_MESA_DEBUG: nobypass
    NIR_VALIDATE: 1

arm64_a630_vk:
  extends: arm64_a630_gles2
  variables:
    DEQP_VER: vk
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 50
    VK_DRIVER: freedreno
    # Force binning in the main run, which makes sure we render at
    # least 2 bins.  This is the path that impacts the most different
    # features.  However, we end up with flaky results in
    # dEQP-VK.binding_model.*.geometry and dEQP-VK.glsl.*_vertex.
    TU_DEBUG: forcebin

# Do a separate sysmem pass over the testcases that really affect sysmem
# rendering.  This is currently very flaky, leave it as an option for devs
# to click play on in their branches.
arm64_a630_vk_sysmem:
  extends:
    - arm64_a630_vk
  variables:
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 10
    DEQP_CASELIST_FILTER: "dEQP-VK.renderpass.*"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a630-bypass-fails.txt
    TU_DEBUG: sysmem

.baremetal-test:
  extends:
    - .ci-run-policy
    - .test
  stage: test
  artifacts:
    when: always
    name: "mesa_${CI_JOB_NAME}"
    paths:
      - results/
      - serial*.txt

arm64_a306_gles2:
  extends:
    - .baremetal-test
    - .use-arm64_test
    - .freedreno-rules
  variables:
    BM_KERNEL: /lava-files/Image.gz
    BM_DTB: /lava-files/apq8016-sbc.dtb
    BM_ROOTFS: /lava-files/rootfs-arm64
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8"
    FLAKES_CHANNEL: "#freedreno-ci"
    BARE_METAL_TEST_SCRIPT: "/install/deqp-runner.sh"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a307-fails.txt
    DEQP_SKIPS: deqp-freedreno-a307-skips.txt
    DEQP_VER: gles2
    DEQP_PARALLEL: 4
    DEQP_EXPECTED_RENDERER: FD307
    # Since we can't get artifacts back yet, skip making them.
    DEQP_NO_SAVE_RESULTS: 1
    # NIR_VALIDATE=0 left intentionally unset as a3xx is fast enough at its small testsuite.
  script:
    - ./install/bare-metal/fastboot.sh
  needs:
    - arm_test-base
    - arm64_test
    - arm_build
    - meson-arm64
  tags:
    - google-freedreno-db410c

# Fractional run, single threaded, due to flaky results
arm64_a306_gles3:
  extends:
    - arm64_a306_gles2
  variables:
    DEQP_VER: gles3
    DEQP_PARALLEL: 1
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 25
    NIR_VALIDATE: 0

# Fractional runs with debug options.  Note that since we're not
# hitting the iommu faults, we can run in parallel (derive from gles2, not gles3).
arm64_a306_gles3_options:
  extends: arm64_a306_gles2
  variables:
    DEQP_VER: gles3
  script:
    # Check that the non-constbuf UBO case works.
    - DEQP_RUN_SUFFIX=-nouboopt IR3_SHADER_DEBUG=nouboopt DEQP_CASELIST_FILTER="functional.*ubo" ./install/bare-metal/fastboot.sh

arm64_a530_gles2:
  extends:
    - arm64_a306_gles2
  variables:
    BM_KERNEL: /lava-files/db820c-kernel
    BM_DTB: /lava-files/db820c.dtb
    # Disable SMP because only CPU 0 is at a freq higher than 19mhz on
    # current upstream kernel.
    BM_CMDLINE: "ip=dhcp console=ttyMSM0,115200n8 nosmp"
    DEQP_EXPECTED_FAILS: deqp-freedreno-a530-fails.txt
    DEQP_SKIPS: deqp-freedreno-a530-skips.txt
    DEQP_EXPECTED_RENDERER: FD530
    NIR_VALIDATE: 0
  tags:
    - google-freedreno-db820c

arm64_a530_gles3:
  extends:
    - arm64_a530_gles2
  variables:
    DEQP_VER: gles3
    DEQP_PARALLEL: 1
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 40

arm64_a530_gles31:
  extends:
    - arm64_a530_gles3
  variables:
    DEQP_VER: gles31
    CI_NODE_INDEX: 1
    CI_NODE_TOTAL: 10

# RADV CI
.test-radv:
  extends: .radv-rules
  stage: radv
  variables:
    VK_DRIVER: radeon
    ACO_DEBUG: validateir,validatera

# Can only be triggered manually on personal branches because RADV is the only
# driver that does Vulkan testing at the moment.
radv_polaris10_vkcts:
  extends:
    - .deqp-test-vk
    - .test-radv
    - .test-manual
  variables:
    DEQP_SKIPS: deqp-radv-polaris10-skips.txt
  tags:
    - polaris10

radv-fossils:
  extends:
    - .fossilize-test
    - .test-radv
  script:
    # Pitcairn (GFX6)
    - export RADV_FORCE_FAMILY="pitcairn"
    - ./install/fossilize-runner.sh
    # Bonaire (GFX7)
    - export RADV_FORCE_FAMILY="bonaire"
    - ./install/fossilize-runner.sh
    # Polaris10 (GFX8)
    - export RADV_FORCE_FAMILY="polaris10"
    - ./install/fossilize-runner.sh
    # Vega10 (GFX9)
    - export RADV_FORCE_FAMILY="gfx900"
    - ./install/fossilize-runner.sh
    # Navi10 (GFX10)
    - export RADV_FORCE_FAMILY="gfx1010"
    - ./install/fossilize-runner.sh

# Traces CI
.traces-test:
  cache:
    key: ${CI_JOB_NAME}
    paths:
      - traces-db/

.traces-test-gl:
  extends:
    - .test-gl
    - .traces-test
  script:
    - ./install/tracie-runner-gl.sh

.traces-test-vk:
  extends:
    - .test-vk
    - .traces-test
  script:
    - ./install/tracie-runner-vk.sh

llvmpipe-traces:
  extends:
    - .traces-test-gl
    - .llvmpipe-rules
  variables:
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "llvmpipe"
    DEVICE_NAME: "gl-vmware-llvmpipe"

radv-polaris10-traces:
  extends:
    - .traces-test-vk
    - .test-radv
    - .test-manual
  variables:
    DEVICE_NAME: "vk-amd-polaris10"
  tags:
    - polaris10

virgl-traces:
  extends:
    - .traces-test-gl
    - .virgl-rules
  variables:
    LIBGL_ALWAYS_SOFTWARE: "true"
    GALLIUM_DRIVER: "virpipe"
    DEVICE_NAME: "gl-virgl"
    MESA_GLES_VERSION_OVERRIDE: "3.1"
    MESA_GLSL_VERSION_OVERRIDE: "310"
