| 1 | clone_depth: 1 # NB: this stops FIO-VERSION-GEN making tag based versions |
| 2 | |
| 3 | image: |
| 4 | - Visual Studio 2019 |
| 5 | |
| 6 | environment: |
| 7 | CYG_MIRROR: http://cygwin.mirror.constant.com |
| 8 | matrix: |
| 9 | - ARCHITECTURE: x64 |
| 10 | CC: clang |
| 11 | CONFIGURE_OPTIONS: --enable-pdb |
| 12 | DISTRO: msys2 |
| 13 | # Skip 32 bit clang build |
| 14 | # - ARCHITECTURE: x86 |
| 15 | # CC: clang |
| 16 | # CONFIGURE_OPTIONS: --enable-pdb |
| 17 | # DISTRO: msys2 |
| 18 | - ARCHITECTURE: x64 |
| 19 | CONFIGURE_OPTIONS: |
| 20 | DISTRO: cygwin |
| 21 | - ARCHITECTURE: x86 |
| 22 | CONFIGURE_OPTIONS: --build-32bit-win |
| 23 | DISTRO: cygwin |
| 24 | |
| 25 | install: |
| 26 | - if %DISTRO%==cygwin ( |
| 27 | SET "PATH=C:\cygwin64\bin;C:\cygwin64;%PATH%" |
| 28 | ) |
| 29 | - if %DISTRO%==msys2 if %ARCHITECTURE%==x86 ( |
| 30 | SET "PATH=C:\msys64\mingw32\bin;C:\msys64\usr\bin;%PATH%" |
| 31 | ) |
| 32 | - if %DISTRO%==msys2 if %ARCHITECTURE%==x64 ( |
| 33 | SET "PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;%PATH%" |
| 34 | ) |
| 35 | - SET PATH=C:\Python38-x64;%PATH% # NB: Changed env variables persist to later sections |
| 36 | - SET PYTHONUNBUFFERED=TRUE |
| 37 | - bash.exe ci\appveyor-install.sh |
| 38 | |
| 39 | build_script: |
| 40 | - bash.exe configure --extra-cflags=-Werror --disable-native %CONFIGURE_OPTIONS% |
| 41 | - make.exe -j2 |
| 42 | |
| 43 | after_build: |
| 44 | - file.exe fio.exe |
| 45 | - make.exe test |
| 46 | - 'cd os\windows && dobuild.cmd %ARCHITECTURE% && cd ..' |
| 47 | - ps: Get-ChildItem .\os\windows\*.msi | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name -DeploymentName fio.msi } |
| 48 | |
| 49 | test_script: |
| 50 | - python.exe t/run-fio-tests.py --artifact-root test-artifacts --debug |
| 51 | |
| 52 | on_finish: |
| 53 | - 'bash.exe -lc "cd \"${APPVEYOR_BUILD_FOLDER}\" && [ -d test-artifacts ] && 7z a -t7z test-artifacts.7z test-artifacts -xr!foo.0.0 -xr!latency.?.0 -xr!fio_jsonplus_clat2csv.test && appveyor PushArtifact test-artifacts.7z' |