diff options
-rw-r--r-- | jjb/parser/docu-build.sh | 62 | ||||
-rw-r--r-- | jjb/parser/docu-verify.sh | 32 | ||||
-rw-r--r-- | jjb/parser/parser.yml | 37 |
3 files changed, 110 insertions, 21 deletions
diff --git a/jjb/parser/docu-build.sh b/jjb/parser/docu-build.sh new file mode 100644 index 000000000..7358118bd --- /dev/null +++ b/jjb/parser/docu-build.sh @@ -0,0 +1,62 @@ +#!/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)" + +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"/"$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"/"$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"/"$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"/"$gs_cp_folder".pdf + 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/parser/docu-verify.sh b/jjb/parser/docu-verify.sh new file mode 100644 index 000000000..3221dc2d3 --- /dev/null +++ b/jjb/parser/docu-verify.sh @@ -0,0 +1,32 @@ +#!/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)" + +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 > $file_cut".html" + + echo "rst2pdf $file" + rst2pdf $file -o $file_cut".pdf" + +done + diff --git a/jjb/parser/parser.yml b/jjb/parser/parser.yml index 88c32a6a6..2c8a2fa7e 100644 --- a/jjb/parser/parser.yml +++ b/jjb/parser/parser.yml @@ -33,6 +33,8 @@ - job-template: name: 'parser-daily-{stream}' + node: master + # Job template for daily builders # # Required Variables: @@ -43,10 +45,10 @@ varsetabove: '{somevar}' logrotate: - daysToKeep: '{build-days-to-keep}' - numToKeep: '{build-num-to-keep}' - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + daysToKeep: 30 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 parameters: - project-parameter: @@ -69,10 +71,8 @@ - test-macro builders: - - shell: | - pwd - find . - echo "Hello world from parser {somevar} daily" + - shell: + !include-raw docu-build.sh postbuilders: - test-macro @@ -80,6 +80,8 @@ - job-template: name: 'parser-verify' + node: master + project-type: freestyle logrotate: @@ -123,14 +125,14 @@ branch-pattern: '**/master' builders: - - shell: | - pwd - find . - echo "verify logic goes here" + - shell: + !include-raw docu-verify.sh - job-template: name: 'parser-merge' + node: master + # builder-merge job to run JJB update # # This job's purpose is to update all the JJB @@ -173,13 +175,6 @@ branch-pattern: '**/master' builders: - - shell: | - pwd - find . - echo "merge logic goes here" - - - - - + - shell: + !include-raw docu-build.sh |