annotate deploy/osx/notarize.sh @ 129:afd72eb2b0aa tip

Added tag v1.0-windows-32bit for changeset 7d5387c63447
author Chris Cannam
date Fri, 12 Jun 2020 17:20:52 +0100
parents 3fd66c30eb28
children
rev   line source
Chris@34 1 #!/bin/bash
Chris@34 2
Chris@34 3 ## The following assumes we have generated an app password at
Chris@34 4 ## appleid.apple.com and then stored it to keychain id "altool" using
Chris@34 5 ## e.g.
Chris@34 6 ## security add-generic-password -a "cannam+apple@all-day-breakfast.com" \
Chris@34 7 ## -w "generated-app-password" -s "altool"
Chris@34 8
Chris@34 9 ## NB to verify:
Chris@34 10 # spctl -a -v "/Applications/Application.app"
Chris@34 11
Chris@34 12 user="cannam+apple@all-day-breakfast.com"
Chris@34 13 bundleid="org.sonicvisualiser.VampPluginPackInstaller"
Chris@34 14
Chris@34 15 set -e
Chris@34 16
Chris@62 17 target="$1"
Chris@34 18
Chris@62 19 if [ ! -f "$target" ] || [ -n "$2" ]; then
Chris@62 20 echo "Usage: $0 <target>"
Chris@62 21 echo " e.g. $0 MyApplication-1.0.target"
Chris@34 22 exit 2
Chris@34 23 fi
Chris@34 24
Chris@34 25 set -u
Chris@34 26
Chris@34 27 echo
Chris@34 28 echo "Uploading for notarization..."
Chris@34 29
Chris@34 30 uuidfile=.notarization-uuid
Chris@34 31 statfile=.notarization-status
Chris@34 32 rm -f "$uuidfile" "$statfile"
Chris@34 33
Chris@34 34 xcrun altool --notarize-app \
Chris@62 35 -f "$target" \
Chris@34 36 --primary-bundle-id "$bundleid" \
Chris@34 37 -u "$user" \
Chris@34 38 -p @keychain:altool 2>&1 | tee "$uuidfile"
Chris@34 39
Chris@34 40 uuid=$(cat "$uuidfile" | grep RequestUUID | awk '{ print $3; }')
Chris@34 41
Chris@34 42 if [ -z "$uuid" ]; then
Chris@34 43 echo
Chris@34 44 echo "Failed (no UUID returned, check output)"
Chris@34 45 exit 1
Chris@34 46 fi
Chris@34 47
Chris@34 48 echo "Done, UUID is $uuid"
Chris@34 49
Chris@34 50 echo
Chris@34 51 echo "Waiting and checking for completion..."
Chris@34 52
Chris@34 53 while true ; do
Chris@34 54 sleep 30
Chris@34 55
Chris@34 56 xcrun altool --notarization-info \
Chris@34 57 "$uuid" \
Chris@34 58 -u "$user" \
Chris@34 59 -p @keychain:altool 2>&1 | tee "$statfile"
Chris@34 60
Chris@34 61 if grep -q 'Package Approved' "$statfile"; then
Chris@34 62 echo
Chris@34 63 echo "Approved! Status output is:"
Chris@34 64 cat "$statfile"
Chris@34 65 break
Chris@34 66 elif grep -q 'in progress' "$statfile" ; then
Chris@34 67 echo
Chris@34 68 echo "Still in progress... Status output is:"
Chris@34 69 cat "$statfile"
Chris@34 70 echo "Waiting..."
Chris@34 71 else
Chris@34 72 echo
Chris@34 73 echo "Failure or unknown status in output:"
Chris@34 74 cat "$statfile"
Chris@34 75 exit 2
Chris@34 76 fi
Chris@34 77 done
Chris@34 78
Chris@34 79 echo
Chris@62 80 echo "Done, don't forget to staple the target or its contents"
Chris@62 81 echo "(e.g. xcrun stapler staple '$target')"
Chris@62 82 exit 0
Chris@34 83