docu build scripts and amend jjb for promise project 93/493/2
authorMatthewLi <matthew.lijun@huawei.com>
Sat, 9 May 2015 09:28:44 +0000 (17:28 +0800)
committerMatthewLi <matthew.lijun@huawei.com>
Mon, 11 May 2015 06:37:13 +0000 (14:37 +0800)
 JIRA: DOCS-28

Change-Id: Iebf8e2ebca486c859fc7ac2bba10e35479f7cfb4
Signed-off-by: MatthewLi <matthew.lijun@huawei.com>
jjb/promise/docu-build.sh [new file with mode: 0644]
jjb/promise/docu-verify.sh [new file with mode: 0644]
jjb/promise/promise.yml

diff --git a/jjb/promise/docu-build.sh b/jjb/promise/docu-build.sh
new file mode 100644 (file)
index 0000000..7358118
--- /dev/null
@@ -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/promise/docu-verify.sh b/jjb/promise/docu-verify.sh
new file mode 100644 (file)
index 0000000..3221dc2
--- /dev/null
@@ -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
+
index b476697..3196ef4 100644 (file)
@@ -18,6 +18,8 @@
 - job-template:
     name: promise-test
 
+    node: master
+
     project-type: freestyle
 
     logrotate:
@@ -33,6 +35,8 @@
 - job-template:
     name: 'promise-daily-{stream}'
 
+    node: master
+
     # Job template for daily builders
     #
     # Required Variables:
         - test-macro
 
     builders:
-        - shell: |
-            pwd
-            find .
-            echo "Hello world from promise {somevar} daily"
+        - shell:
+            !include-raw docu-build.sh
 
     postbuilders:
         - test-macro
@@ -80,6 +82,8 @@
 - job-template:
     name: 'promise-verify'
 
+    node: master
+
     project-type: freestyle
 
     logrotate:
                     branch-pattern: '**/master'
 
     builders:
-        - shell: |
-            pwd
-            find .
-            echo "verify logic goes here"
+        - shell:
+            !include-raw docu-verify.sh
 
 - job-template:
     name: 'promise-merge'
 
     project-type: freestyle
 
+    node: master
+
     logrotate:
         daysToKeep: 30
         numToKeep: 40
                       branch-pattern: '**/master'
 
     builders:
-        - shell: |
-            pwd
-            find .
-            echo "merge logic goes here"
-
-
-
-
-
+        - shell:
+            !include-raw docu-build.sh