-
Notifications
You must be signed in to change notification settings - Fork 2
/
.appveyor.yml
68 lines (60 loc) · 2.22 KB
/
.appveyor.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
clone_depth: 1 # NB: this stops FIO-VERSION-GEN making tag based versions
image:
- Visual Studio 2019
environment:
CYG_MIRROR: http://cygwin.mirror.constant.com
matrix:
# --disable-tls for the msys2 build to work around
# breakage with clang/lld 16.0.0-1
- ARCHITECTURE: x64
CC: clang
CONFIGURE_OPTIONS: --enable-pdb --disable-tls
DISTRO: msys2
# Skip 32 bit clang build
# - ARCHITECTURE: x86
# CC: clang
# CONFIGURE_OPTIONS: --enable-pdb
# DISTRO: msys2
- ARCHITECTURE: x64
CONFIGURE_OPTIONS:
DISTRO: cygwin
- ARCHITECTURE: x86
CONFIGURE_OPTIONS: --build-32bit-win
DISTRO: cygwin
install:
- if %DISTRO%==cygwin (
SET "PATH=C:\cygwin64\bin;C:\cygwin64;%PATH%"
)
- if %DISTRO%==msys2 if %ARCHITECTURE%==x86 (
SET "PATH=C:\msys64\mingw32\bin;C:\msys64\usr\bin;%PATH%"
)
- if %DISTRO%==msys2 if %ARCHITECTURE%==x64 (
SET "PATH=C:\msys64\mingw64\bin;C:\msys64\usr\bin;%PATH%"
)
- SET PATH=C:\Python38-x64;%PATH% # NB: Changed env variables persist to later sections
- SET PYTHONUNBUFFERED=TRUE
- bash.exe ci\appveyor-install.sh
build_script:
- bash.exe configure --extra-cflags=-Werror --disable-native %CONFIGURE_OPTIONS%
- make.exe -j2
after_build:
- file.exe fio.exe
- make.exe test
- 'cd os\windows && dobuild.cmd %ARCHITECTURE% && cd ..'
- ls.exe ./os/windows/*.msi
- ps: Get-ChildItem .\os\windows\*.msi | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name -DeploymentName fio.msi }
test_script:
- python.exe t/run-fio-tests.py --artifact-root test-artifacts --debug
deploy:
- provider: GitHub
description: fio Windows installer
auth_token: # encrypted token from GitHub
secure: Tjj+xRQEV25P6dQgboUblTCKx/LtUOUav2bvzSCtwMhHMAxrrn2adod6nlTf0ItV
artifact: fio.msi # upload installer to release assets
draft: false
prerelease: false
on:
APPVEYOR_REPO_TAG: true # deploy on tag push only
DISTRO: cygwin
on_finish:
- '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'