szha closed pull request #11892: [MXNET-711] Website build and version dropdown 
update
URL: https://github.com/apache/incubator-mxnet/pull/11892
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git a/ci/docker/runtime_functions.sh b/ci/docker/runtime_functions.sh
index a0795eb58a5..8805850e314 100755
--- a/ci/docker/runtime_functions.sh
+++ b/ci/docker/runtime_functions.sh
@@ -814,7 +814,11 @@ build_docs() {
     set -ex
     pushd .
     cd /work/mxnet/docs/build_version_doc
-    ./build_all_version.sh $1
+    # Parameters are set in the Jenkins pipeline: restricted-website-build
+    # $1 is the list of branches to build; $2 is the list of tags to display
+    # So you can build from the 1.2.0 branch, but display 1.2.1 on the site
+    ./build_all_version.sh $1 $2
+    # $3 is the default version tag for the website; $4 is the base URL
     ./update_all_version.sh $2 $3 $4
     cd VersionedWeb
     tar -zcvf ../artifacts.tgz .
diff --git a/docs/build_version_doc/build_all_version.sh 
b/docs/build_version_doc/build_all_version.sh
index 56b80e3a0fc..44cd540fda0 100755
--- a/docs/build_version_doc/build_all_version.sh
+++ b/docs/build_version_doc/build_all_version.sh
@@ -20,23 +20,42 @@
 # This script is for locally building website for all versions
 # Built files are stored in $built
 
-# Takes one argument:
-# * tag list - space delimited list of Github tags; Example: "1.1.0 1.0.0 
master"
+# Takes two arguments:
+# tag list - semicolon delimited list of Github tags
+#   Example: "1.2.0;1.1.0;master"
+# display list - semicolon delimited list of what to display on website
+#   Example: "1.2.1;1.1.0;master"
+# The number of tags for the two arguments must be the same.
 # Example Usage:
-# ./build_all_version.sh "1.1.0 1.0.0 master"
+#   ./build_all_version.sh "1.2.0;1.1.0;master" "1.2.1;1.1.0;master"
+#   ./build_all_version.sh "1.2.0" "1.2.1"
 
 set -e
 set -x
 
 if [ -z "$1" ]
   then
-    echo "Please provide a list of version tags you wish to run."
+    echo "Please provide a list of branches or tags you wish to build."
     exit 1
   else
     IFS=$';'
     tag_list=$1
     echo "Using these tags: $tag_list"
-    for tag in $tag_list; do echo $tag; done
+    build_arr=($tag_list)
+fi
+
+if [ -z "$2" ]
+  then
+    echo "Please provide a list of version tags you wish to display on the 
site."
+    exit 1
+  else
+    IFS=$';'
+    tags_to_display=$2
+    echo "Displaying these tags: $tags_to_display"
+    display_arr=($tags_to_display)
+    for key in ${!build_arr[@]}; do
+        echo "Branch/tag ${build_arr[${key}]} will be displayed as 
${display_arr[${key}]}"
+    done
 fi
 
 mxnet_url="https://github.com/apache/incubator-mxnet.git";
@@ -51,18 +70,27 @@ fi
 if [ ! -d "$built" ]; then
   mkdir $built
   mkdir "$built/versions"
+  else
+    if [ ! -d "$built/versions" ]; then
+      mkdir "$built/versions"
+    fi
 fi
 
-# Build all versions and use latest version(First version number in $tag_list) 
as landing page.
-for tag in $tag_list; do
+# Checkout each tag and build it
+# Then store it in a folder according to the desired display tag
+for key in ${!build_arr[@]}; do
+    tag=${build_arr[${key}]}
     cd "$mxnet_folder"
     git fetch
     if [ $tag == 'master' ]
         then
             git checkout master
             git pull
+            echo "Building master..."
         else
-            git checkout "v$tag"
+            # Use "v$tag" for branches or pass that in from jenkins
+            git checkout "$tag"
+            echo "Building $tag..."
     fi
 
     git submodule update --init --recursive || exit 1
@@ -72,11 +100,13 @@ for tag in $tag_list; do
     make clean
     make html USE_OPENMP=1 || exit 1
     cd ../../
-    file_loc="$built/versions/$tag"
+    # Use the display tag name for the folder name
+    file_loc="$built/versions/${display_arr[${key}]}"
     if [ -d "$file_loc" ] ; then
         rm -rf "$file_loc"
     fi
     mkdir "$file_loc"
+    echo "Storing artifacts for $tag in $file_loc folder..."
     cp -a "$mxnet_folder/docs/_build/html/." "$file_loc"
 done
 
diff --git a/docs/build_version_doc/update_all_version.sh 
b/docs/build_version_doc/update_all_version.sh
index bfd656f5ae8..e39b0a50341 100755
--- a/docs/build_version_doc/update_all_version.sh
+++ b/docs/build_version_doc/update_all_version.sh
@@ -23,12 +23,12 @@
 # the tags you want to update.
 
 # Takes three arguments:
-# * tag list - space delimited list of Github tags; Example: "1.1.0 1.0.0 
master"
+# * tag list - semicolon delimited list of tags to display on site; Example: 
"1.1.0;1.0.0;master"
 # * default tag - which version should the site default to; Example: 1.0.0
 # * root URL - for the versions dropdown to change to production or dev 
server; Example: http://mxnet.incubator.apache.org/
 
 # Example Usage:
-# ./update_all_version.sh "1.1.0 1.0.0 master" 1.0.0 
http://mxnet.incubator.apache.org/
+# ./update_all_version.sh "1.1.0;1.0.0;master" 1.0.0 
http://mxnet.incubator.apache.org/
 
 set -e
 set -x
@@ -36,7 +36,6 @@ set -x
 MASTER_SOURCE_DIR="../../docs"
 STATIC_FILES_DIR="_static"
 MXNET_THEME_DIR="_static/mxnet-theme"
-BUILD_HTML_DIR="_build/html"
 
 if [ -z "$1" ]
   then
@@ -132,4 +131,3 @@ for tag in $tag_list; do
 done
 
 echo "The output of this process can be found in the VersionedWeb folder."
-


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
[email protected]


With regards,
Apache Git Services

Reply via email to