Add support for review jupyter notebook from nbviewer 47/37247/3
authorYujun Zhang <zhang.yujunz@zte.com.cn>
Wed, 12 Jul 2017 07:36:40 +0000 (15:36 +0800)
committerYujun Zhang <zhang.yujunz@zte.com.cn>
Thu, 13 Jul 2017 12:53:48 +0000 (20:53 +0800)
It is done by uploading the notebook under reviewer to artifacts
and add the nbviewer link in gerrit comments

It is needed because reviewing jupyter notebook[1] directly in
gerrit is very difficult. See example in [2]. It will be much
easier if we can preview the result in nbviewer. See example in [3]

[1]: http://jupyter.org/
[2]: https://gerrit.opnfv.org/gerrit/#/c/37227/
[3]: https://nbviewer.jupyter.org/urls/git.opnfv.org/qtip/plain/examples/storage-qpi-report/storage-qpi.ipynb

Change-Id: I3e4c301f362ff6ac97aebc9d09c7103278efb136
Signed-off-by: Yujun Zhang <zhang.yujunz@zte.com.cn>
jjb/qtip/qtip-verify-jobs.yml

index dd444c7..197f32a 100644 (file)
@@ -7,6 +7,7 @@
     project: qtip
     jobs:
         - 'qtip-verify-{stream}'
+        - 'qtip-merge-{stream}'
     stream:
         - master:
             branch: '{stream}'
 
     builders:
         - qtip-unit-tests-and-docs-build
+        - upload-under-review-notebooks-to-opnfv-artifacts
     publishers:
         - publish-coverage
 
+- job-template:
+    name: 'qtip-merge-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    parameters:
+        - project-parameter:
+            project: $GERRIT_PROJECT
+            branch: '{branch}'
+        - string:
+            name: GS_URL
+            default: '$GS_BASE{gs-pathname}'
+            description: "Directory where the build artifact will be located upon the completion of the build."
+        - string:
+            name: GERRIT_REFSPEC
+            default: 'refs/heads/{branch}'
+            description: "JJB configured GERRIT_REFSPEC parameter"
+
+    scm:
+        - git-scm
+
+    triggers:
+        - gerrit:
+            server-name: 'gerrit.opnfv.org'
+            trigger-on:
+                - change-merged-event
+                - comment-added-contains-event:
+                    comment-contains-value: 'remerge'
+            projects:
+                - project-compare-type: 'ANT'
+                  project-pattern: '*'
+                  branches:
+                      - branch-compare-type: 'ANT'
+                        branch-pattern: '**/{branch}'
+                  file-paths:
+                      - compare-type: ANT
+                        pattern: examples/**
+
+    builders:
+        - remove-old-docs-from-opnfv-artifacts
+
 ################################
 ## job builders
 #################################
             set -o xtrace
 
             tox
+
+# modified from upload-under-review-docs-to-opnfv-artifacts in global/releng-macro.yml
+- builder:
+    name: upload-under-review-notebooks-to-opnfv-artifacts
+    builders:
+        - shell: |
+            #!/bin/bash
+            set -o errexit
+            set -o pipefail
+            set -o xtrace
+            export PATH=$PATH:/usr/local/bin/
+
+            [[ $GERRIT_CHANGE_NUMBER =~ .+ ]]
+            [[ -d examples ]] || exit 0
+
+            echo
+            echo "###########################"
+            echo "UPLOADING DOCS UNDER REVIEW"
+            echo "###########################"
+            echo
+
+            gs_base="artifacts.opnfv.org/$PROJECT/review"
+            gs_path="$gs_base/$GERRIT_CHANGE_NUMBER"
+            local_path="upload/$GERRIT_CHANGE_NUMBER"
+
+            mkdir -p upload
+            cp -r examples "$local_path"
+            gsutil -m cp -r "$local_path" "gs://$gs_base"
+
+            echo "Document link(s):" >> gerrit_comment.txt
+            find "$local_path" | grep -e 'ipynb$' | \
+                sed -e "s|^$local_path|    https://nbviewer.jupyter.org/urls/$gs_path|" >> gerrit_comment.txt