# Appveyor is Windows CI: https://ci.appveyor.com/project/bdarnell/tornado environment: global: TORNADO_EXTENSION: "1" # We only build with 3.5+ because it works out of the box, while other # versions require lots of machinery. # # We produce binary wheels for 32- and 64-bit builds, but because # the tests are so slow on Windows (6 minutes vs 15 seconds on Linux # or MacOS), we don't want to test the full matrix. We do full # tests on a couple of configurations and on the others we limit # the tests to the websocket module (which, because it exercises the # C extension module, is most likely to exhibit differences between # 32- and 64-bits) matrix: - PYTHON: "C:\\Python35" PYTHON_VERSION: "3.5.x" PYTHON_ARCH: "32" TOX_ENV: "py35" TOX_ARGS: "" - PYTHON: "C:\\Python35-x64" PYTHON_VERSION: "3.5.x" PYTHON_ARCH: "64" TOX_ENV: "py35" TOX_ARGS: "tornado.test.websocket_test" - PYTHON: "C:\\Python36" PYTHON_VERSION: "3.6.x" PYTHON_ARCH: "32" TOX_ENV: "py36" TOX_ARGS: "tornado.test.websocket_test" - PYTHON: "C:\\Python36-x64" PYTHON_VERSION: "3.6.x" PYTHON_ARCH: "64" TOX_ENV: "py36" TOX_ARGS: "" - PYTHON: "C:\\Python37" PYTHON_VERSION: "3.7.x" PYTHON_ARCH: "32" TOX_ENV: "py37" TOX_ARGS: "tornado.test.websocket_test" - PYTHON: "C:\\Python37-x64" PYTHON_VERSION: "3.7.x" PYTHON_ARCH: "64" TOX_ENV: "py37" TOX_ARGS: "" install: # Make sure the right python version is first on the PATH. - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" # Check that we have the expected version and architecture for Python - "python --version" - "python -c \"import struct; print(struct.calcsize('P') * 8)\"" # Upgrade to the latest version of pip to avoid it displaying warnings # about it being out of date. - "python -m pip install --disable-pip-version-check --user --upgrade pip" - "python -m pip install tox wheel" build: false # Not a C# project, build stuff at the test step instead. test_script: # Build the compiled extension and run the project tests. # This is a bit of a hack that doesn't scale with new python versions, # but for now it lets us avoid duplication with .travis.yml and tox.ini. # Running "py3x-full" would be nice but it's failing on installing # dependencies with no useful logs. - "tox -e %TOX_ENV% -- %TOX_ARGS%" after_test: # If tests are successful, create binary packages for the project. - "python setup.py bdist_wheel" - ps: "ls dist" artifacts: # Archive the generated packages in the ci.appveyor.com build report. - path: dist\* #on_success: # - TODO: upload the content of dist/*.whl to a public wheelhouse #