openstack-manuals/.zuul.yaml

133 lines
3.4 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 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: openstack-tox
nodeset: ubuntu-bionic
success-url: publish-docs/
post-run: playbooks/build-manuals-tox/post.yaml
roles:
- zuul: zuul/zuul-jobs
vars:
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-checkbuild
parent: build-tox-manuals-base
description: |
Build manuals using "checkbuild" tox environment.
vars:
tox_envlist: checkbuild
- job:
name: build-tox-manuals-checklang
parent: build-tox-manuals-base
description: |
Build translated manuals using "checklang" tox environment.
vars:
tox_envlist: checklang
files:
- ^.*\.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-checkbuild
gate:
jobs:
- openstack-tox-linters
- build-tox-manuals-checkbuild
post:
jobs:
- publish-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:
- openstack-tox-linters
- build-tox-manuals-checkbuild
gate:
jobs:
- openstack-tox-linters
- build-tox-manuals-checkbuild
post:
jobs:
- publish-openstack-manuals-developer
- project-template:
name: openstack-manuals-build-translation
description: |
Runs jobs to build translated documents.
check:
jobs:
- build-tox-manuals-checklang
gate:
jobs:
- build-tox-manuals-checklang
post:
jobs:
- publish-openstack-manuals-lang
- project-template:
name: openstack-manuals-developer-build-translation
description: |
Runs jobs to build translated documents.
This will publish content to developer.openstack.org.
check:
jobs:
- build-tox-manuals-checklang
gate:
jobs:
- build-tox-manuals-checklang
post:
jobs:
- publish-openstack-manuals-developer-lang
# Configuration for this repository, determines which jobs to run.
- project:
templates:
- openstack-manuals-build-translation
- openstack-manuals-jobs
- release-notes-jobs-python3
post:
jobs:
- propose-updates:
vars:
update_target: openstack-manuals