| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  | #!/bin/bash
 | 
					
						
							|  |  |  | set -e | 
					
						
							|  |  |  | set +x | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-20 08:08:27 +08:00
										 |  |  | trap "cd $(pwd -P)" EXIT | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  | cd "$(dirname "$0")" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [[ ($1 == '--help') || ($1 == '-h') ]]; then | 
					
						
							| 
									
										
										
										
											2020-01-18 08:26:58 +08:00
										 |  |  |   echo "usage: $(basename $0) [firefox-linux|firefox-win32|firefox-win64|webkit-gtk|webkit-wpe|webkit-gtk-wpe|webkit-win64|webkit-mac-10.14|webkit-mac-10.15] [--check] [zip-path]" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   echo | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  |   echo "Upload .zip as a browser build." | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   echo | 
					
						
							| 
									
										
										
										
											2019-11-22 07:25:46 +08:00
										 |  |  |   echo "--check      pass |--check| as a second parameter instead of a zip-path to check for" | 
					
						
							|  |  |  |   echo "             the build existing in the CDN" | 
					
						
							|  |  |  |   echo | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   echo "NOTE: \$AZ_ACCOUNT_KEY (azure account name) and \$AZ_ACCOUNT_NAME (azure account name)" | 
					
						
							|  |  |  |   echo "env variables are required to upload builds to CDN." | 
					
						
							|  |  |  |   exit 0 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | if [[ (-z $AZ_ACCOUNT_KEY) || (-z $AZ_ACCOUNT_NAME) ]]; then | 
					
						
							|  |  |  |   echo "ERROR: Either \$AZ_ACCOUNT_KEY or \$AZ_ACCOUNT_NAME environment variable is missing." | 
					
						
							|  |  |  |   echo "       'Azure Account Name' and 'Azure Account Key' secrets that are required" | 
					
						
							|  |  |  |   echo "       to upload builds ot Azure CDN." | 
					
						
							|  |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | if [[ $# < 1 ]]; then | 
					
						
							|  |  |  |   echo "missing browser: 'firefox' or 'webkit'" | 
					
						
							|  |  |  |   echo "try '$(basename $0) --help' for more information" | 
					
						
							|  |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | BUILD_FLAVOR="$1" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  | BROWSER_NAME="" | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | BLOB_NAME="" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | if [[ "$BUILD_FLAVOR" == "firefox-linux" ]]; then | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   BROWSER_NAME="firefox" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  |   BLOB_NAME="firefox-linux.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "firefox-mac" ]]; then | 
					
						
							| 
									
										
										
										
											2020-01-14 05:55:45 +08:00
										 |  |  |   BROWSER_NAME="firefox" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  |   BLOB_NAME="firefox-mac.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "firefox-win32" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="firefox" | 
					
						
							|  |  |  |   BLOB_NAME="firefox-win32.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "firefox-win64" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="firefox" | 
					
						
							|  |  |  |   BLOB_NAME="firefox-win64.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-gtk" ]]; then | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   BROWSER_NAME="webkit" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  |   BLOB_NAME="minibrowser-gtk.zip" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:37:17 +08:00
										 |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-wpe" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="webkit" | 
					
						
							|  |  |  |   BLOB_NAME="minibrowser-wpe.zip" | 
					
						
							| 
									
										
										
										
											2020-01-18 08:26:58 +08:00
										 |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-gtk-wpe" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="webkit" | 
					
						
							|  |  |  |   BLOB_NAME="minibrowser-gtk-wpe.zip" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-win64" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="webkit" | 
					
						
							|  |  |  |   BLOB_NAME="minibrowser-win64.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-mac-10.14" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="webkit" | 
					
						
							|  |  |  |   BLOB_NAME="minibrowser-mac-10.14.zip" | 
					
						
							|  |  |  | elif [[ "$BUILD_FLAVOR" == "webkit-mac-10.15" ]]; then | 
					
						
							|  |  |  |   BROWSER_NAME="webkit" | 
					
						
							|  |  |  |   BLOB_NAME="minibrowser-mac-10.15.zip" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  |   echo ERROR: unknown build flavor - "$BUILD_FLAVOR" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | BUILD_NUMBER=$(cat ./$BROWSER_NAME/BUILD_NUMBER) | 
					
						
							| 
									
										
										
										
											2019-11-22 07:25:46 +08:00
										 |  |  | BLOB_PATH="$BROWSER_NAME/$BUILD_NUMBER/$BLOB_NAME" | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-12-11 09:43:53 +08:00
										 |  |  | if [[ ("$2" == '--check') || ("$3" == '--check') ]]; then | 
					
						
							| 
									
										
										
										
											2019-11-22 07:25:46 +08:00
										 |  |  |   EXISTS=$(az storage blob exists -c builds --account-key $AZ_ACCOUNT_KEY --account-name $AZ_ACCOUNT_NAME -n "$BLOB_PATH" --query "exists") | 
					
						
							|  |  |  |   if [[ $EXISTS == "true" ]]; then | 
					
						
							|  |  |  |     exit 0 | 
					
						
							|  |  |  |   else | 
					
						
							|  |  |  |     exit 1 | 
					
						
							|  |  |  |   fi | 
					
						
							|  |  |  | fi | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | if [[ $# < 2 ]]; then | 
					
						
							|  |  |  |   echo "missing path to zip archive to upload" | 
					
						
							|  |  |  |   echo "try '$(basename $0) --help' for more information" | 
					
						
							|  |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2020-01-18 06:23:31 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | ZIP_PATH="$2" | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | if ! [[ -f $ZIP_PATH ]]; then | 
					
						
							|  |  |  |   echo "ERROR: $ZIP_PATH does not exist" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | if ! [[ $ZIP_PATH == *.zip ]]; then | 
					
						
							|  |  |  |   echo "ERROR: $ZIP_PATH is not a zip archive (must have a .zip extension)" | 
					
						
							|  |  |  |   exit 1 | 
					
						
							|  |  |  | fi | 
					
						
							| 
									
										
										
										
											2019-11-23 09:16:47 +08:00
										 |  |  | if [[ $(uname) == MINGW* ]]; then | 
					
						
							| 
									
										
										
										
											2019-11-23 09:36:12 +08:00
										 |  |  |   # Convert POSIX path to MSYS | 
					
						
							|  |  |  |   WIN_PATH=$({ cd $(dirname $ZIP_PATH) && pwd -W; } | sed 's|/|\\|g') | 
					
						
							|  |  |  |   WIN_PATH="${WIN_PATH}\\$(basename $ZIP_PATH)" | 
					
						
							|  |  |  |   az storage blob upload -c builds --account-key $AZ_ACCOUNT_KEY --account-name $AZ_ACCOUNT_NAME -f $WIN_PATH -n $BLOB_PATH | 
					
						
							| 
									
										
										
										
											2019-11-23 09:16:47 +08:00
										 |  |  | else | 
					
						
							| 
									
										
										
										
											2019-11-23 09:36:12 +08:00
										 |  |  |   az storage blob upload -c builds --account-key $AZ_ACCOUNT_KEY --account-name $AZ_ACCOUNT_NAME -f $ZIP_PATH -n "$BLOB_PATH" | 
					
						
							| 
									
										
										
										
											2019-11-23 09:16:47 +08:00
										 |  |  | fi | 
					
						
							| 
									
										
										
										
											2019-11-21 10:01:07 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | echo "UPLOAD SUCCESSFUL!" | 
					
						
							|  |  |  | echo "--  SRC: $ZIP_PATH" | 
					
						
							|  |  |  | echo "-- SIZE: $(du -h "$ZIP_PATH" | awk '{print $1}')" | 
					
						
							|  |  |  | echo "--  DST: $BLOB_PATH" | 
					
						
							| 
									
										
										
										
											2019-11-19 10:18:28 +08:00
										 |  |  | 
 |