mirror of
https://github.com/winfsp/winfsp.git
synced 2025-04-22 08:23:05 -05:00
73 lines
3.6 KiB
YAML
73 lines
3.6 KiB
YAML
version: '{build}'
|
|
|
|
environment:
|
|
# Disable the winfsp-tests built-in exception filter to allow WER to collect dumps.
|
|
WINFSP_TESTS_EXCEPTION_FILTER_DISABLE: 1
|
|
matrix:
|
|
- CONFIGURATION: Debug
|
|
TESTING: Func
|
|
- CONFIGURATION: Release
|
|
TESTING: Func
|
|
#- CONFIGURATION: Release
|
|
# TESTING: Avast
|
|
#- CONFIGURATION: Release
|
|
# TESTING: Perf
|
|
|
|
init:
|
|
#- ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|
|
|
|
install:
|
|
# Hack to make WDK 1903 work on VS2015.
|
|
# See https://github.com/appveyor-tests/WDK-10.0.14393.0/blob/31cf12217fe0c92b218c70d7027dfe145be4f4cb/appveyor.yml#L7
|
|
- ps: |
|
|
[xml]$targets = get-content "C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.Common.targets"
|
|
$usingTask = $targets.ChildNodes[1].UsingTask | ? {$_.TaskName -eq "ValidateNTTargetVersion"}
|
|
$usingTask.AssemblyFile = '$(WDKContentRoot)build\bin\Microsoft.DriverKit.Build.Tasks.16.0.dll'
|
|
$targets.Save("C:\Program Files (x86)\Windows Kits\10\build\WindowsDriver.Common.targets")
|
|
# Submodules
|
|
- git submodule update --init --recursive
|
|
# Kernel and user mode dumps
|
|
- if exist %SystemRoot%\memory.dmp del %SystemRoot%\memory.dmp
|
|
- if exist C:\projects\LocalDumps rmdir /s/q C:\projects\LocalDumps
|
|
- mkdir C:\projects\LocalDumps
|
|
- reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps" /v DumpFolder /t REG_EXPAND_SZ /d C:\projects\LocalDumps /f
|
|
- reg add "HKLM\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps" /v DumpType /t REG_DWORD /d 2 /f
|
|
# Boot configuration
|
|
- appveyor AddMessage "Change boot configuration and reboot" -Category Information
|
|
- bcdedit /set testsigning on
|
|
- if %TESTING%==Func verifier /standard /driver winfsp-x64.sys
|
|
- ps: Restart-Computer -Force
|
|
- ps: Start-Sleep -s 60
|
|
|
|
build_script:
|
|
- appveyor AddMessage "Reboot complete" -Category Information
|
|
# build cygfuse
|
|
- C:\cygwin64\setup-x86_64.exe -qnNd -P cygport
|
|
- C:\cygwin64\bin\bash --login -c "make -C '%CD%\opt\cygfuse' dist"
|
|
#- C:\cygwin\setup-x86.exe -qnNd -P cygport
|
|
#- C:\cygwin\bin\bash --login -c "make -C '%CD%\opt\cygfuse' dist"
|
|
# build winfsp
|
|
- tools\build.bat %CONFIGURATION%
|
|
|
|
test_script:
|
|
- choco install winfsp -s build\VStudio\build\%CONFIGURATION% -y --pre
|
|
- if %TESTING%==Func appveyor DownloadFile http://www.secfs.net/Test.Filter.Driver.zip && 7z x Test.Filter.Driver.zip
|
|
- if %TESTING%==Func start /wait msiexec /i "Test.Filter.Driver\HCK Filter.Driver Content-x86_en-us.msi" /qn
|
|
- if %TESTING%==Func tools\nmake-ext-test.bat %CONFIGURATION%
|
|
- if %TESTING%==Func tools\run-tests.bat %CONFIGURATION%
|
|
- if %TESTING%==Func tools\run-tests.bat %CONFIGURATION% ifstest
|
|
- if %TESTING%==Func tools\run-tests.bat %CONFIGURATION% sample
|
|
- if %TESTING%==Func tools\run-tests.bat %CONFIGURATION% compat
|
|
- if %TESTING%==Avast choco install avastfreeantivirus && fltmc instances -v "C:"
|
|
- if %TESTING%==Avast tools\run-tests.bat %CONFIGURATION% avast-tests
|
|
- if %TESTING%==Perf tools\run-perf-tests.bat %CONFIGURATION% baseline > perf-tests.csv && type perf-tests.csv & appveyor PushArtifact perf-tests.csv
|
|
- choco uninstall winfsp -y
|
|
|
|
on_finish:
|
|
- verifier /query
|
|
- if exist %SystemRoot%\memory.dmp (7z a km.dmp.zip %SystemRoot%\memory.dmp && appveyor PushArtifact km.dmp.zip)
|
|
- dir /a/b C:\projects\LocalDumps | findstr "^" && (7z a um.dmp.zip C:\projects\LocalDumps && appveyor PushArtifact um.dmp.zip) || ver>nul
|
|
- if exist *.dmp.zip (7z a sym.pdb.zip build\VStudio\build\%CONFIGURATION%\*.pdb && appveyor PushArtifact sym.pdb.zip)
|
|
- if exist *.dmp.zip exit 1
|
|
#- ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
|