From 26a5ec3fbb03a32b7d6bed74b3a96bf9db125728 Mon Sep 17 00:00:00 2001 From: MatthewLi Date: Fri, 24 Jul 2015 09:25:26 +0000 Subject: create docu build script and add it in jjb for availability project JIRA: OCTO-110 Change-Id: Ibf03caed5a1e679c02a96eff7d8d145f508a3800 Signed-off-by: MatthewLi --- jjb/availability/availability.yml | 27 +++++++------ jjb/availability/docu-build.sh | 80 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 14 deletions(-) create mode 100644 jjb/availability/docu-build.sh (limited to 'jjb') diff --git a/jjb/availability/availability.yml b/jjb/availability/availability.yml index a0346cf7d..73c9050d9 100644 --- a/jjb/availability/availability.yml +++ b/jjb/availability/availability.yml @@ -6,8 +6,8 @@ - 'availability-merge' - 'availability-verify' - # stream: branch with - in place of / (eg. stable-helium) - # branch: branch (eg. stable/helium) + # stream: branch with - in place of / (eg. stable-arno) + # branch: branch (eg. stable/arno) stream: - master: branch: 'master' @@ -38,6 +38,7 @@ # Required Variables: # stream: branch with - in place of / (eg. stable) # branch: branch (eg. stable) + node: master project-type: freestyle varsetabove: '{somevar}' @@ -69,10 +70,8 @@ - test-macro builders: - - shell: | - pwd - find . - echo "Hello world from availability {somevar} daily" + - shell: + !include-raw docu-build.sh postbuilders: - test-macro @@ -80,6 +79,8 @@ - job-template: name: 'availability-verify' + node: master + project-type: freestyle logrotate: @@ -123,10 +124,8 @@ branch-pattern: '**/master' builders: - - shell: | - pwd - find . - echo "verify logic goes here" + - shell: + !include-raw docu-build.sh - job-template: name: 'availability-merge' @@ -135,6 +134,8 @@ # # This job's purpose is to update all the JJB + node: master + project-type: freestyle logrotate: @@ -173,10 +174,8 @@ branch-pattern: '**/master' builders: - - shell: | - pwd - find . - echo "merge logic goes here" + - shell: + !include-raw docu-build.sh diff --git a/jjb/availability/docu-build.sh b/jjb/availability/docu-build.sh new file mode 100644 index 000000000..057cc97d1 --- /dev/null +++ b/jjb/availability/docu-build.sh @@ -0,0 +1,80 @@ +#!/bin/bash +set -e +set -o pipefail + +project="$(git remote -v | head -n1 | awk '{{print $2}}' | sed -e 's,.*:\(.*/\)\?,,' -e 's/\.git$//')" +export PATH=$PATH:/usr/local/bin/ + +git_sha1="$(git rev-parse HEAD)" +docu_build_date="$(date)" + +if [[ $JOB_NAME =~ "verify" ]] ; then + patchset="/$GERRIT_CHANGE_NUMBER" +fi + +files=() +while read -r -d ''; do + files+=("$REPLY") +done < <(find * -type f -iname '*.rst' -print0) + +for file in "${{files[@]}}"; do + + file_cut="${{file%.*}}" + gs_cp_folder="${{file_cut}}" + + # sed part + sed -i "s/_sha1_/$git_sha1/g" $file + sed -i "s/_date_/$docu_build_date/g" $file + + # rst2html part + echo "rst2html $file" + rst2html $file | gsutil cp -L gsoutput.txt - \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".html + gsutil setmeta -h "Content-Type:text/html" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".html + cat gsoutput.txt + rm -f gsoutput.txt + + echo "rst2pdf $file" + rst2pdf $file -o - | gsutil cp -L gsoutput.txt - \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".pdf + gsutil setmeta -h "Content-Type:application/pdf" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".pdf + cat gsoutput.txt + rm -f gsoutput.txt + + links+="http://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".html \n" + links+="http://artifacts.opnfv.org/"$project""$patchset"/"$gs_cp_folder".pdf \n" + +done + +images=() +while read -r -d ''; do + images+=("$REPLY") +done < <(find * -type f \( -iname \*.jpg -o -iname \*.png \) -print0) + +for img in "${{images[@]}}"; do + + # uploading found images + echo "uploading $img" + cat "$img" | gsutil cp -L gsoutput.txt - \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$img" + gsutil setmeta -h "Content-Type:image/jpeg" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project""$patchset"/"$img" + cat gsoutput.txt + rm -f gsoutput.txt + +done + +if [[ $GERRIT_EVENT_TYPE = "change-merged" ]] ; then + patchset="/$GERRIT_CHANGE_NUMBER" + if [ ! -z "$patchset" ]; then + gsutil rm gs://artifacts.opnfv.org/"$project""$patchset"/** || true + fi +fi + +echo -e "$links" + -- cgit 1.2.3-korg