From 5e94b2dbb8c713e28dbbc04e1f2cff75f26a78e1 Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Mon, 9 Oct 2017 18:08:40 +0200 Subject: [PATCH] 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 --- .zuul.yaml | 102 ++++++++++++++++++++++++++ playbooks/build-manuals-tox/post.yaml | 5 ++ 2 files changed, 107 insertions(+) create mode 100644 .zuul.yaml create mode 100644 playbooks/build-manuals-tox/post.yaml diff --git a/.zuul.yaml b/.zuul.yaml new file mode 100644 index 0000000000..ed764a9fd1 --- /dev/null +++ b/.zuul.yaml @@ -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 diff --git a/playbooks/build-manuals-tox/post.yaml b/playbooks/build-manuals-tox/post.yaml new file mode 100644 index 0000000000..75cb086fc5 --- /dev/null +++ b/playbooks/build-manuals-tox/post.yaml @@ -0,0 +1,5 @@ +- hosts: all + roles: + - role: fetch-tox-output + - role: fetch-sphinx-output + sphinx_output_src: "{{ zuul.project.src_dir }}/publish-docs"