mesa/docs/gitlab-ci.yml

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

62 lines
1.8 KiB
YAML
Raw Normal View History

.docs-base:
extends:
- .build-linux
- .use-alpine/x86_64_build
artifacts:
expose_as: 'Documentation preview'
paths:
- public/
script:
- meson setup _build -D prefix=$(pwd) --auto-features=disabled
-D vulkan-drivers="" -D gallium-drivers="" -D platforms=[] -D glx=disabled
-D video-codecs="" -D html-docs=enabled -D html-docs-path=public
- meson compile -C _build
- meson install -C _build
pages:
extends: .docs-base
stage: deploy
rules:
- !reference [.common-rules, rules]
- !reference [.no_scheduled_pipelines-rules, rules]
- if: '$CI_PROJECT_NAMESPACE == "mesa" && $CI_COMMIT_REF_NAME == $CI_DEFAULT_BRANCH && $CI_COMMIT_BRANCH'
changes: &docs-or-ci
- docs/**/*
- .gitlab-ci.yml
# All the source files documentation is extracted from
# git grep -h ":file: src/" -- docs | sort | uniq
- src/compiler/nir/nir.h
- src/intel/isl/**/*
- src/vulkan/runtime/**/*
when: always
# Other cases default to never
test-docs:
extends: .docs-base
# Cancel job if a newer commit is pushed to the same branch
interruptible: true
stage: deploy
rules:
- !reference [.common-rules, rules]
# pre-merge or merge pipeline
- if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
changes: *docs-or-ci
when: on_success
# fork pipeline
- if: '$CI_COMMIT_BRANCH && $CI_PROJECT_NAMESPACE != "mesa"'
changes: *docs-or-ci
when: on_success
# Other cases default to never
linkcheck-docs:
extends: .docs-base
# Cancel job if a newer commit is pushed to the same branch
interruptible: true
stage: deploy
rules:
- !reference [.common-rules, rules]
- !reference [.scheduled_pipeline-rules, rules]
allow_failure: true
script:
- sphinx-build -W -b linkcheck docs public