version: '{build}' clone_folder: c:\pillow init: - ECHO %PYTHON% #- ps: iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1')) # Uncomment previous line to get RDP access during the build. environment: X64_EXT: -x64 EXECUTABLE: python.exe PIP_DIR: Scripts VENV: NO TEST_OPTIONS: DEPLOY: YES matrix: - PYTHON: C:/Python38 - PYTHON: C:/Python38-x64 - PYTHON: C:/Python37 - PYTHON: C:/Python37-x64 - PYTHON: C:/Python36 - PYTHON: C:/Python36-x64 - PYTHON: C:/Python35 - PYTHON: C:/Python35-x64 - PYTHON: C:/msys64/mingw32 EXECUTABLE: bin/python3 PIP_DIR: bin TEST_OPTIONS: --processes=0 DEPLOY: NO - PYTHON: C:/vp/pypy3 EXECUTABLE: bin/pypy.exe PIP_DIR: bin VENV: YES install: - curl -fsSL -o pillow-depends.zip https://github.com/python-pillow/pillow-depends/archive/master.zip - 7z x pillow-depends.zip -oc:\ - mv c:\pillow-depends-master c:\pillow-depends - xcopy c:\pillow-depends\*.zip c:\pillow\winbuild\ - xcopy c:\pillow-depends\*.tar.gz c:\pillow\winbuild\ - xcopy /s c:\pillow-depends\test_images\* c:\pillow\tests\images - cd c:\pillow\winbuild\ - ps: | if ($env:PYTHON -eq "c:/vp/pypy3") { c:\pillow\winbuild\appveyor_install_pypy3.cmd } - ps: | if ($env:PYTHON -eq "c:/msys64/mingw32") { c:\msys64\usr\bin\bash -l -c c:\\pillow\\winbuild\\appveyor_install_msys2_deps.sh } else { c:\python37\python.exe c:\pillow\winbuild\build_dep.py c:\pillow\winbuild\build_deps.cmd $host.SetShouldExit(0) } build_script: - ps: | if ($env:PYTHON -eq "c:/msys64/mingw32") { c:\msys64\usr\bin\bash -l -c c:\\pillow\\winbuild\\appveyor_build_msys2.sh Write-Host "through install" $host.SetShouldExit(0) } else { & $env:PYTHON/$env:EXECUTABLE c:\pillow\winbuild\build.py $host.SetShouldExit(0) } - cd c:\pillow - '%PYTHON%\%EXECUTABLE% selftest.py --installed' test_script: - cd c:\pillow - '%PYTHON%\%PIP_DIR%\pip.exe install pytest pytest-cov' - c:\"Program Files (x86)"\"Windows Kits"\10\Debuggers\x86\gflags.exe /p /enable %PYTHON%\%EXECUTABLE% - '%PYTHON%\%EXECUTABLE% -m pytest -vx --cov PIL --cov-report term --cov-report xml Tests' #- '%PYTHON%\%EXECUTABLE% test-installed.py -v -s %TEST_OPTIONS%' TODO TEST_OPTIONS with pytest? after_test: - pip install codecov - codecov --file coverage.xml --name %PYTHON% matrix: fast_finish: true cache: - '%LOCALAPPDATA%\pip\Cache' artifacts: - path: pillow\dist\*.egg name: egg - path: pillow\dist\*.wheel name: wheel before_deploy: - cd c:\pillow - '%PYTHON%\%PIP_DIR%\pip.exe install wheel' - cd c:\pillow\winbuild\ - '%PYTHON%\%EXECUTABLE% c:\pillow\winbuild\build.py --wheel' - cd c:\pillow - ps: Get-ChildItem .\dist\*.* | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name } deploy: provider: S3 region: us-west-2 access_key_id: AKIAIRAXC62ZNTVQJMOQ secret_access_key: secure: Hwb6klTqtBeMgxAjRoDltiiqpuH8xbwD4UooDzBSiCWXjuFj1lyl4kHgHwTCCGqi bucket: pillow-nightly folder: win/$(APPVEYOR_BUILD_NUMBER)/ artifact: /.*egg|wheel/ on: APPVEYOR_REPO_NAME: python-pillow/Pillow branch: master deploy: YES # Uncomment the following lines to get RDP access after the build/test and block for # up to the timeout limit (~1hr) # #on_finish: #- ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))