Fail on exit status != 0 on every command in pipeline for build-docu scripts 35/435/4
authorVictor Laza <vlaza@cloudbasesolutions.com>
Wed, 29 Apr 2015 11:34:49 +0000 (14:34 +0300)
committerVictor Laza <vlaza@cloudbasesolutions.com>
Wed, 29 Apr 2015 15:12:23 +0000 (18:12 +0300)
JIRA: DOCS-23 - Fail on exit status != 0 on every command in pipeline for
all  build-docu shell scripts used in Jenkins jobs.

Change-Id: I324de186ca0530082ca7152156253b9a4346e865
Signed-off-by: Victor Laza <vlaza@cloudbasesolutions.com>
12 files changed:
jjb/functest/build-docu-verify.sh
jjb/functest/build-upload-docu.sh
jjb/genesis/build-docu-verify.sh [new file with mode: 0644]
jjb/genesis/build-docu.sh [deleted file]
jjb/genesis/build-upload-docu.sh [new file with mode: 0644]
jjb/genesis/genesis-docs.yml
jjb/octopus/build-docu-verify.sh
jjb/octopus/build-upload-docu.sh
jjb/opnfvdocs/build-docu-verify.sh
jjb/opnfvdocs/build-upload-docu.sh
jjb/pharos/build-docu-verify.sh
jjb/pharos/build-upload-docu.sh

index e8f34a7..c692226 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="functest"
 export PATH=$PATH:/usr/local/bin/
 
index f9da084..ee45d68 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="functest"
 export PATH=$PATH:/usr/local/bin/
 
diff --git a/jjb/genesis/build-docu-verify.sh b/jjb/genesis/build-docu-verify.sh
new file mode 100644 (file)
index 0000000..06b374e
--- /dev/null
@@ -0,0 +1,33 @@
+#!/bin/bash
+set -e
+set -o pipefail
+
+project="genesis"
+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="$(echo "$file"| cut -d "/" -f2,3)"
+
+       # 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/genesis/build-docu.sh b/jjb/genesis/build-docu.sh
deleted file mode 100644 (file)
index 701768b..0000000
+++ /dev/null
@@ -1,57 +0,0 @@
-#!/bin/bash
-project="genesis"
-export PATH=$PATH:/usr/local/bin/
-
-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="$(echo "$file"| cut -d "/" -f2,3)"
-
-  html_file=$file_cut".html"
-
-    echo "rst2html $file"
-    rst2html $file | gsutil cp -L gsoutput.txt - \
-    gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file")
-    gsutil setmeta -h "Content-Type:text/html" \
-                   -h "Cache-Control:private, max-age=0, no-transform" \
-                   gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file")
-    cat gsoutput.txt
-    rm -f gsoutput.txt
-
-  pdf_file="$file_cut"".pdf"
-
-    echo "rst2pdf $file"
-    rst2pdf "$file" -o - | gsutil cp -L gsoutput.txt - \
-    gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file")
-    gsutil setmeta -h "Content-Type:application/pdf" \
-                   -h "Cache-Control:private, max-age=0, no-transform" \
-                   gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file")
-    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/genesis/build-upload-docu.sh b/jjb/genesis/build-upload-docu.sh
new file mode 100644 (file)
index 0000000..2a6bbf7
--- /dev/null
@@ -0,0 +1,67 @@
+#!/bin/bash
+set -e
+set -o pipefail
+
+project="genesis"
+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="$(echo "$file"| cut -d "/" -f2,3)"
+
+        # sed part
+        sed -i "s/_sha1_/$git_sha1/g" $file
+        sed -i "s/_date_/$docu_build_date/g" $file
+
+       # rst2html part
+       html_file=$file_cut".html"
+       echo "rst2html $file"
+       rst2html $file | gsutil cp -L gsoutput.txt - \
+       gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file")
+       gsutil setmeta -h "Content-Type:text/html" \
+                       -h "Cache-Control:private, max-age=0, no-transform" \
+                       gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$html_file")
+       cat gsoutput.txt
+       rm -f gsoutput.txt
+
+       # rst2pdf part
+       pdf_file="$file_cut"".pdf"
+       echo "rst2pdf $file"
+       rst2pdf "$file" -o - | gsutil cp -L gsoutput.txt - \
+       gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file")
+       gsutil setmeta -h "Content-Type:application/pdf" \
+                       -h "Cache-Control:private, max-age=0, no-transform" \
+                       gs://artifacts.opnfv.org/"$project"/"$gs_cp_folder"/$(basename "$pdf_file")
+       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
+
index 14ef95b..21c16f7 100644 (file)
@@ -4,7 +4,8 @@
     name: genesis-docs
 
     jobs:
-        - 'genesis-build-docs'
+        - 'genesis-merge-docs'
+        - 'genesis-verify-docs'
 
     # stream:    branch with - in place of / (eg. stable-helium)
     # branch:    branch (eg. stable/helium)
@@ -18,7 +19,9 @@
 # job templates
 ########################
 - job-template:
-    name: 'genesis-build-docs'
+    name: 'genesis-merge-docs'
+
+    node: master
 
     project-type: freestyle
 
 
     builders:
         - shell:
-            !include-raw build-docu.sh
+            !include-raw build-upload-docu.sh
+
+- job-template:
+    name: 'genesis-verify-docs'
+
+    node: master
+
+    project-type: freestyle
+
+    logrotate:
+        daysToKeep: 30
+        numToKeep: 40
+        artifactDaysToKeep: -1
+        artifactNumToKeep: 5
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: 'master'
+
+    scm:
+        - gerrit-trigger-scm:
+            credentials-id: '{ssh-credentials}'
+            refspec: ''
+            choosing-strategy: 'default'
+
+    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: 'genesis'
+                branches:
+                    - branch-compare-type: 'ANT'
+                      branch-pattern: '**/master'
+
+    builders:
+        - shell:
+            !include-raw build-docu-verify.sh
 
index 01338ef..9c288fa 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="octopus"
 export PATH=$PATH:/usr/local/bin/
 
index beb4cd1..fdd1463 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="octopus"
 export PATH=$PATH:/usr/local/bin/
 
index 061e46d..a6a1596 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="opnfvdocs"
 export PATH=$PATH:/usr/local/bin/
 
index 561ccb1..7b4321a 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="opnfvdocs"
 export PATH=$PATH:/usr/local/bin/
 
index 46862d9..50d3870 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="pharos"
 export PATH=$PATH:/usr/local/bin/
 
index 36e0400..50191e5 100644 (file)
@@ -1,4 +1,7 @@
 #!/bin/bash
+set -e
+set -o pipefail
+
 project="pharos"
 export PATH=$PATH:/usr/local/bin/