summaryrefslogtreecommitdiffstats
path: root/.vsts/linux-pr.yml
diff options
context:
space:
mode:
Diffstat (limited to '.vsts/linux-pr.yml')
-rw-r--r--.vsts/linux-pr.yml22
1 files changed, 22 insertions, 0 deletions
diff --git a/.vsts/linux-pr.yml b/.vsts/linux-pr.yml
index 80e4284..145ebb3 100644
--- a/.vsts/linux-pr.yml
+++ b/.vsts/linux-pr.yml
@@ -27,15 +27,29 @@ steps:
clean: true
fetchDepth: 5
+- script: |
+ git fetch -q origin $(system.pullRequest.targetBranch)
+ if ! git diff --name-only HEAD $(git merge-base HEAD FETCH_HEAD) | grep -qvE '(\.rst$|^Doc|^Misc)'
+ then
+ echo "Only docs were updated, stopping build process."
+ echo "##vso[task.setvariable variable=DocOnly]true"
+ exit
+ fi
+ displayName: Detect doc-only changes
+ condition: and(succeeded(), variables['system.pullRequest.targetBranch'])
+
#- 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'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
- script: echo ##vso[task.prependpath]$(OPENSSL_DIR)
displayName: 'Add $(OPENSSL_DIR) to PATH'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
+
- script: >
sudo apt-get -yq install
build-essential
@@ -55,22 +69,30 @@ steps:
uuid-dev
xvfb
displayName: 'Install dependencies'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
+
- script: python3 Tools/ssl/multissltests.py --steps=library --base-directory $(build.sourcesDirectory)/multissl --openssl $(OPENSSL) --system Linux
displayName: 'python multissltests.py'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
- script: ./configure --with-pydebug
displayName: 'Configure CPython (debug)'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
- script: make -s -j4
displayName: 'Build CPython'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
- script: make pythoninfo
displayName: 'Display build info'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
# Run patchcheck and fail if anything is discovered
- script: ./python Tools/scripts/patchcheck.py --travis true
displayName: 'Run patchcheck.py'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))
- script: xvfb-run make buildbottest TESTOPTS="-j4 -uall,-cpu"
displayName: 'Tests'
+ condition: and(succeeded(), ne(variables['DocOnly'], 'true'))