flask/.azure-pipelines.yml
2019-11-18 19:06:57 -08:00

85 lines
2.3 KiB
YAML

trigger:
- 'master'
- '*.x'
jobs:
- job: Tests
variables:
vmImage: 'ubuntu-latest'
python.version: '3.8'
TOXENV: 'py,coverage-ci'
hasTestResults: 'true'
strategy:
matrix:
Python 3.8 Linux:
vmImage: 'ubuntu-latest'
Python 3.8 Windows:
vmImage: 'windows-latest'
Python 3.8 Mac:
vmImage: 'macos-latest'
PyPy 3 Linux:
python.version: 'pypy3'
Python 3.7 Linux:
python.version: '3.7'
Python 3.6 Linux:
python.version: '3.6'
Python 3.5 Linux:
python.version: '3.5'
Python 2.7 Linux:
python.version: '2.7'
Python 2.7 Windows:
python.version: '2.7'
vmImage: 'windows-latest'
Docs:
TOXENV: 'docs'
hasTestResults: 'false'
Style:
TOXENV: 'style'
hasTestResults: 'false'
VersionRange:
TOXENV: 'devel,lowest,coverage-ci'
pool:
vmImage: $[ variables.vmImage ]
steps:
- task: UsePythonVersion@0
inputs:
versionSpec: $(python.version)
displayName: Use Python $(python.version)
- script: pip --disable-pip-version-check install -U tox
displayName: Install tox
- script: tox -s false -- --junitxml=test-results.xml tests examples
displayName: Run tox
- task: PublishTestResults@2
inputs:
testResultsFiles: test-results.xml
testRunTitle: $(Agent.JobName)
condition: eq(variables['hasTestResults'], 'true')
displayName: Publish test results
- task: PublishCodeCoverageResults@1
inputs:
codeCoverageTool: Cobertura
summaryFileLocation: coverage.xml
condition: eq(variables['hasTestResults'], 'true')
displayName: Publish coverage results
# Test on the nightly version of Python.
# Use a container since Azure Pipelines may not have the latest build.
- job: FlaskOnNightly
pool:
vmImage: ubuntu-latest
container: python:rc-stretch
steps:
- script: |
echo "##vso[task.prependPath]$HOME/.local/bin"
pip --disable-pip-version-check install --user -U tox
displayName: Install tox
- script: tox -e nightly
displayName: Run tox