Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .vsts/docs-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# 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

#variables:

steps:
- checkout: self
clean: true
fetchDepth: 5

- script: sudo apt-get update && sudo apt-get install -qy --force-yes texlive-full
displayName: 'Install LaTeX'

- task: UsePythonVersion@0
displayName: 'Use Python 3.6 or later'
inputs:
versionSpec: '>=3.6'

- script: python -m pip install sphinx blurb python-docs-theme
displayName: 'Install build dependencies'

- script: make dist PYTHON=python SPHINXBUILD='python -m sphinx' BLURB='python -m blurb'
workingDirectory: '$(build.sourcesDirectory)/Doc'
displayName: 'Build documentation'

- task: PublishBuildArtifacts@1
displayName: 'Publish build'
inputs:
PathToPublish: '$(build.sourcesDirectory)/Doc/build'
ArtifactName: build
publishLocation: Container

- task: PublishBuildArtifacts@1
displayName: 'Publish dist'
inputs:
PathToPublish: '$(build.sourcesDirectory)/Doc/dist'
ArtifactName: dist
publishLocation: Container
43 changes: 43 additions & 0 deletions .vsts/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# 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:
include:
- Doc/*

#variables:

steps:
- checkout: self
clean: true
fetchDepth: 5

- task: UsePythonVersion@0
displayName: 'Use Python 3.6 or later'
inputs:
versionSpec: '>=3.6'

- script: python -m pip install sphinx~=1.6.1 blurb python-docs-theme
displayName: 'Install build dependencies'

- script: make check suspicious html PYTHON=python
workingDirectory: '$(build.sourcesDirectory)/Doc'
displayName: 'Build documentation'

- task: PublishBuildArtifacts@1
displayName: 'Publish build'
inputs:
PathToPublish: '$(build.sourcesDirectory)/Doc/build'
ArtifactName: build
publishLocation: Container
71 changes: 71 additions & 0 deletions .vsts/linux-buildbot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# 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: make pythoninfo
displayName: 'Display build info'

- script: make buildbottest TESTOPTS="-j4 -uall,-cpu"
displayName: 'Tests'
77 changes: 77 additions & 0 deletions .vsts/linux-coverage.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# 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'
36 changes: 36 additions & 0 deletions .vsts/linux-deps.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Note: this file is not currently used, but when template support comes to VSTS it
# will be referenced from the other scripts..

# Current docs for the syntax of this file are at:
# https://github.com/Microsoft/vsts-agent/blob/master/docs/preview/yamlgettingstarted.md

parameters:
OPENSSL: 1.1.0g
OPENSSL_DIR: "$(build.sourcesDirectory)/multissl/openssl/$(OPENSSL)"

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'
75 changes: 75 additions & 0 deletions .vsts/linux-pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
# 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: make pythoninfo
displayName: 'Display build info'

# Run patchcheck and fail if anything is discovered
- script: ./python Tools/scripts/patchcheck.py --travis true
displayName: 'Run patchcheck.py'

- script: make buildbottest TESTOPTS="-j4 -uall,-cpu"
displayName: 'Tests'
37 changes: 37 additions & 0 deletions .vsts/macos-buildbot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
# 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 macOS Preview

trigger:
branches:
include:
- master
- 3.7
- 3.6
paths:
exclude:
- Doc/*
- Tools/*

#variables:

steps:
- checkout: self
clean: true
fetchDepth: 5

- script: ./configure --with-pydebug --with-openssl=/usr/local/opt/openssl
displayName: 'Configure CPython (debug)'

- script: make -s -j4
displayName: 'Build CPython'

- script: make pythoninfo
displayName: 'Display build info'

- script: make buildbottest TESTOPTS="-j4 -uall,-cpu"
displayName: 'Tests'
Loading