1 | .docs-base:
|
---|
2 | variables:
|
---|
3 | BUILDER: html
|
---|
4 | extends:
|
---|
5 | - .fdo.ci-fairy
|
---|
6 | artifacts:
|
---|
7 | expose_as: 'Documentation preview'
|
---|
8 | paths:
|
---|
9 | - public/
|
---|
10 | script:
|
---|
11 | - apk --no-cache add coreutils graphviz py3-clang clang-dev musl-dev linux-headers
|
---|
12 | - pip3 install sphinx===5.1.1 mako===1.2.3 hawkmoth===0.16.0
|
---|
13 | - sphinx-build -W -b $BUILDER docs public
|
---|
14 |
|
---|
15 | pages:
|
---|
16 | extends: .docs-base
|
---|
17 | stage: deploy
|
---|
18 | needs: []
|
---|
19 | rules:
|
---|
20 | - !reference [.no_scheduled_pipelines-rules, rules]
|
---|
21 | - if: '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH && $CI_COMMIT_BRANCH'
|
---|
22 | changes: &docs-or-ci
|
---|
23 | - docs/**/*
|
---|
24 | - .gitlab-ci.yml
|
---|
25 | # All the source files documentation is extracted from
|
---|
26 | # git grep -h ":file: src/" -- docs | sort | uniq
|
---|
27 | - src/compiler/nir/nir.h
|
---|
28 | - src/intel/isl/**/*
|
---|
29 | - src/vulkan/runtime/**/*
|
---|
30 | when: always
|
---|
31 | # Other cases default to never
|
---|
32 |
|
---|
33 | test-docs:
|
---|
34 | extends: .docs-base
|
---|
35 | # Cancel job if a newer commit is pushed to the same branch
|
---|
36 | interruptible: true
|
---|
37 | stage: deploy
|
---|
38 | needs: []
|
---|
39 | rules:
|
---|
40 | - !reference [.no_scheduled_pipelines-rules, rules]
|
---|
41 | - if: '$CI_COMMIT_BRANCH && $CI_PROJECT_NAMESPACE != "mesa"'
|
---|
42 | changes: *docs-or-ci
|
---|
43 | when: manual
|
---|
44 | # Other cases default to never
|
---|
45 |
|
---|
46 | test-docs-mr:
|
---|
47 | extends:
|
---|
48 | - test-docs
|
---|
49 | needs:
|
---|
50 | - job: sanity
|
---|
51 | optional: true
|
---|
52 | rules:
|
---|
53 | - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
|
---|
54 | changes: *docs-or-ci
|
---|
55 | when: on_success
|
---|
56 | # Other cases default to never
|
---|
57 |
|
---|
58 | linkcheck-docs:
|
---|
59 | extends: .docs-base
|
---|
60 | # Cancel job if a newer commit is pushed to the same branch
|
---|
61 | interruptible: true
|
---|
62 | stage: deploy
|
---|
63 | needs: []
|
---|
64 | rules:
|
---|
65 | - !reference [.scheduled_pipeline-rules, rules]
|
---|
66 | allow_failure: true
|
---|
67 | variables:
|
---|
68 | BUILDER: linkcheck
|
---|
69 |
|
---|