
To support arbitrary doc directories like we need for install-guide and deploy-guide, we need to name that. The previous change had an error where we used a complete wrong path, fix this. This needs changes for install-guide and deploy-guide publishing. Needed-By: I708dab3119bb4b167b4ae68eb7fa575fa96e7984 Change-Id: Ib9c28eeea6c369f4ccad50c0672eee4f91b4370a
72 lines
2.6 KiB
YAML
72 lines
2.6 KiB
YAML
- name: Set build directory
|
|
set_fact:
|
|
doc_build_dir: "{{ zuul_work_dir }}/{{doc_toplevel_dir}}/build"
|
|
|
|
- name: Write marker text
|
|
copy:
|
|
dest: "{{ doc_build_dir }}/html/.root-marker"
|
|
content: "Project: {{ zuul.project.name }} Branch: {{ zuul.branch }} Build: {{ zuul.build }} Revision: {{ zuul.ref }}"
|
|
|
|
- name: Process tagged build
|
|
include: tagged.yaml
|
|
when: "zuul.branch != 'master' and zuul.tag is defined"
|
|
|
|
- name: Process stable branch build
|
|
include: stable.yaml
|
|
when: "'stable' in zuul.branch and zuul.tag is not defined"
|
|
|
|
- name: Process branch build
|
|
include: branch.yaml
|
|
when: "zuul.branch != 'master' and 'stable' not in zuul.branch and zuul.tag is not defined"
|
|
|
|
- name: Rearrange publish directories
|
|
args:
|
|
chdir: "{{ zuul_work_dir }}"
|
|
executable: /bin/bash
|
|
shell: |
|
|
set -xe
|
|
DOCBUILD="{{ doc_toplevel_dir }}/build"
|
|
if [[ {{ zuul.ref }} =~ ^refs/tags/ ]]; then
|
|
# This job should not be configured to run for
|
|
# pre-releases, so if we have a tag we want to use it as
|
|
# the publishing location.
|
|
tag=$(echo {{ zuul.ref }} | cut -d/ -f3-)
|
|
branch_name=""
|
|
else
|
|
# If the ref was not a tag, assume it is a branch.
|
|
branch_name={{ zuul.branch }}
|
|
tag=""
|
|
fi
|
|
# Rearrange the build output to reflect the end publishing
|
|
# location, so we can use doc/publish as the source for the
|
|
# publisher step.
|
|
mkdir -p doc/publish
|
|
if [[ ! -z "$tag" ]]; then
|
|
# We will have already moved the content inside
|
|
# a directory named for the tag, so we move that
|
|
# directory to the publish location.
|
|
mv $DOCBUILD/html/$tag doc/publish/
|
|
elif [[ $branch_name = master ]]; then
|
|
# The above tasks does not rename the output directory, but
|
|
# we want it to be called "latest".
|
|
mv $DOCBUILD/html doc/publish/latest
|
|
elif [[ $branch_name =~ stable/ ]]; then
|
|
# We will have already moved the content inside
|
|
# a directory named for the branch, so move that to the
|
|
# publish location.
|
|
mv $DOCBUILD/html/$(basename $branch_name) doc/publish/
|
|
elif [[ $branch_name =~ feature/ ]]; then
|
|
echo "Docs should not be published for feature branches"
|
|
exit 1
|
|
elif [[ $branch_name =~ driverfixes/ ]]; then
|
|
echo "Docs should not be published for feature branches"
|
|
exit 1
|
|
else
|
|
# What is this even?
|
|
echo "Could not determine publishing location for branch_name $branch_name"
|
|
exit 1
|
|
fi
|
|
# Move back into doc/build/html for artifact publisher.
|
|
rm -rf $DOCBUILD/html
|
|
mv doc/publish $DOCBUILD/html
|