Add native zuulv3 set up

Add native zuul v3 templates and job for building doc projects. The
templates can be used by api-site and security-doc as well.

Create extra templates for publishing to developer.openstack.org.

Leave in a TODO for publishing, these post jobs will be added when
ready.

Change-Id: I377632e640a099d0a8640db4959684d9ecd68f8c
This commit is contained in:
Andreas Jaeger 2017-10-09 18:08:40 +02:00
parent c14895c3cf
commit 5e94b2dbb8
2 changed files with 107 additions and 0 deletions

102
.zuul.yaml Normal file
View File

@ -0,0 +1,102 @@
# 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
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
success-url: publish-docs/
post-run: playbooks/build-manuals-tox/post
roles:
- zuul: openstack-infra/zuul-jobs
- job:
name: build-tox-manuals-checkbuild
parent: build-tox-manuals
vars:
tox_envlist: checkbuild
- job:
name: build-tox-manuals-checklang
parent: build-tox-manuals
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
# TODO(jaegerandi): Add post jobs for publishing.
- 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
# TODO(jaegerandi): Add post jobs for publishing.
- 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
# TODO(jaegerandi): Add post jobs for publishing.
- 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
# TODO(jaegerandi): Add post jobs for publishing.
# Configuration for this repository, determines which jobs to run.
- project:
name: openstack/openstack-manuals
templates:
- openstack-manuals-build-translation
- openstack-manuals-jobs

View File

@ -0,0 +1,5 @@
- hosts: all
roles:
- role: fetch-tox-output
- role: fetch-sphinx-output
sphinx_output_src: "{{ zuul.project.src_dir }}/publish-docs"