mirror of
https://github.com/tahoe-lafs/tahoe-lafs.git
synced 2024-12-27 16:28:53 +00:00
9da5194e6d
this is another instance of the 5.0 incompatibility
96 lines
3.1 KiB
YAML
96 lines
3.1 KiB
YAML
# adapted from https://packaging.python.org/en/latest/appveyor/
|
|
|
|
environment:
|
|
|
|
matrix:
|
|
|
|
# For Python versions available on Appveyor, see
|
|
# http://www.appveyor.com/docs/installed-software#python
|
|
- PYTHON: "C:\\Python27"
|
|
- PYTHON: "C:\\Python27-x64"
|
|
# DISTUTILS_USE_SDK: "1"
|
|
# TOX_TESTENV_PASSENV: "DISTUTILS_USE_SDK INCLUDE LIB"
|
|
|
|
install:
|
|
- |
|
|
%PYTHON%\python.exe -m pip install -U pip
|
|
%PYTHON%\python.exe -m pip install wheel tox==3.9.0 virtualenv
|
|
|
|
# note:
|
|
# %PYTHON% has: python.exe
|
|
# %PYTHON%\Scripts has: pip.exe, tox.exe (and others installed by bare pip)
|
|
|
|
# We have a custom "build" system. We don't need MSBuild or whatever.
|
|
build: off
|
|
|
|
# Do not build feature branch with open pull requests. This is documented but
|
|
# it's not clear it does anything.
|
|
skip_branch_with_pr: true
|
|
|
|
# This, perhaps, is effective.
|
|
branches:
|
|
# whitelist
|
|
only:
|
|
- 'master'
|
|
|
|
skip_commits:
|
|
files:
|
|
# The Windows builds are unaffected by news fragments.
|
|
- 'newsfragments/*'
|
|
# Also, all this build junk.
|
|
- '.circleci/*'
|
|
- '.lgtm.yml'
|
|
- '.travis.yml'
|
|
|
|
# we run from C:\projects\tahoe-lafs
|
|
|
|
test_script:
|
|
# Put your test command here.
|
|
# Note that you must use the environment variable %PYTHON% to refer to
|
|
# the interpreter you're using - Appveyor does not do anything special
|
|
# to put the Python version you want to use on PATH.
|
|
- |
|
|
%PYTHON%\Scripts\tox.exe -e coverage
|
|
%PYTHON%\Scripts\tox.exe -e pyinstaller
|
|
# To verify that the resultant PyInstaller-generated binary executes
|
|
# cleanly (i.e., that it terminates with an exit code of 0 and isn't
|
|
# failing due to import/packaging-related errors, etc.).
|
|
- dist\Tahoe-LAFS\tahoe.exe --version
|
|
|
|
after_test:
|
|
# This builds the main tahoe wheel, and wheels for all dependencies.
|
|
# Again, you only need build.cmd if you're building C extensions for
|
|
# 64-bit Python 3.3/3.4. And you need to use %PYTHON% to get the correct
|
|
# interpreter. If _trial_temp still exists, the "pip wheel" fails on
|
|
# _trial_temp\local_dir (not sure why).
|
|
- |
|
|
copy _trial_temp\test.log trial_test_log.txt
|
|
rd /s /q _trial_temp
|
|
%PYTHON%\python.exe setup.py bdist_wheel
|
|
%PYTHON%\python.exe -m pip wheel -w dist .
|
|
- |
|
|
%PYTHON%\python.exe -m pip install codecov "coverage ~= 4.5"
|
|
%PYTHON%\python.exe -m coverage xml -o coverage.xml -i
|
|
%PYTHON%\python.exe -m codecov -X search -X gcov -f coverage.xml
|
|
|
|
artifacts:
|
|
# bdist_wheel puts your built wheel in the dist directory
|
|
# "pip wheel -w dist ." puts all the dependency wheels there too
|
|
# this gives us a zipfile with everything
|
|
- path: 'dist\*'
|
|
- path: trial_test_log.txt
|
|
name: Trial test.log
|
|
- path: eliot.log
|
|
name: Eliot test log
|
|
|
|
on_failure:
|
|
# Artifacts are not normally uploaded when the job fails. To get the test
|
|
# logs, we have to push them ourselves.
|
|
- ps: Push-AppveyorArtifact _trial_temp\test.log -Filename trial.log
|
|
- ps: Push-AppveyorArtifact eliot.log -Filename eliot.log
|
|
|
|
#on_success:
|
|
# You can use this step to upload your artifacts to a public website.
|
|
# See Appveyor's documentation for more details. Or you can simply
|
|
# access your wheels from the Appveyor "artifacts" tab for your build.
|