diff options
author | Daniel Moody <dmoody256@gmail.com> | 2017-12-22 08:28:27 (GMT) |
---|---|---|
committer | Daniel Moody <dmoody256@gmail.com> | 2017-12-22 08:28:27 (GMT) |
commit | 4e8a7b5b1733a8cb6e8aa197c8c90a6434f7a066 (patch) | |
tree | 1802e01d3b676a3b045ce85ae6012f15452de058 /.appveyor.yml | |
parent | 843c4b571fdcc5da92987d867d25e207f985957f (diff) | |
download | SCons-4e8a7b5b1733a8cb6e8aa197c8c90a6434f7a066.zip SCons-4e8a7b5b1733a8cb6e8aa197c8c90a6434f7a066.tar.gz SCons-4e8a7b5b1733a8cb6e8aa197c8c90a6434f7a066.tar.bz2 |
split the tests in multiple jobs for multiple python environments.
Diffstat (limited to '.appveyor.yml')
-rw-r--r-- | .appveyor.yml | 82 |
1 files changed, 68 insertions, 14 deletions
diff --git a/.appveyor.yml b/.appveyor.yml index d4b6624..a9d2dfc 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -1,27 +1,81 @@ image: Visual Studio 2017 shallow_clone: true -environment: - matrix: - # Match the Python versions currently tested at http://buildbot.scons.org/#/, - # but include 32 and 64-bit variants. - - PYTHON: "C:\\Python27" - - PYTHON: "C:\\Python27-x64" - - PYTHON: "C:\\Python35" - - PYTHON: "C:\\Python35-x64" - - PYTHON: "C:\\Python36" - - PYTHON: "C:\\Python36-x64" - install: - "set PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" - python --version - pip install lxml + - pip install pypiwin32 - choco install dmd - choco install ldc - choco install swig - choco install vswhere -build: off +environment: + matrix: + - PYTHON: "C:\\Python27" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python27" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python27" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python27" + BUILD_JOB_NUM: 4 + + - PYTHON: "C:\\Python35" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python35" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python35" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python35" + BUILD_JOB_NUM: 4 -test_script: - - cmd: python runtest.py -a -j 2 || if %errorlevel% == 2 then exit 0 else exit 1
\ No newline at end of file + - PYTHON: "C:\\Python36" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python36" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python36" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python36" + BUILD_JOB_NUM: 4 + + - PYTHON: "C:\\Python27-x64" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python27-x64" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python27-x64" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python27-x64" + BUILD_JOB_NUM: 4 + + - PYTHON: "C:\\Python35-x64" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python35-x64" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python35-x64" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python35-x64" + BUILD_JOB_NUM: 4 + + - PYTHON: "C:\\Python36-x64" + BUILD_JOB_NUM: 1 + - PYTHON: "C:\\Python36-x64" + BUILD_JOB_NUM: 2 + - PYTHON: "C:\\Python36-x64" + BUILD_JOB_NUM: 3 + - PYTHON: "C:\\Python36-x64" + BUILD_JOB_NUM: 4 + +build: off +build_script: + - cmd: python runtest.py -l -a > all_tests.txt + - ps: >- + $TOTAL_BUILD_JOBS = 4; + $Lines = (Get-Content all_tests.txt | Measure-Object -line).Lines; + $start = ($Lines / $TOTAL_BUILD_JOBS) * ($Env:BUILD_JOB_NUM - 1); + $end = ($Lines / $TOTAL_BUILD_JOBS) * $Env:BUILD_JOB_NUM; + if ( $Env:BUILD_JOB_NUM -eq $TOTAL_BUILD_JOBS){ $end = $Lines }; + if ( $start -eq 0 ){ $start = 1 }; + get-content all_tests.txt | select -first ($end - $start) -skip ($start - 1) | Out-File -Encoding ASCII build_tests.txt; + - cmd: powershell -Command "& { python runtest.py -j 2 -f build_tests.txt; if($LastExitCode -eq 2 -Or $LastExitCode -eq 0) { $host.SetShouldExit(0 )} else {$host.SetShouldExit(1)}}"
\ No newline at end of file |