Просмотр исходного кода

build: use direct download link to get opensource dashboard

Zaiming Shi 4 лет назад
Родитель
Сommit
1ab5909be3
1 измененных файлов с 16 добавлено и 9 удалено
  1. 16 9
      scripts/get-dashboard.sh

+ 16 - 9
scripts/get-dashboard.sh

@@ -12,11 +12,14 @@ if [ -f 'EMQX_ENTERPRISE' ]; then
     DASHBOARD_PATH='lib-ee/emqx_dashboard/priv'
     DASHBOARD_REPO='emqx-enterprise-dashboard-frontend-src'
     AUTH="Authorization: token $(cat scripts/git-token)"
+    # have to be resolved with auth and redirect
+    DIRECT_DOWNLOAD_URL=""
 else
     VERSION="${EMQX_CE_DASHBOARD_VERSION}"
     DASHBOARD_PATH='lib-ce/emqx_dashboard/priv'
     DASHBOARD_REPO='emqx-dashboard-frontend'
     AUTH=""
+    DIRECT_DOWNLOAD_URL="https://github.com/emqx/${DASHBOARD_REPO}/releases/download/${VERSION}/emqx-dashboard.zip"
 fi
 
 case $(uname) in
@@ -32,7 +35,7 @@ if [ -d "$DASHBOARD_PATH/www" ] && [ "$(version)" = "$VERSION" ]; then
     exit 0
 fi
 
-get_assets(){
+find_url() {
     # Get the download URL of our desired asset
     release_url="https://api.github.com/repos/emqx/${DASHBOARD_REPO}/releases/tags/${VERSION}"
     release_info="$(curl --silent --show-error --header "${AUTH}" --header "Accept: application/vnd.github.v3+json" "$release_url")"
@@ -42,18 +45,22 @@ get_assets(){
         exit 1
     fi
     # Get GitHub's S3 redirect URL
-    redirect_url=$(curl --silent --show-error \
-        --header "${AUTH}" \
-        --header "Accept: application/octet-stream" \
-        --write-out "%{redirect_url}" \
-        "$download_url")
     curl --silent --show-error \
+         --header "${AUTH}" \
          --header "Accept: application/octet-stream" \
-         --output "${RELEASE_ASSET_FILE}" \
-         "$redirect_url"
+         --write-out "%{redirect_url}" \
+         "$download_url"
 }
 
-get_assets
+if [ -z "$DIRECT_DOWNLOAD_URL" ]; then
+    DIRECT_DOWNLOAD_URL="$(find_url)"
+fi
+
+curl -L --silent --show-error \
+     --header "Accept: application/octet-stream" \
+     --output "${RELEASE_ASSET_FILE}" \
+     "$DIRECT_DOWNLOAD_URL"
+
 unzip -q "$RELEASE_ASSET_FILE" -d "$DASHBOARD_PATH"
 rm -rf "$DASHBOARD_PATH/www"
 mv "$DASHBOARD_PATH/dist" "$DASHBOARD_PATH/www"