summaryrefslogtreecommitdiffstats
path: root/jjb
diff options
context:
space:
mode:
authorRyota MIBU <r-mibu@cq.jp.nec.com>2015-11-19 20:38:06 +0900
committerRyota MIBU <r-mibu@cq.jp.nec.com>2015-11-20 21:18:25 +0900
commitd42302ee26261d4ccd1e5492745cd387d6613a4d (patch)
treed79ffdf2ef96e556a52cb466969451f3bf25de53 /jjb
parent47ba5f223cc3eb6f3c08d7b3ae147f7f5c52c563 (diff)
Add new jjb macros instead of docu-build-new.sh
This patch adds new jjb macros equivalent to docu-build-new.sh which is not bash script and includes the both functions of builder and publisher in the single file. Change-Id: Ie078e1d62d56e593e634f7e9633386ba90bf45de Signed-off-by: Ryota MIBU <r-mibu@cq.jp.nec.com>
Diffstat (limited to 'jjb')
-rw-r--r--jjb/opnfv/opnfv-docs.yml13
-rw-r--r--jjb/releng-defaults.yaml2
-rw-r--r--jjb/releng-macros.yaml129
3 files changed, 139 insertions, 5 deletions
diff --git a/jjb/opnfv/opnfv-docs.yml b/jjb/opnfv/opnfv-docs.yml
index efb6b5bf1..ee4b5d75c 100644
--- a/jjb/opnfv/opnfv-docs.yml
+++ b/jjb/opnfv/opnfv-docs.yml
@@ -74,8 +74,10 @@
pattern: 'docs/**'
builders:
- - shell:
- !include-raw ../../utils/docu-build-new.sh
+ - build-html-and-pdf-docs-output
+
+ publisher:
+ - upload-under-review-docs-to-opnfv-artifacts
- job-template:
name: 'opnfv-docs-merge'
@@ -123,5 +125,8 @@
pattern: 'docs/**'
builders:
- - shell:
- !include-raw ../../utils/docu-build-new.sh
+ - build-html-and-pdf-docs-output
+
+ publisher:
+ - upload-merged-docs-to-opnfv-artifacts
+ - remove-old-docs-from-opnfv-artifacts
diff --git a/jjb/releng-defaults.yaml b/jjb/releng-defaults.yaml
index a78a37e91..c85347457 100644
--- a/jjb/releng-defaults.yaml
+++ b/jjb/releng-defaults.yaml
@@ -9,4 +9,4 @@
build-artifact-num-to-keep: 5
ssh-credentials: 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
-
+ gerrit-review: 'ssh -p 29418 gerrit.opnfv.org gerrit review'
diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml
index 2c694c847..dc5979783 100644
--- a/jjb/releng-macros.yaml
+++ b/jjb/releng-macros.yaml
@@ -143,3 +143,132 @@
name: jacoco-nojava-workaround
builders:
- shell: 'mkdir -p $WORKSPACE/target/classes'
+
+- builder:
+ name: build-html-and-pdf-docs-output
+ builders:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+
+ git_sha1="$(git rev-parse HEAD)"
+
+ find docs/ -type f -iname '*.rst' -print0 | while read file
+ do
+ sed -i "s/_sha1_/$git_sha1/g" "$file"
+ done
+
+ find docs/ -name 'index.rst' -printf '%h\n' | while read dir
+ do
+ _name="${{dir##*/}}"
+ _build="$dir/build"
+ _output="docs/output/$_name"
+
+ echo
+ echo "#################${{dir//?/#}}"
+ echo "Building DOCS in ${{dir}}"
+ echo "#################${{dir//?/#}}"
+ echo
+
+ mkdir -p "$_output"
+
+ sphinx-build -b html -E -c docs/etc "$dir" "$_output"
+
+ sphinx-build -b latex -E -c docs/etc "$dir" "$_build"
+ make -C "$_build" LATEXOPTS='--interaction=nonstopmode' all-pdf
+ mv "$_build"/*.pdf "$_output"
+
+- publisher:
+ name: upload-under-review-docs-to-opnfv-artifacts
+ publishers:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+ [[ -d docs/output ]]
+
+ echo
+ echo "##########################"
+ echo "UPLOADING DOCS UNER REVIEW"
+ echo "##########################"
+ echo
+
+ gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
+
+ gsutil cp -r docs/output/* "gs://$gs_path"
+
+ gsutil ls "gs://$gs_path" | grep -e 'html$' | while read file
+ do
+ gsutil setmeta \
+ -h "Content-Type:text/html" \
+ -h "Cache-Control:private, max-age=0, no-transform" \
+ "$file"
+ done
+
+ gerrit_comment="Document link(s):
+ $(gsutil ls "gs://$gs_path" | grep -e 'index.html$' -e 'pdf$' | sed 's/^gs/http/')"
+ echo
+ echo "$gerrit_comment"
+ echo
+ {gerrit-review} -p {project} -m "$gerrit_comment" $GERRIT_PATCHSET_REVISION
+
+- publisher:
+ name: upload-merged-docs-to-opnfv-artifacts
+ publishers:
+ - shell: |
+ #!/bin/bash -e
+ set -o pipefail
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ -d docs/output ]]
+
+ echo
+ echo "#####################"
+ echo "UPLOADING MERGED DOCS"
+ echo "#####################"
+ echo
+
+ if [[ "{branch}" == "master" ]] ; then
+ gs_path="artifacts.opnfv.org/{project}/docs"
+ else
+ gs_path="artifacts.opnfv.org/{project}/{branch}/docs"
+ fi
+
+ gsutil cp -r docs/output/* "gs://$gs_path"
+
+ gsutil ls "gs://$gs_path" | grep -e 'html$' | while read file
+ do
+ gsutil setmeta \
+ -h "Content-Type:text/html" \
+ -h "Cache-Control:private, max-age=0, no-transform" \
+ "$file"
+ done
+
+ gerrit_comment="Document link(s):
+ $(gsutil ls "gs://$gs_path" | grep -e 'index.html$' -e 'pdf$' | sed 's/^gs/http/')"
+ echo
+ echo "$gerrit_comment"
+ echo
+ {gerrit-review} -p {project} -m "$gerrit_comment" $GERRIT_PATCHSET_REVISION
+
+- publisher:
+ name: remove-old-docs-from-opnfv-artifacts
+ publishers:
+ - shell: |
+ #!/bin/bash -e
+ export PATH=$PATH:/usr/local/bin/
+
+ [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+
+ gs_path="artifacts.opnfv.org/review/$GERRIT_CHANGE_NUMBER"
+
+ if gsutil ls "gs://$gs_path" > /dev/null 2>&1 ; then
+ echo
+ echo "Deleting Out-of-dated Documents..."
+ gsutil rm -r "gs://$gs_path_review"
+ fi