gitlab-ci: run piglit on windows

This tests the D3D12 driver on Windows during CI, to prevent accidental
breakage.

Reviewed-by: Daniel Stone <daniels@collabora.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7857>
This commit is contained in:
Erik Faye-Lund 2020-06-03 18:06:56 +02:00
parent 76b51fdf0c
commit d560addc30
3 changed files with 4811 additions and 0 deletions

View File

@ -31,6 +31,7 @@ stages:
- lima
- virgl
- radeonsi
- d3d12
- success
# Generic rule to not run the job during scheduled pipelines
@ -810,6 +811,26 @@ meson-windows-vs2019:
paths:
- _install/
test-d3d12-windows:
extends:
- .build-windows
- .use-windows_build_vs2019
stage: d3d12
dependencies:
- meson-windows-vs2019
needs:
- meson-windows-vs2019
variables:
GALLIUM_DRIVER: d3d12
PIGLIT_PROFILE: quick_gl
script:
- . .\.gitlab-ci\windows\piglit_run.ps1
artifacts:
when: on_failure
name: "mesa_${CI_JOB_NAME}"
paths:
- summary/
scons-win64:
extends: .scons-build
variables:

View File

@ -0,0 +1,21 @@
$env:PIGLIT_NO_FAST_SKIP = 1
Copy-Item -Path _install\bin\opengl32.dll -Destination C:\Piglit\lib\piglit\bin\opengl32.dll
# Run this using VsDevCmd.bat to ensure DXIL.dll is in %PATH%
cmd.exe /C "C:\BuildTools\Common7\Tools\VsDevCmd.bat -host_arch=amd64 -arch=amd64 && py -3 C:\Piglit\bin\piglit.py run `"$env:PIGLIT_PROFILE`" $env:PIGLIT_OPTIONS .\results"
py -3 C:\Piglit\bin\piglit.py summary console .\results | Select -SkipLast 1 | Select-String -NotMatch -Pattern ': pass' | Set-Content -Path .\result.txt
$diff = Compare-Object -ReferenceObject $(Get-Content ".gitlab-ci\windows\$env:PIGLIT_PROFILE.txt") `
-DifferenceObject $(Get-Content .\result.txt)
if (-Not $diff) {
Exit 0
}
py -3 C:\Piglit\bin\piglit.py summary html --exclude-details=pass .\summary .\results
Write-Host "Unexpected change in results:"
Write-Output $diff | Format-Table -Property SideIndicator,InputObject -Wrap
Exit 1

File diff suppressed because it is too large Load Diff