build: use direct download link to get opensource dashboard

This commit is contained in:
Zaiming Shi 2021-05-27 09:16:05 +02:00 committed by Rory Z
parent 925aa55951
commit 1ab5909be3
1 changed files with 16 additions and 9 deletions

View File

@ -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"