diff options
Diffstat (limited to 'indra/newview/installers/darwin/apple-notarize.sh')
-rwxr-xr-x | indra/newview/installers/darwin/apple-notarize.sh | 41 |
1 files changed, 22 insertions, 19 deletions
diff --git a/indra/newview/installers/darwin/apple-notarize.sh b/indra/newview/installers/darwin/apple-notarize.sh index 466898ecda..d90772ec0e 100755 --- a/indra/newview/installers/darwin/apple-notarize.sh +++ b/indra/newview/installers/darwin/apple-notarize.sh @@ -5,50 +5,53 @@ if [[ $SKIP_NOTARIZATION == "true" ]]; then fi CONFIG_FILE="$build_secrets_checkout/code-signing-osx/notarize_creds.sh" -if [ -f "$CONFIG_FILE" ]; then - source $CONFIG_FILE +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 + 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) + echo $res + requestUUID=$(echo $res | awk '/RequestUUID/ { print $NF; }') - - echo "Apple Notarization RequestUUID: $requestUUID" - if [[ -n $requestUUID ]]; then - status="in progress" - while [[ "$status" == "in progress" ]]; do + in_progress=1 + while [[ $in_progress -eq 1 ]]; do sleep 30 - status=$(xcrun altool --notarization-info "$requestUUID" \ + res=$(xcrun altool --notarization-info "$requestUUID" \ --username $USERNAME \ - --password $PASSWORD 2>&1 \ - | awk -F ': ' '/Status:/ { print $2; }' ) - echo "$status" + --password $PASSWORD 2>&1) + if [[ $res != *"in progress"* ]]; then + in_progress=0 + fi + echo "." done # log results - xcrun altool --notarization-info "$requestUUID" \ - --username $USERNAME \ - --password $PASSWORD + echo $res #remove temporary file rm "$zip_file" - if [["$status" == "success"]]; then + if [[ $res == *"success"* ]]; then xcrun stapler staple "$app_file" - elif [["$status" == "invalid"]]; then + exit 0 + elif [[ $res == *"invalid"* ]]; then echo "Notarization error: failed to process the app file" exit 1 + else + echo "Notarization error: unknown response status" fi else echo "Notarization error: couldn't get request UUID" - echo $res exit 1 fi + else + echo "Notarization error: ditto failed" + exit 1 fi fi - |