1 #version: '3.0.1.{build}'
4 # linux builds done in Travis CI for now
10 - downloads -> appveyor.yml
11 - '%LOCALAPPDATA%\pip\Cache'
12 - C:\ProgramData\chocolatey\bin -> appveyor.yml
13 - C:\ProgramData\chocolatey\lib -> appveyor.yml
16 # add python and python user-base to path for pip installs
17 - cmd: .\.appveyor\install.bat
19 # build matrix will be number of images multiplied by each '-' below,
20 # less any exclusions.
21 # split builds into sets of four jobs due to appveyor per-job time limit
24 - WINPYTHON: "Python35"
27 - WINPYTHON: "Python36"
30 - WINPYTHON: "Python37"
33 - WINPYTHON: "Python38"
36 # remove sets of build jobs based on criteria below
37 # to fine tune the number and platforms tested
40 # test python 3.5 on Visual Studio 2015 image
41 - image: Visual Studio 2015
43 - image: Visual Studio 2015
45 - image: Visual Studio 2015
48 # test python 3.8 on Visual Studio 2017 image
49 - image: Visual Studio 2017
51 - image: Visual Studio 2017
53 - image: Visual Studio 2017
56 # test python 3.7 on Visual Studio 2019 image
57 - image: Visual Studio 2019
59 - image: Visual Studio 2019
62 # remove some binaries we don't want to be found
64 - ps: .\.appveyor\ignore_git_bins.ps1
70 # exclude VS 10.0 because it hangs the testing until this is resolved:
71 # https://help.appveyor.com/discussions/problems/19283-visual-studio-2010-trial-license-has-expired
72 - ps: .\.appveyor\disable_msvc_10.ps1
74 # setup coverage by creating the coverage config file, and adding coverage
75 # to the sitecustomize so that all python processes start with coverage
76 - ps: .\.appveyor\coverage_setup.ps1
78 # NOTE: running powershell from cmd is intended because
79 # it formats the output correctly
80 - cmd: powershell -Command "& { if($env:COVERAGE -eq 1) { coverage run -p --rcfile=$($env:COVERAGE_PROCESS_START) runtest.py -j 2 -t --exclude-list exclude_list.txt -a } else { C:\\%WINPYTHON%\\python.exe runtest.py -j 2 -t --exclude-list exclude_list.txt -a }; if($LastExitCode -eq 2 -Or $LastExitCode -eq 0) { $host.SetShouldExit(0 )} else {$host.SetShouldExit(1)}}"
82 # run coverage even if there was a test failure
84 - ps: .\.appveyor\coverage_report.ps1
85 # running codecov in powershell causes an error so running in platform
87 - cmd: if %COVERAGE% equ 1 codecov -X gcov --file coverage_xml.xml