summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthewLi <matthew.lijun@huawei.com>2015-07-24 09:25:26 +0000
committerMatthewLi <matthew.lijun@huawei.com>2015-07-24 09:27:27 +0000
commit26a5ec3fbb03a32b7d6bed74b3a96bf9db125728 (patch)
tree6705ddd252fd556323c53459f9389d7f43d57dea
parent0e3af9d49a9249a59ec85c9a57b63804bca6facc (diff)
create docu build script and add it in jjb for availability project
JIRA: OCTO-110 Change-Id: Ibf03caed5a1e679c02a96eff7d8d145f508a3800 Signed-off-by: MatthewLi <matthew.lijun@huawei.com>
-rw-r--r--jjb/availability/availability.yml27
-rw-r--r--jjb/availability/docu-build.sh80
2 files changed, 93 insertions, 14 deletions
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"
+