summaryrefslogtreecommitdiffstats
path: root/.vsts/docs.yml
blob: 93a7282f770ab4edf53fb60ae57dca0a45ae654d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# 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

- script: |
   git fetch -q origin $(system.pullRequest.targetBranch)
   if ! git diff --name-only HEAD $(git merge-base HEAD FETCH_HEAD) | grep -qE '(\.rst$|^Doc|^Misc)'
   then
     echo "No docs were updated, stopping build process."
     echo "##vso[task.setvariable variable=NoDocs]true"
     exit
   fi
  displayName: Detect doc-only changes
  condition: and(succeeded(), variables['system.pullRequest.targetBranch'])

- task: UsePythonVersion@0
  displayName: 'Use Python 3.6 or later'
  inputs:
    versionSpec: '>=3.6'
  condition: and(succeeded(), ne(variables['NoDocs'], 'true'))

- script: python -m pip install sphinx~=1.6.1 blurb python-docs-theme
  displayName: 'Install build dependencies'
  condition: and(succeeded(), ne(variables['NoDocs'], 'true'))

- script: make check suspicious html PYTHON=python
  workingDirectory: '$(build.sourcesDirectory)/Doc'
  displayName: 'Build documentation'
  condition: and(succeeded(), ne(variables['NoDocs'], 'true'))

- task: PublishBuildArtifacts@1
  displayName: 'Publish build'
  condition: and(and(succeeded(), ne(variables['Build.Reason'], 'PullRequest')), ne(variables['NoDocs'], 'true'))
  inputs:
    PathToPublish: '$(build.sourcesDirectory)/Doc/build'
    ArtifactName: build
    publishLocation: Container