From 10a0b24d9f634213377a447309fc626acf0dcd3c Mon Sep 17 00:00:00 2001 From: MatthewLi Date: Wed, 22 Apr 2015 10:41:02 +0800 Subject: add build scripts and amend jjb for prediction project JIRA PREDICTION-1 Change-Id: I07e671d5e821c5dc7d6275a0fbf9b623a4c6aff8 Signed-off-by: MatthewLi --- jjb/prediction/docu-build.sh | 62 +++++++++++++++++++++++++++++++++++++++++++ jjb/prediction/docu-verify.sh | 32 ++++++++++++++++++++++ jjb/prediction/prediction.yml | 33 ++++++++++++----------- 3 files changed, 111 insertions(+), 16 deletions(-) create mode 100644 jjb/prediction/docu-build.sh create mode 100644 jjb/prediction/docu-verify.sh (limited to 'jjb/prediction') diff --git a/jjb/prediction/docu-build.sh b/jjb/prediction/docu-build.sh new file mode 100644 index 000000000..7358118bd --- /dev/null +++ b/jjb/prediction/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/prediction/docu-verify.sh b/jjb/prediction/docu-verify.sh new file mode 100644 index 000000000..3221dc2d3 --- /dev/null +++ b/jjb/prediction/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/prediction/prediction.yml b/jjb/prediction/prediction.yml index e8e5876eb..bf4c56be5 100644 --- a/jjb/prediction/prediction.yml +++ b/jjb/prediction/prediction.yml @@ -33,6 +33,8 @@ - job-template: name: 'prediction-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 prediction {somevar} daily" + - shell: + !include-raw docu-build.sh postbuilders: - test-macro @@ -80,6 +80,8 @@ - job-template: name: 'prediction-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: 'prediction-merge' + node: master + # builder-merge job to run JJB update # # This job's purpose is to update all the JJB @@ -173,7 +175,6 @@ branch-pattern: '**/master' builders: - - shell: | - pwd - find . - echo "merge logic goes here" + - shell: + !include-raw docu-build.sh + -- cgit 1.2.3-korg