1
0
Fork 0
android_external_drm_hwcomp.../.gitlab-ci.yml
Deborah Brouwer a4777dbf87 drm_hwcomposer: CI: Add vts job for multi-displays
Currently VtsHalGraphicsComposer3_TargetTest is run only with a single
display. Use the configurable vkms driver to run vts with multiple
displays.

This job should help to catch errors that arise only when there are
multiple displays. It also allows the test
ConnectedDisplaysTest.IndependentConfigChange to run whereas it is
otherwise skipped for single display configurations.

Signed-off-by: Deborah Brouwer <deborah.brouwer@collabora.com>
2025-09-17 16:41:25 -07:00

182 lines
3.5 KiB
YAML

workflow:
rules:
- if: $CI_PIPELINE_SOURCE == "push" && $CI_OPEN_MERGE_REQUESTS
when: never
- when: always
variables:
ANDROID_BRANCH: android16-release
ANDROID_SDK_VERSION: 36
DEBIAN_FRONTEND: noninteractive
CI_TEMPLATES_COMMIT: &ci-templates-commit 32afe5644697e503af18a736587c8619fa036a72
FDO_UPSTREAM_REPO: "drm-hwcomposer/drm-hwcomposer"
CUTTLEFISH_TARBALL: "cuttlefish.tar.xz"
ANDROID_TOOLS_TARBALL: "android_tools.tar.xz"
TOOLS_DIR: "android-tools"
BINARIES_DIR: "android-binaries"
RESULTS_DIR: "${CI_PROJECT_DIR}/results"
include:
- project: 'freedesktop/ci-templates'
ref: *ci-templates-commit
file:
- '/templates/debian.yml'
- '/templates/ubuntu.yml'
- local: '.ci/.gitlab-ci.yml'
- local: '.ci/image-tags.yml'
stages:
- container
- build
- tidy
- style
- android
build_arm64:
stage: build
extends:
.use-ubuntu/x86_64_aospless
script:
.ci/build-arm64.sh
artifacts:
paths:
- "${CI_PROJECT_DIR}/install/arm64"
expire_in: 1 week
build_x86_64:
stage: build
extends:
.use-ubuntu/x86_64_aospless
script:
"${CI_PROJECT_DIR}/.ci/build-x86_64.sh"
artifacts:
paths:
- "${CI_PROJECT_DIR}/install/x86_64"
expire_in: 1 week
tidy:
stage: tidy
extends:
.use-ubuntu/x86_64_aospless
script:
- cp -r /aospless_arm64 ../aospless
- make -j$(nproc) -k -f "${CI_PROJECT_DIR}/.ci/Makefile"
checkstyle:
stage: style
extends:
.use-ubuntu/x86_64_aospless
script: "./.ci/.gitlab-ci-checkcommit.sh"
artifacts:
when: on_failure
untracked: true
tags:
- placeholder-job
android-cts:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/cts-runner.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm
android-vts:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/android-vts.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm
vkms-hotplugs:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/vkms-hotplugs.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm
vts-multi-display:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/multi-display.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm
vts-headless:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/headless.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm
vts-writeback:
stage: android
extends:
.use-ubuntu/x86_64_android
script:
- "${CI_PROJECT_DIR}/.ci/android/writeback.sh"
needs:
- job: build_x86_64
artifacts: true
- job: ubuntu/x86_64_android
artifacts:
paths:
- "${RESULTS_DIR}"
when: always
expire_in: 1 week
tags:
- kvm