diff options
Diffstat (limited to '')
-rw-r--r-- | src/pmdk/appveyor.yml | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/src/pmdk/appveyor.yml b/src/pmdk/appveyor.yml new file mode 100644 index 000000000..c9e9a2953 --- /dev/null +++ b/src/pmdk/appveyor.yml @@ -0,0 +1,95 @@ +version: 1.4.{build} +os: Visual Studio 2019 +platform: x64 + +install: +- ps: Install-PackageProvider -Name NuGet -Force +- ps: Install-Module PsScriptAnalyzer -Force + +configuration: +- Debug +- Release + +environment: + solutionname: PMDK.sln + ex_solutionname: Examples.sln + +matrix: + fast_finish: true + +before_build: +- ps: >- + if ($Env:CONFIGURATION -eq "Release") { + utils/CSTYLE.ps1 + if ($LASTEXITCODE -ne 0) { + exit 1 + } + utils/CHECK_WHITESPACE.ps1 + if ($LASTEXITCODE -ne 0) { + exit 1 + } + utils/ps_analyze.ps1 + if ($LASTEXITCODE -ne 0) { + exit 1 + } + ./utils/check_sdk_version.py -d . + if ($LASTEXITCODE -ne 0) { + exit 1 + } + } + +build_script: +- ps: msbuild src\$Env:solutionname /property:Configuration=$Env:CONFIGURATION /m /v:m +- ps: msbuild src\examples\$Env:ex_solutionname /property:Configuration=$Env:CONFIGURATION /m /v:m + +after_build: +- ps: utils/CREATE-ZIP.ps1 -b $Env:CONFIGURATION + +test_script: +- ps: >- + if ($true) { + cd src\test + md C:\temp + echo "`$Env:NON_PMEM_FS_DIR = `"C:\temp`"" >> testconfig.ps1 + echo "`$Env:PMEM_FS_DIR = `"C:\temp`"" >> testconfig.ps1 + echo "`$Env:PMEM_FS_DIR_FORCE_PMEM = `"1`"" >> testconfig.ps1 + echo "`$Env:PMDK_NO_ABORT_MSG = `"1`"" >> testconfig.ps1 + echo "`$Env:TM = `"1`"" >> testconfig.ps1 + + write-output "config = { + 'unittest_log_level': 1, + 'cacheline_fs_dir': 'C:\\temp', + 'force_cacheline': True, + 'page_fs_dir': 'C:\\temp', + 'force_page': False, + 'byte_fs_dir': 'C:\\temp', + 'force_byte': True, + 'tm': True, + 'test_type': 'check', + 'granularity': 'all', + 'fs_dir_force_pmem': 1, + 'keep_going': False, + 'timeout': '4m', + 'build': 'debug', + 'force_enable': None, + 'fail_on_skip': False, + 'enable_admin_tests': False, + }" | out-file "testconfig.py" -encoding utf8 + + if ($Env:CONFIGURATION -eq "Debug") { + ./RUNTESTS.ps1 -b debug -o 4m + if ($?) { + ./RUNTESTS.py -b debug + } + } + if ($Env:CONFIGURATION -eq "Release") { + ./RUNTESTS.ps1 -b nondebug -o 4m + if ($?) { + ./RUNTESTS.py -b release + } + } + } + +artifacts: +- path: 'src\x64\*.zip' + name: PMDK |