78 lines
2.2 KiB
YAML
78 lines
2.2 KiB
YAML
|
# Current docs for the syntax of this file are at:
|
||
|
# https://github.com/Microsoft/vsts-agent/blob/master/docs/preview/yamlgettingstarted.md
|
||
|
|
||
|
name: $(BuildDefinitionName)_$(Date:yyyyMMdd)$(Rev:.rr)
|
||
|
|
||
|
queue:
|
||
|
name: Hosted Linux Preview
|
||
|
|
||
|
trigger:
|
||
|
branches:
|
||
|
include:
|
||
|
- master
|
||
|
- 3.7
|
||
|
- 3.6
|
||
|
paths:
|
||
|
exclude:
|
||
|
- Doc/*
|
||
|
- Tools/*
|
||
|
|
||
|
variables:
|
||
|
# Copy-pasted from linux-deps.yml until template support arrives
|
||
|
OPENSSL: 1.1.0g
|
||
|
OPENSSL_DIR: "$(build.sourcesDirectory)/multissl/openssl/$(OPENSSL)"
|
||
|
|
||
|
steps:
|
||
|
- checkout: self
|
||
|
clean: true
|
||
|
fetchDepth: 5
|
||
|
|
||
|
#- template: linux-deps.yml
|
||
|
|
||
|
# See https://github.com/Microsoft/vsts-agent/blob/master/docs/preview/yamlgettingstarted-templates.md
|
||
|
# For now, we copy/paste the steps
|
||
|
- script: echo "deb-src http://archive.ubuntu.com/ubuntu/ xenial main" > /etc/apt/sources.list.d/python.list && sudo apt-get update
|
||
|
displayName: 'Update apt-get lists'
|
||
|
|
||
|
- script: echo ##vso[task.prependpath]$(OPENSSL_DIR)
|
||
|
displayName: 'Add $(OPENSSL_DIR) to PATH'
|
||
|
- script: >
|
||
|
sudo apt-get -yq install
|
||
|
build-essential
|
||
|
zlib1g-dev
|
||
|
libbz2-dev
|
||
|
liblzma-dev
|
||
|
libncurses5-dev
|
||
|
libreadline6-dev
|
||
|
libsqlite3-dev
|
||
|
libssl-dev
|
||
|
libgdbm-dev
|
||
|
tk-dev
|
||
|
lzma
|
||
|
lzma-dev
|
||
|
liblzma-dev
|
||
|
libffi-dev
|
||
|
uuid-dev
|
||
|
displayName: 'Install dependencies'
|
||
|
- script: python3 Tools/ssl/multissltests.py --steps=library --base-directory $(build.sourcesDirectory)/multissl --openssl $(OPENSSL) --system Linux
|
||
|
displayName: 'python multissltests.py'
|
||
|
|
||
|
|
||
|
- script: ./configure --with-pydebug
|
||
|
displayName: 'Configure CPython (debug)'
|
||
|
|
||
|
- script: make -s -j4
|
||
|
displayName: 'Build CPython'
|
||
|
|
||
|
- script: ./python -m venv venv && ./venv/bin/python -m pip install -U coverage
|
||
|
displayName: 'Set up virtual environment'
|
||
|
|
||
|
- script: ./venv/bin/python -m test.pythoninfo
|
||
|
displayName: 'Display build info'
|
||
|
|
||
|
- script: ./venv/bin/python -m coverage run --pylib -m test --fail-env-changed -uall,-cpu -x test_multiprocessing_fork -x test_multiprocessing_forkserver -x test_multiprocessing_spawn -x test_concurrent_futures
|
||
|
displayName: 'Tests with coverage'
|
||
|
|
||
|
- script: source ./venv/bin/activate && bash <(curl -s https://codecov.io/bash)
|
||
|
displayName: 'Publish code coverage results'
|