e91dd71c6dd79aec179b9fb4b33dc6d0eb7f3804
[releng/global-jjb.git] / shell / rtd-verify.sh
1 #!/bin/bash -l
2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2017 The Linux Foundation and others.
5 #
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
11 echo "---> rtd-verify.sh"
12
13 # Ensure we fail the job if any steps fail.
14 # DO NOT set -u
15 set -xe -o pipefail
16
17 echo "---> Fetching project"
18 if [ "$GERRIT_PROJECT" != "$PROJECT" ]; then
19     # Only test projects that are a submodule of docs
20     if ! git submodule | grep "$GERRIT_PROJECT"; then
21         echo "WARN: Project is not a submodule of docs. This likely means " \
22             "the project is not participating in the monolithic docs build " \
23             "and should have their own verify job. Quitting job run..."
24         exit 0
25     fi
26
27     cd "docs/submodules/$GERRIT_PROJECT"
28 fi
29
30 git fetch origin "$GERRIT_REFSPEC" && git checkout FETCH_HEAD
31 git submodule update --init --recursive
32 for submod in $(git config -f .gitmodules --get-regexp '^submodule\.(.+)\.url' | awk -e '{print $1}'); do
33     git config --get "$submod"
34 done
35
36
37 # When a new commands are added in lftools, the docs verify job needs to
38 # run the new command which requires installing the lftools dev version
39 if [[ $JOB_NAME == "lf-infra-lftools-rtd-verify-any" ]]; then
40     # shellcheck disable=SC1090
41     source ~/lf-env.sh
42     lf-activate-venv pip
43     pip install -e .
44 fi
45
46 echo "---> Generating docs"
47 cd "$WORKSPACE"
48 tox -edocs
49
50 echo "---> Archiving generated docs"
51 mkdir -p "$WORKSPACE/archives"
52 mv "$DOC_DIR" archives/