1bf215546Sopenharmony_ci.test: 2bf215546Sopenharmony_ci # Cancel job if a newer commit is pushed to the same branch 3bf215546Sopenharmony_ci interruptible: true 4bf215546Sopenharmony_ci variables: 5bf215546Sopenharmony_ci GIT_STRATEGY: none # testing doesn't build anything from source 6bf215546Sopenharmony_ci before_script: 7bf215546Sopenharmony_ci - !reference [default, before_script] 8bf215546Sopenharmony_ci # Note: Build dir (and thus install) may be dirty due to GIT_STRATEGY 9bf215546Sopenharmony_ci - rm -rf install 10bf215546Sopenharmony_ci - tar -xf artifacts/install.tar 11bf215546Sopenharmony_ci - echo -e "\e[0Ksection_start:$(date +%s):ldd_section[collapsed=true]\r\e[0KChecking ldd on driver build" 12bf215546Sopenharmony_ci - LD_LIBRARY_PATH=install/lib find install/lib -name "*.so" -print -exec ldd {} \; 13bf215546Sopenharmony_ci - echo -e "\e[0Ksection_end:$(date +%s):ldd_section\r\e[0K" 14bf215546Sopenharmony_ci artifacts: 15bf215546Sopenharmony_ci when: always 16bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 17bf215546Sopenharmony_ci paths: 18bf215546Sopenharmony_ci - results/ 19bf215546Sopenharmony_ci 20bf215546Sopenharmony_ci.test-gl: 21bf215546Sopenharmony_ci extends: 22bf215546Sopenharmony_ci - .test 23bf215546Sopenharmony_ci - .use-debian/x86_test-gl 24bf215546Sopenharmony_ci needs: 25bf215546Sopenharmony_ci - debian/x86_test-gl 26bf215546Sopenharmony_ci - debian-testing 27bf215546Sopenharmony_ci 28bf215546Sopenharmony_ci.test-vk: 29bf215546Sopenharmony_ci extends: 30bf215546Sopenharmony_ci - .test 31bf215546Sopenharmony_ci - .use-debian/x86_test-vk 32bf215546Sopenharmony_ci needs: 33bf215546Sopenharmony_ci - debian-testing 34bf215546Sopenharmony_ci - debian/x86_test-vk 35bf215546Sopenharmony_ci 36bf215546Sopenharmony_ci.test-cl: 37bf215546Sopenharmony_ci extends: 38bf215546Sopenharmony_ci - .test 39bf215546Sopenharmony_ci - .use-debian/x86_test-gl 40bf215546Sopenharmony_ci needs: 41bf215546Sopenharmony_ci - debian/x86_test-gl 42bf215546Sopenharmony_ci - debian-clover-testing 43bf215546Sopenharmony_ci 44bf215546Sopenharmony_ci.vkd3d-proton-test: 45bf215546Sopenharmony_ci artifacts: 46bf215546Sopenharmony_ci when: on_failure 47bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 48bf215546Sopenharmony_ci paths: 49bf215546Sopenharmony_ci - results/vkd3d-proton.log 50bf215546Sopenharmony_ci script: 51bf215546Sopenharmony_ci - ./install/vkd3d-proton/run.sh 52bf215546Sopenharmony_ci 53bf215546Sopenharmony_ci.piglit-test: 54bf215546Sopenharmony_ci artifacts: 55bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 56bf215546Sopenharmony_ci paths: 57bf215546Sopenharmony_ci - results 58bf215546Sopenharmony_ci reports: 59bf215546Sopenharmony_ci junit: results/junit.xml 60bf215546Sopenharmony_ci variables: 61bf215546Sopenharmony_ci PIGLIT_NO_WINDOW: 1 62bf215546Sopenharmony_ci HWCI_TEST_SCRIPT: "/install/piglit/piglit-runner.sh" 63bf215546Sopenharmony_ci script: 64bf215546Sopenharmony_ci - install/piglit/piglit-runner.sh 65bf215546Sopenharmony_ci 66bf215546Sopenharmony_ci.piglit-traces-test: 67bf215546Sopenharmony_ci extends: 68bf215546Sopenharmony_ci - .piglit-test 69bf215546Sopenharmony_ci cache: 70bf215546Sopenharmony_ci key: ${CI_JOB_NAME} 71bf215546Sopenharmony_ci paths: 72bf215546Sopenharmony_ci - replayer-db/ 73bf215546Sopenharmony_ci artifacts: 74bf215546Sopenharmony_ci when: on_failure 75bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 76bf215546Sopenharmony_ci reports: 77bf215546Sopenharmony_ci junit: results/junit.xml 78bf215546Sopenharmony_ci paths: 79bf215546Sopenharmony_ci - results/summary/ 80bf215546Sopenharmony_ci - results/*.txt 81bf215546Sopenharmony_ci variables: 82bf215546Sopenharmony_ci PIGLIT_REPLAY_EXTRA_ARGS: --keep-image --db-path ${CI_PROJECT_DIR}/replayer-db/ --minio_bucket=mesa-tracie-public --jwt-file=${CI_JOB_JWT_FILE} 83bf215546Sopenharmony_ci script: 84bf215546Sopenharmony_ci - install/piglit/piglit-traces.sh 85bf215546Sopenharmony_ci 86bf215546Sopenharmony_ci.deqp-test: 87bf215546Sopenharmony_ci script: 88bf215546Sopenharmony_ci - ./install/deqp-runner.sh 89bf215546Sopenharmony_ci artifacts: 90bf215546Sopenharmony_ci exclude: 91bf215546Sopenharmony_ci - results/*.shader_cache 92bf215546Sopenharmony_ci reports: 93bf215546Sopenharmony_ci junit: results/junit.xml 94bf215546Sopenharmony_ci 95bf215546Sopenharmony_ci.deqp-test-vk: 96bf215546Sopenharmony_ci extends: 97bf215546Sopenharmony_ci - .deqp-test 98bf215546Sopenharmony_ci variables: 99bf215546Sopenharmony_ci DEQP_VER: vk 100bf215546Sopenharmony_ci 101bf215546Sopenharmony_ci.skqp-test: 102bf215546Sopenharmony_ci variables: 103bf215546Sopenharmony_ci HWCI_START_XORG: 1 104bf215546Sopenharmony_ci HWCI_TEST_SCRIPT: "/install/skqp-runner.sh" 105bf215546Sopenharmony_ci 106bf215546Sopenharmony_ci.fossilize-test: 107bf215546Sopenharmony_ci script: 108bf215546Sopenharmony_ci - ./install/fossilize-runner.sh 109bf215546Sopenharmony_ci artifacts: 110bf215546Sopenharmony_ci when: on_failure 111bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 112bf215546Sopenharmony_ci paths: 113bf215546Sopenharmony_ci - results/ 114bf215546Sopenharmony_ci 115bf215546Sopenharmony_ci.baremetal-test: 116bf215546Sopenharmony_ci extends: 117bf215546Sopenharmony_ci - .test 118bf215546Sopenharmony_ci # Cancel job if a newer commit is pushed to the same branch 119bf215546Sopenharmony_ci interruptible: true 120bf215546Sopenharmony_ci before_script: 121bf215546Sopenharmony_ci - !reference [default, before_script] 122bf215546Sopenharmony_ci # Use this instead of gitlab's artifacts download because it hits packet.net 123bf215546Sopenharmony_ci # instead of fd.o. Set FDO_HTTP_CACHE_URI to an http cache for your test lab to 124bf215546Sopenharmony_ci # improve it even more (see https://docs.mesa3d.org/ci/bare-metal.html for 125bf215546Sopenharmony_ci # setup). 126bf215546Sopenharmony_ci - echo -e "\e[0Ksection_start:$(date +%s):artifacts_download[collapsed=true]\r\e[0KDownloading artifacts from minio" 127bf215546Sopenharmony_ci - wget ${FDO_HTTP_CACHE_URI:-}https://${PIPELINE_ARTIFACTS_BASE}/${MINIO_ARTIFACT_NAME}.tar.gz -S --progress=dot:giga -O- | tar -xz 128bf215546Sopenharmony_ci - echo -e "\e[0Ksection_end:$(date +%s):artifacts_download\r\e[0K" 129bf215546Sopenharmony_ci artifacts: 130bf215546Sopenharmony_ci when: always 131bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 132bf215546Sopenharmony_ci paths: 133bf215546Sopenharmony_ci - results/ 134bf215546Sopenharmony_ci - serial*.txt 135bf215546Sopenharmony_ci exclude: 136bf215546Sopenharmony_ci - results/*.shader_cache 137bf215546Sopenharmony_ci reports: 138bf215546Sopenharmony_ci junit: results/junit.xml 139bf215546Sopenharmony_ci 140bf215546Sopenharmony_ci# ARM testing of bare-metal boards attached to an x86 gitlab-runner system 141bf215546Sopenharmony_ci.baremetal-test-armhf: 142bf215546Sopenharmony_ci extends: 143bf215546Sopenharmony_ci - .baremetal-test 144bf215546Sopenharmony_ci - .use-debian/arm_test 145bf215546Sopenharmony_ci variables: 146bf215546Sopenharmony_ci BM_ROOTFS: /rootfs-armhf 147bf215546Sopenharmony_ci MINIO_ARTIFACT_NAME: mesa-armhf 148bf215546Sopenharmony_ci needs: 149bf215546Sopenharmony_ci - debian/arm_test 150bf215546Sopenharmony_ci - job: debian-armhf 151bf215546Sopenharmony_ci artifacts: false 152bf215546Sopenharmony_ci 153bf215546Sopenharmony_ci# ARM64 testing of bare-metal boards attached to an x86 gitlab-runner system 154bf215546Sopenharmony_ci.baremetal-test-arm64: 155bf215546Sopenharmony_ci extends: 156bf215546Sopenharmony_ci - .baremetal-test 157bf215546Sopenharmony_ci - .use-debian/arm_test 158bf215546Sopenharmony_ci variables: 159bf215546Sopenharmony_ci BM_ROOTFS: /rootfs-arm64 160bf215546Sopenharmony_ci MINIO_ARTIFACT_NAME: mesa-arm64 161bf215546Sopenharmony_ci needs: 162bf215546Sopenharmony_ci - debian/arm_test 163bf215546Sopenharmony_ci - job: debian-arm64 164bf215546Sopenharmony_ci artifacts: false 165bf215546Sopenharmony_ci 166bf215546Sopenharmony_ci# ARM64 testing of bare-metal boards attached to an x86 gitlab-runner system, using an asan mesa build 167bf215546Sopenharmony_ci.baremetal-arm64-asan-test: 168bf215546Sopenharmony_ci extends: 169bf215546Sopenharmony_ci - .baremetal-test 170bf215546Sopenharmony_ci - .use-debian/arm_test 171bf215546Sopenharmony_ci variables: 172bf215546Sopenharmony_ci DEQP_RUNNER_OPTIONS: "--env LD_PRELOAD=libasan.so.6:/install/lib/libdlclose-skip.so" 173bf215546Sopenharmony_ci MINIO_ARTIFACT_NAME: mesa-arm64-asan 174bf215546Sopenharmony_ci needs: 175bf215546Sopenharmony_ci - debian/arm_test 176bf215546Sopenharmony_ci - job: debian-arm64-asan 177bf215546Sopenharmony_ci artifacts: false 178bf215546Sopenharmony_ci 179bf215546Sopenharmony_ci.baremetal-deqp-test: 180bf215546Sopenharmony_ci variables: 181bf215546Sopenharmony_ci HWCI_TEST_SCRIPT: "/install/deqp-runner.sh" 182bf215546Sopenharmony_ci FDO_CI_CONCURRENT: 0 # Default to number of CPUs 183bf215546Sopenharmony_ci 184bf215546Sopenharmony_ci.baremetal-skqp-test: 185bf215546Sopenharmony_ci variables: 186bf215546Sopenharmony_ci HWCI_START_XORG: 1 187bf215546Sopenharmony_ci HWCI_TEST_SCRIPT: "/install/skqp-runner.sh" 188bf215546Sopenharmony_ci 189bf215546Sopenharmony_ci# For Valve's bare-metal testing farm jobs. 190bf215546Sopenharmony_ci.b2c-test: 191bf215546Sopenharmony_ci # It would be nice to use ci-templates within Mesa CI for this job's 192bf215546Sopenharmony_ci # image:, but the integration is not possible for the current 193bf215546Sopenharmony_ci # use-case. Within this job, two containers are managed. 1) the 194bf215546Sopenharmony_ci # gitlab runner container from which the job is submitted to the 195bf215546Sopenharmony_ci # DUT, and 2) the test container (e.g. debian/x86_test-vk) within 196bf215546Sopenharmony_ci # which the test cases will run on the DUT. Since ci-templates and 197bf215546Sopenharmony_ci # the associated image setting macros in this file rely on variables 198bf215546Sopenharmony_ci # like FDO_DISTRIBUTION_TAG for *the* image, there is no way to 199bf215546Sopenharmony_ci # depend on more than one image per job. So, the job container is 200bf215546Sopenharmony_ci # built as part of the CI in the boot2container project. 201bf215546Sopenharmony_ci image: registry.freedesktop.org/mupuf/valve-infra/mesa-trigger:2022-03-03.2 202bf215546Sopenharmony_ci timeout: 1h 40m 203bf215546Sopenharmony_ci variables: 204bf215546Sopenharmony_ci # No need by default to pull the whole repo 205bf215546Sopenharmony_ci GIT_STRATEGY: none 206bf215546Sopenharmony_ci # boot2container initrd configuration parameters. 207bf215546Sopenharmony_ci B2C_KERNEL_URL: 'https://gitlab.freedesktop.org/mupuf/valve-infra/-/package_files/144/download' # 5.17.1 208bf215546Sopenharmony_ci B2C_INITRAMFS_URL: 'https://gitlab.freedesktop.org/mupuf/boot2container/-/releases/v0.9.6/downloads/initramfs.linux_amd64.cpio.xz' 209bf215546Sopenharmony_ci B2C_JOB_SUCCESS_REGEX: '\[.*\]: Execution is over, pipeline status: 0\r$' 210bf215546Sopenharmony_ci B2C_JOB_WARN_REGEX: '\*ERROR\* ring .* timeout, but soft recovered' 211bf215546Sopenharmony_ci B2C_LOG_LEVEL: 6 212bf215546Sopenharmony_ci B2C_POWEROFF_DELAY: 15 213bf215546Sopenharmony_ci B2C_SESSION_END_REGEX: '^.*It''s now safe to turn off your computer\r$' 214bf215546Sopenharmony_ci B2C_SESSION_REBOOT_REGEX: '(GPU hang detected!|\*ERROR\* ring [^\s]+ timeout(?!, but soft recovered)|The CS has been cancelled because the context is lost)' 215bf215546Sopenharmony_ci B2C_TIMEOUT_BOOT_MINUTES: 45 216bf215546Sopenharmony_ci B2C_TIMEOUT_BOOT_RETRIES: 1 217bf215546Sopenharmony_ci B2C_TIMEOUT_FIRST_MINUTES: 5 218bf215546Sopenharmony_ci B2C_TIMEOUT_FIRST_RETRIES: 3 219bf215546Sopenharmony_ci B2C_TIMEOUT_MINUTES: 2 220bf215546Sopenharmony_ci B2C_TIMEOUT_OVERALL_MINUTES: 90 221bf215546Sopenharmony_ci B2C_TIMEOUT_RETRIES: 0 222bf215546Sopenharmony_ci 223bf215546Sopenharmony_ci # As noted in the top description, we make a distinction between the 224bf215546Sopenharmony_ci # container used by gitlab-runner to queue the work, and the container 225bf215546Sopenharmony_ci # used by the DUTs/test machines. To make this distinction quite clear, 226bf215546Sopenharmony_ci # we rename the MESA_IMAGE variable into IMAGE_UNDER_TEST. 227bf215546Sopenharmony_ci IMAGE_UNDER_TEST: "$MESA_IMAGE" 228bf215546Sopenharmony_ci 229bf215546Sopenharmony_ci INSTALL_TARBALL_NAME: "install.tar" 230bf215546Sopenharmony_ci INSTALL_TARBALL: "./artifacts/${INSTALL_TARBALL_NAME}" 231bf215546Sopenharmony_ci CI_B2C_ARTIFACTS: "./artifacts/b2c" 232bf215546Sopenharmony_ci CI_COMMON_SCRIPTS: "./artifacts/ci-common" 233bf215546Sopenharmony_ci GENERATE_ENV_SCRIPT: "${CI_COMMON_SCRIPTS}/generate-env.sh" 234bf215546Sopenharmony_ci B2C_JOB_TEMPLATE: "${CI_B2C_ARTIFACTS}/b2c.yml.jinja2.jinja2" 235bf215546Sopenharmony_ci JOB_FOLDER: "job_folder" 236bf215546Sopenharmony_ci before_script: 237bf215546Sopenharmony_ci # We don't want the tarball unpacking of .test, but will take the JWT bits. 238bf215546Sopenharmony_ci - !reference [default, before_script] 239bf215546Sopenharmony_ci - | 240bf215546Sopenharmony_ci set -x 241bf215546Sopenharmony_ci 242bf215546Sopenharmony_ci # Useful as a hook point for runner admins. You may edit the 243bf215546Sopenharmony_ci # config.toml for the Gitlab runner and use a bind-mount to 244bf215546Sopenharmony_ci # populate the hook script with some executable commands. This 245bf215546Sopenharmony_ci # allows quicker feedback than resubmitting pipelines and 246bf215546Sopenharmony_ci # potentially having to wait for a debug build of Mesa to 247bf215546Sopenharmony_ci # complete. 248bf215546Sopenharmony_ci if [ -x /runner-before-script.sh ]; then 249bf215546Sopenharmony_ci echo "Executing runner before-script hook..." 250bf215546Sopenharmony_ci sh /runner-before-script.sh 251bf215546Sopenharmony_ci if [ $? -ne 0 ]; then 252bf215546Sopenharmony_ci echo "Runner hook failed, goodbye" 253bf215546Sopenharmony_ci exit $? 254bf215546Sopenharmony_ci fi 255bf215546Sopenharmony_ci fi 256bf215546Sopenharmony_ci 257bf215546Sopenharmony_ci [ -s "$INSTALL_TARBALL" ] || exit 1 258bf215546Sopenharmony_ci [ -d "$CI_B2C_ARTIFACTS" ] || exit 1 259bf215546Sopenharmony_ci [ -d "$CI_COMMON_SCRIPTS" ] || exit 1 260bf215546Sopenharmony_ci 261bf215546Sopenharmony_ci 262bf215546Sopenharmony_ci B2C_TEST_SCRIPT="bash -c 'source ./set-job-env-vars.sh; tar xf ${INSTALL_TARBALL_NAME}; ${B2C_TEST_SCRIPT}'" 263bf215546Sopenharmony_ci 264bf215546Sopenharmony_ci # The Valve CI gateway receives jobs in a YAML format. Create a 265bf215546Sopenharmony_ci # job description from the CI environment. 266bf215546Sopenharmony_ci python3 "$CI_B2C_ARTIFACTS"/generate_b2c.py \ 267bf215546Sopenharmony_ci --ci-job-id "${CI_JOB_ID}" \ 268bf215546Sopenharmony_ci --container-cmd "${B2C_TEST_SCRIPT}" \ 269bf215546Sopenharmony_ci --initramfs-url "${B2C_INITRAMFS_URL}" \ 270bf215546Sopenharmony_ci --job-success-regex "${B2C_JOB_SUCCESS_REGEX}" \ 271bf215546Sopenharmony_ci --job-warn-regex "${B2C_JOB_WARN_REGEX}" \ 272bf215546Sopenharmony_ci --kernel-url "${B2C_KERNEL_URL}" \ 273bf215546Sopenharmony_ci --log-level "${B2C_LOG_LEVEL}" \ 274bf215546Sopenharmony_ci --poweroff-delay "${B2C_POWEROFF_DELAY}" \ 275bf215546Sopenharmony_ci --session-end-regex "${B2C_SESSION_END_REGEX}" \ 276bf215546Sopenharmony_ci --session-reboot-regex "${B2C_SESSION_REBOOT_REGEX}" \ 277bf215546Sopenharmony_ci --tags "${CI_RUNNER_TAGS}" \ 278bf215546Sopenharmony_ci --template "${B2C_JOB_TEMPLATE}" \ 279bf215546Sopenharmony_ci --timeout-boot-minutes "${B2C_TIMEOUT_BOOT_MINUTES}" \ 280bf215546Sopenharmony_ci --timeout-boot-retries "${B2C_TIMEOUT_BOOT_RETRIES}" \ 281bf215546Sopenharmony_ci --timeout-first-minutes "${B2C_TIMEOUT_FIRST_MINUTES}" \ 282bf215546Sopenharmony_ci --timeout-first-retries "${B2C_TIMEOUT_FIRST_RETRIES}" \ 283bf215546Sopenharmony_ci --timeout-minutes "${B2C_TIMEOUT_MINUTES}" \ 284bf215546Sopenharmony_ci --timeout-overall-minutes "${B2C_TIMEOUT_OVERALL_MINUTES}" \ 285bf215546Sopenharmony_ci --timeout-retries "${B2C_TIMEOUT_RETRIES}" \ 286bf215546Sopenharmony_ci --job-volume-exclusions "${B2C_JOB_VOLUME_EXCLUSIONS}" \ 287bf215546Sopenharmony_ci --local-container "${IMAGE_UNDER_TEST}" \ 288bf215546Sopenharmony_ci ${B2C_EXTRA_VOLUME_ARGS} \ 289bf215546Sopenharmony_ci --working-dir "$CI_PROJECT_DIR" 290bf215546Sopenharmony_ci 291bf215546Sopenharmony_ci cat b2c.yml.jinja2 292bf215546Sopenharmony_ci 293bf215546Sopenharmony_ci rm -rf ${JOB_FOLDER} || true 294bf215546Sopenharmony_ci mkdir -v ${JOB_FOLDER} 295bf215546Sopenharmony_ci # Create a script to regenerate the CI environment when this job 296bf215546Sopenharmony_ci # begins running on the remote DUT. 297bf215546Sopenharmony_ci set +x 298bf215546Sopenharmony_ci "$CI_COMMON_SCRIPTS"/generate-env.sh > ${JOB_FOLDER}/set-job-env-vars.sh 299bf215546Sopenharmony_ci chmod +x ${JOB_FOLDER}/set-job-env-vars.sh 300bf215546Sopenharmony_ci echo "Variables passed through:" 301bf215546Sopenharmony_ci cat ${JOB_FOLDER}/set-job-env-vars.sh 302bf215546Sopenharmony_ci echo "export CI_JOB_JWT=${CI_JOB_JWT}" >> ${JOB_FOLDER}/set-job-env-vars.sh 303bf215546Sopenharmony_ci set -x 304bf215546Sopenharmony_ci 305bf215546Sopenharmony_ci # Copy the mesa install tarball to the job folder, for later extraction 306bf215546Sopenharmony_ci mv "${INSTALL_TARBALL}" "${JOB_FOLDER}" 307bf215546Sopenharmony_ci 308bf215546Sopenharmony_ci script: | 309bf215546Sopenharmony_ci slugify () { 310bf215546Sopenharmony_ci echo "$1" | sed -r s/[~\^]+//g | sed -r s/[^a-zA-Z0-9]+/-/g | sed -r s/^-+\|-+$//g | tr A-Z a-z 311bf215546Sopenharmony_ci } 312bf215546Sopenharmony_ci 313bf215546Sopenharmony_ci # Submit the job to Valve's CI gateway service with the CI 314bf215546Sopenharmony_ci # provisioned job_folder. 315bf215546Sopenharmony_ci env PYTHONUNBUFFERED=1 executorctl \ 316bf215546Sopenharmony_ci run -w b2c.yml.jinja2 -j $(slugify "$CI_JOB_NAME") -s ${JOB_FOLDER} 317bf215546Sopenharmony_ci 318bf215546Sopenharmony_ci ls -l 319bf215546Sopenharmony_ci # Anything our job places in results/ will be collected by the 320bf215546Sopenharmony_ci # Gitlab coordinator for status presentation. results/junit.xml 321bf215546Sopenharmony_ci # will be parsed by the UI for more detailed explanations of 322bf215546Sopenharmony_ci # test execution. 323bf215546Sopenharmony_ci artifacts: 324bf215546Sopenharmony_ci when: always 325bf215546Sopenharmony_ci name: "mesa_${CI_JOB_NAME}" 326bf215546Sopenharmony_ci paths: 327bf215546Sopenharmony_ci - ${JOB_FOLDER}/results 328bf215546Sopenharmony_ci reports: 329bf215546Sopenharmony_ci junit: ${JOB_FOLDER}/results/junit.xml 330bf215546Sopenharmony_ci 331bf215546Sopenharmony_ci.b2c-test-vk: 332bf215546Sopenharmony_ci extends: 333bf215546Sopenharmony_ci - .use-debian/x86_test-vk 334bf215546Sopenharmony_ci - .b2c-test 335bf215546Sopenharmony_ci needs: 336bf215546Sopenharmony_ci - debian/x86_test-vk 337bf215546Sopenharmony_ci - debian-testing 338bf215546Sopenharmony_ci 339bf215546Sopenharmony_ci.b2c-test-gl: 340bf215546Sopenharmony_ci extends: 341bf215546Sopenharmony_ci - .use-debian/x86_test-gl 342bf215546Sopenharmony_ci - .b2c-test 343bf215546Sopenharmony_ci needs: 344bf215546Sopenharmony_ci - debian/x86_test-gl 345bf215546Sopenharmony_ci - debian-testing 346