summaryrefslogtreecommitdiffstats
path: root/src/pmdk/appveyor.yml
diff options
context:
space:
mode:
Diffstat (limited to 'src/pmdk/appveyor.yml')
-rw-r--r--src/pmdk/appveyor.yml95
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