summaryrefslogtreecommitdiff
path: root/indra/newview/installers/darwin/apple-notarize.sh
diff options
context:
space:
mode:
authorBrad Payne (Vir Linden) <vir@lindenlab.com>2021-10-22 18:11:48 +0100
committerBrad Payne (Vir Linden) <vir@lindenlab.com>2021-10-22 18:11:48 +0100
commite5cd9cb90f74c46ad59ba697bb70e7a425bf631d (patch)
tree35cf0536f89af885f670a3b788ff534667ce656a /indra/newview/installers/darwin/apple-notarize.sh
parent910daee8887b41619b07a1e5c4431f77c095dac5 (diff)
parentda183230b0f08d50ad35330fc8ef51307a8b6f84 (diff)
merge
Diffstat (limited to 'indra/newview/installers/darwin/apple-notarize.sh')
-rwxr-xr-xindra/newview/installers/darwin/apple-notarize.sh54
1 files changed, 54 insertions, 0 deletions
diff --git a/indra/newview/installers/darwin/apple-notarize.sh b/indra/newview/installers/darwin/apple-notarize.sh
new file mode 100755
index 0000000000..466898ecda
--- /dev/null
+++ b/indra/newview/installers/darwin/apple-notarize.sh
@@ -0,0 +1,54 @@
+#!/bin/sh
+if [[ $SKIP_NOTARIZATION == "true" ]]; then
+ echo "Skipping notarization"
+ exit 0
+fi
+
+CONFIG_FILE="$build_secrets_checkout/code-signing-osx/notarize_creds.sh"
+if [ -f "$CONFIG_FILE" ]; then
+ source $CONFIG_FILE
+ app_file="$1"
+ zip_file=${app_file/app/zip}
+ ditto -c -k --keepParent "$app_file" "$zip_file"
+ if [ -f "$zip_file" ]; then
+ res=$(xcrun altool --notarize-app --primary-bundle-id "com.secondlife.viewer" \
+ --username $USERNAME \
+ --password $PASSWORD \
+ --asc-provider $ASC_PROVIDER \
+ --file "$zip_file" 2>&1)
+ requestUUID=$(echo $res | awk '/RequestUUID/ { print $NF; }')
+
+ echo "Apple Notarization RequestUUID: $requestUUID"
+
+ if [[ -n $requestUUID ]]; then
+ status="in progress"
+ while [[ "$status" == "in progress" ]]; do
+ sleep 30
+ status=$(xcrun altool --notarization-info "$requestUUID" \
+ --username $USERNAME \
+ --password $PASSWORD 2>&1 \
+ | awk -F ': ' '/Status:/ { print $2; }' )
+ echo "$status"
+ done
+ # log results
+ xcrun altool --notarization-info "$requestUUID" \
+ --username $USERNAME \
+ --password $PASSWORD
+
+ #remove temporary file
+ rm "$zip_file"
+
+ if [["$status" == "success"]]; then
+ xcrun stapler staple "$app_file"
+ elif [["$status" == "invalid"]]; then
+ echo "Notarization error: failed to process the app file"
+ exit 1
+ fi
+ else
+ echo "Notarization error: couldn't get request UUID"
+ echo $res
+ exit 1
+ fi
+ fi
+fi
+