diff options
author | 2015-04-29 14:34:49 +0300 | |
---|---|---|
committer | 2015-04-29 18:12:23 +0300 | |
commit | 1ef68114ccca7ff08b888772601c0d877565f152 (patch) | |
tree | dfed393010a9874de1ce9c2d73203679dafd8bdc /jjb/genesis | |
parent | fb331665c5b85f6ea3258fe4c9f3e287b25ed41b (diff) |
Fail on exit status != 0 on every command in pipeline for build-docu scripts
JIRA: DOCS-23 - Fail on exit status != 0 on every command in pipeline for
all build-docu shell scripts used in Jenkins jobs.
Change-Id: I324de186ca0530082ca7152156253b9a4346e865
Signed-off-by: Victor Laza <vlaza@cloudbasesolutions.com>
Diffstat (limited to 'jjb/genesis')
-rw-r--r-- | jjb/genesis/build-docu-verify.sh | 33 | ||||
-rw-r--r-- | jjb/genesis/build-docu.sh | 57 | ||||
-rw-r--r-- | jjb/genesis/build-upload-docu.sh | 67 | ||||
-rw-r--r-- | jjb/genesis/genesis-docs.yml | 62 |
4 files changed, 159 insertions, 60 deletions
diff --git a/jjb/genesis/build-docu-verify.sh b/jjb/genesis/build-docu-verify.sh new file mode 100644 index 000000000..06b374e16 --- /dev/null +++ b/jjb/genesis/build-docu-verify.sh @@ -0,0 +1,33 @@ +#!/bin/bash +set -e +set -o pipefail + +project="genesis" +export PATH=$PATH:/usr/local/bin/ + +git_sha1="$(git rev-parse HEAD)" +docu_build_date="$(date)" + +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="$(echo "$file"| cut -d "/" -f2,3)" + + # 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 > $file_cut".html" + + echo "rst2pdf $file" + rst2pdf $file -o $file_cut".pdf" + +done + diff --git a/jjb/genesis/build-docu.sh b/jjb/genesis/build-docu.sh deleted file mode 100644 index 701768bcd..000000000 --- a/jjb/genesis/build-docu.sh +++ /dev/null @@ -1,57 +0,0 @@ -#!/bin/bash -project="genesis" -export PATH=$PATH:/usr/local/bin/ - -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="$(echo "$file"| cut -d "/" -f2,3)" - - html_file=$file_cut".html" - - echo "rst2html $file" - rst2html $file | gsutil cp -L gsoutput.txt - \ - gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file") - gsutil setmeta -h "Content-Type:text/html" \ - -h "Cache-Control:private, max-age=0, no-transform" \ - gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file") - cat gsoutput.txt - rm -f gsoutput.txt - - pdf_file="$file_cut"".pdf" - - echo "rst2pdf $file" - rst2pdf "$file" -o - | gsutil cp -L gsoutput.txt - \ - gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file") - gsutil setmeta -h "Content-Type:application/pdf" \ - -h "Cache-Control:private, max-age=0, no-transform" \ - gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file") - cat gsoutput.txt - rm -f gsoutput.txt - -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"/"$img" - gsutil setmeta -h "Content-Type:image/jpeg" \ - -h "Cache-Control:private, max-age=0, no-transform" \ - gs://artifacts.opnfv.org/"$project"/"$img" - cat gsoutput.txt - rm -f gsoutput.txt - -done - diff --git a/jjb/genesis/build-upload-docu.sh b/jjb/genesis/build-upload-docu.sh new file mode 100644 index 000000000..2a6bbf725 --- /dev/null +++ b/jjb/genesis/build-upload-docu.sh @@ -0,0 +1,67 @@ +#!/bin/bash +set -e +set -o pipefail + +project="genesis" +export PATH=$PATH:/usr/local/bin/ + +git_sha1="$(git rev-parse HEAD)" +docu_build_date="$(date)" + +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="$(echo "$file"| cut -d "/" -f2,3)" + + # sed part + sed -i "s/_sha1_/$git_sha1/g" $file + sed -i "s/_date_/$docu_build_date/g" $file + + # rst2html part + html_file=$file_cut".html" + echo "rst2html $file" + rst2html $file | gsutil cp -L gsoutput.txt - \ + gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file") + gsutil setmeta -h "Content-Type:text/html" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file") + cat gsoutput.txt + rm -f gsoutput.txt + + # rst2pdf part + pdf_file="$file_cut"".pdf" + echo "rst2pdf $file" + rst2pdf "$file" -o - | gsutil cp -L gsoutput.txt - \ + gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file") + gsutil setmeta -h "Content-Type:application/pdf" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file") + cat gsoutput.txt + rm -f gsoutput.txt + +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"/"$img" + gsutil setmeta -h "Content-Type:image/jpeg" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project"/"$img" + cat gsoutput.txt + rm -f gsoutput.txt + +done + diff --git a/jjb/genesis/genesis-docs.yml b/jjb/genesis/genesis-docs.yml index 14ef95ba9..21c16f7ad 100644 --- a/jjb/genesis/genesis-docs.yml +++ b/jjb/genesis/genesis-docs.yml @@ -4,7 +4,8 @@ name: genesis-docs jobs: - - 'genesis-build-docs' + - 'genesis-merge-docs' + - 'genesis-verify-docs' # stream: branch with - in place of / (eg. stable-helium) # branch: branch (eg. stable/helium) @@ -18,7 +19,9 @@ # job templates ######################## - job-template: - name: 'genesis-build-docs' + name: 'genesis-merge-docs' + + node: master project-type: freestyle @@ -59,5 +62,58 @@ builders: - shell: - !include-raw build-docu.sh + !include-raw build-upload-docu.sh + +- job-template: + name: 'genesis-verify-docs' + + node: master + + project-type: freestyle + + logrotate: + daysToKeep: 30 + numToKeep: 40 + artifactDaysToKeep: -1 + artifactNumToKeep: 5 + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: 'master' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '' + choosing-strategy: 'default' + + wrappers: + - ssh-agent-credentials: + user: '{ssh-credentials}' + + triggers: + - gerrit: + trigger-on: + - patchset-created-event: + exclude-drafts: 'false' + exclude-trivial-rebase: 'false' + exclude-no-code-change: 'false' + - draft-published-event + - comment-added-contains-event: + comment-contains-value: 'recheck' + - comment-added-contains-event: + comment-contains-value: 'reverify' + + projects: + - project-compare-type: 'ANT' + project-pattern: 'genesis' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + + builders: + - shell: + !include-raw build-docu-verify.sh |