From 254280c89a1417447806b8f51cb314081499e161 Mon Sep 17 00:00:00 2001 From: MatthewLi Date: Fri, 21 Aug 2015 10:50:54 +0800 Subject: add test and verify jobs for bottlenecks project BOTTLENECK-1 add test job to print hello world and docu-build script in verify job builder Change-Id: I5197ebb27cbc5c18101276e09a103d8cc5bbb176 Signed-off-by: MatthewLi --- jjb/bottlenecks/bottlenecks.yml | 89 +++++++++++++++++++++++++++++++++++++++++ jjb/bottlenecks/docu-build.sh | 80 ++++++++++++++++++++++++++++++++++++ 2 files changed, 169 insertions(+) create mode 100644 jjb/bottlenecks/bottlenecks.yml create mode 100644 jjb/bottlenecks/docu-build.sh (limited to 'jjb') diff --git a/jjb/bottlenecks/bottlenecks.yml b/jjb/bottlenecks/bottlenecks.yml new file mode 100644 index 000000000..0baf7ba31 --- /dev/null +++ b/jjb/bottlenecks/bottlenecks.yml @@ -0,0 +1,89 @@ +#################################### +# Job configuration for bottlenecks +#################################### +- project: + name: bottlenecks + jobs: + - 'bottlenecks-test' + - 'bottlenecks-verify' + + # stream: branch with - in place of / (eg. stable-arno) + # branch: branch (eg. stable/arno) + stream: + - master: + branch: 'master' + + project: 'bottlenecks' + somevar: 'foo' + +######################## +# job templates +######################## + +- job-template: + name: 'bottlenecks-test' + + project-type: freestyle + + logrotate: + daysToKeep: 30 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + builders: + - shell: | + echo "Hello world from bottlenecks" + + +- job-template: + name: 'bottlenecks-verify' + + node: master + + project-type: freestyle + + logrotate: + daysToKeep: 30 + numToKeep: 10 + artifactDaysToKeep: -1 + artifactNumToKeep: -1 + + parameters: + - project-parameter: + project: '{project}' + - gerrit-parameter: + branch: 'master' + + scm: + - gerrit-trigger-scm: + credentials-id: '{ssh-credentials}' + refspec: '$GERRIT_REFSPEC' + choosing-strategy: 'gerrit' + + 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: '{project}' + branches: + - branch-compare-type: 'ANT' + branch-pattern: '**/master' + + builders: + - shell: + !include-raw docu-build.sh diff --git a/jjb/bottlenecks/docu-build.sh b/jjb/bottlenecks/docu-build.sh new file mode 100644 index 000000000..c56069271 --- /dev/null +++ b/jjb/bottlenecks/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 + subdir="/$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""$subdir"/"$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""$subdir"/"$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""$subdir"/"$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""$subdir"/"$gs_cp_folder".pdf + cat gsoutput.txt + rm -f gsoutput.txt + + links+="http://artifacts.opnfv.org/"$project""$subdir"/"$gs_cp_folder".html \n" + links+="http://artifacts.opnfv.org/"$project""$subdir"/"$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""$subdir"/"$img" + gsutil setmeta -h "Content-Type:image/jpeg" \ + -h "Cache-Control:private, max-age=0, no-transform" \ + gs://artifacts.opnfv.org/"$project""$subdir"/"$img" + cat gsoutput.txt + rm -f gsoutput.txt + +done + +if [[ $GERRIT_EVENT_TYPE = "change-merged" ]] ; then + subdir="/$GERRIT_CHANGE_NUMBER" + if [ ! -z "$subdir" ]; then + gsutil rm gs://artifacts.opnfv.org/"$project""$subdir"/** || true + fi +fi + +echo -e "$links" + -- cgit 1.2.3-korg