openstack-manuals/.zuul.yaml

109 lines
2.9 KiB
YAML

# Shared Zuul v3 definitions for OpenStack CI.
# These jobs are used in api-site, openstack-manuals, and security-doc
# repositories.
- job:
name: build-tox-manuals-base
abstract: true
description: |
Base job to build manual related documents. These build jobs
invoke a tox command and expect the published content to be in
publish-docs/html directory. This content is published on the root of
the website.
Note that this build job does not create a root-marker file,
this has to be done by scripts called from tox.
parent: opendev-tox-docs
nodeset: ubuntu-bionic
roles:
- zuul: zuul/zuul-jobs
vars:
sphinx_build_dir: 'publish-docs'
tox_environment:
# The tox job writes the root-marker file directly and thus
# needs the following variables set:
ZUUL_PROJECT: '{{ zuul.project.name }}'
ZUUL_BRANCH: '{{ zuul.branch }}'
ZUUL_UUID: '{{ zuul.build }}'
ZUUL_NEWREF: '{{ zuul.ref }}'
- job:
name: build-tox-manuals-publishdocs
parent: build-tox-manuals-base
description: |
Build manuals using "publishdocs" tox environment.
vars:
tox_envlist: publishdocs
- job:
name: build-tox-manuals-publishlang
parent: build-tox-manuals-base
description: |
Build translated manuals using "publishlang" tox environment.
vars:
tox_envlist: publishlang
ensure_global_symlinks: true
files: &files-publishlang
- ^.*\.po$
- ^.*\.pot$
- ^.*requirements.txt$
- ^bindep.txt
- ^doc-tools-check-languages.conf
- ^tools/
- ^tox.ini
# Templates to easily group jobs.
- project-template:
name: openstack-manuals-jobs
description: |
Runs jobs for non-translated documents.
check:
jobs:
- openstack-tox-linters
- build-tox-manuals-publishdocs
gate:
jobs:
- openstack-tox-linters
- build-tox-manuals-publishdocs
promote:
jobs:
- promote-openstack-manuals
- project-template:
name: openstack-manuals-developer-jobs
description: |
Runs jobs for non-translated documents.
This will publish content to developer.openstack.org.
check:
jobs:
- build-tox-manuals-publishdocs
gate:
jobs:
- build-tox-manuals-publishdocs
promote:
jobs:
- promote-openstack-manuals-developer
- project-template:
name: openstack-manuals-build-translation
description: |
Runs jobs to build translated documents.
check:
jobs:
- build-tox-manuals-publishlang
gate:
jobs:
- build-tox-manuals-publishlang
promote:
jobs:
- promote-openstack-manuals-lang:
files: *files-publishlang
# Configuration for this repository, determines which jobs to run.
- project:
templates:
- openstack-manuals-build-translation
- openstack-manuals-jobs
- release-notes-jobs-python3