From 4b26dbc2eb12faf8357458e9e9bf0e4208fb28e5 Mon Sep 17 00:00:00 2001 From: Armin Briegel <1933192+scriptingosx@users.noreply.github.com> Date: Fri, 30 Oct 2020 12:10:57 +0100 Subject: [PATCH] add script to build an Installomator installation pkg #84 --- .gitignore | 2 + Installomator-0.5.pkg | Bin 0 -> 31546 bytes buildInstallomatorPkg.sh | 115 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 117 insertions(+) create mode 100644 Installomator-0.5.pkg create mode 100755 buildInstallomatorPkg.sh diff --git a/.gitignore b/.gitignore index 048d018..594f1a2 100644 --- a/.gitignore +++ b/.gitignore @@ -9,4 +9,6 @@ scratch/ *.app *.tbz +# do include Installomator .pkg files +!Installomator-*.pkg diff --git a/Installomator-0.5.pkg b/Installomator-0.5.pkg new file mode 100644 index 0000000000000000000000000000000000000000..5d18de03e613dcae3ec4b5293aad94253a9a8fb4 GIT binary patch literal 31546 zcmeFZbyQtTzBS6m-QC?~qru&s5Zv9}-Q8V6a1Abj;O@cQHMqMaeB_+d-RJb}`}G*_ zk9*%6uQy|}sahp#)vB6v{$}lkyMZGK2tEh^`A&Fnz{em~?IimR&D+9&w#*GnR6ddM{@WYwz9wL}!- zUXLPQwotRirBr-h179HgJfNkkuaa1vewtXxc24X4yfwO6RRY6aD&al z<-PnOAGrwyTX3NU{xh;0GSEBd(hm3o`UkzE7d2wr$tpV1e#=DAx!!nfkT=d5FR!YB zJK_=11=$T-%UE{OaqbIB3j!p@WPR+)99M*NiLHEh{lIPL4-Jy1Jn=wpmB$NCB+q8} zawz@qtCt@#+6!TJ$g_>7dJK1JE|J9Op$5>V#KfCH6tBk}eZ4!e{y5!bpPs+}$V8HN zL8Z)Ah7w@Y$o5pr-Y=HxYh)P|uj3`N$Y0RfiT9|?T^VUx9=+_>s%a^8`XN`lgHNq=bpptX75eOsa6Y_OzMrUU)9Mn2^4{R0(5a)C6k< zS6o#N8fL#9&2#=Pt7e1d!hKi$IVeWnV9*d(Ba5^HT$RZYyTZym%UvriZn?Q*M^kNC z94|_8?!yOmj@Gpu!~97wM~=Jr8Dnq7lJFaU~x?moXR-9>FDjf&mOJHFK|fc zljs*OgAI~zfqyZKnLv!XG`C4_^U#sRC3PF6ld+%b*;SXDsdG8Q+FR=Xx+=qIGUgPi z#i+k>H2(ZaHt@%NRZ7rC-c77YYS5=;b4Ef;J2t|GFY}R4NqmdFtBbZMeD_ty&b3qX zt~~84mW(xBst}I$Xt6|b{&H7*mf7q-Rorll64C3AZC3+7Tb=*=<;db z?oKz_S7#w)W)Lr#Z>ySUOJMLT&WLxP=o%9c4&HYz`UFokzA8=U=St- z57l*xaO(pJooS#PCBk^bkvlom¬E+EB+ejxR2|atEvd`v^UG*$QJS8(l>wZR&1O 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 literal 0 HcmV?d00001 diff --git a/buildInstallomatorPkg.sh b/buildInstallomatorPkg.sh new file mode 100755 index 0000000..debfa6a --- /dev/null +++ b/buildInstallomatorPkg.sh @@ -0,0 +1,115 @@ +#!/bin/zsh + +# buildInstallomatorPkg.sh + +# this script will create a pkg installer that places the Installomator.sh +# script file in /usr/local/Installomator/Installomator.sh + +# this is for use with MDM systems that require the tools to be local + +export PATH=/usr/bin:/bin:/usr/sbin:/sbin + +pkgname="Installomator" +version="0.5" +identifier="com.scriptingosx.${pkgname}" +install_location="/usr/local/Installomator/" +signature="Developer ID Installer: Armin Briegel (JME5BW3F3R)" +dev_team="JME5BW3F3R" # asc-provider +dev_account="developer@scriptingosx.com" +dev_keychain_label="Developer-altool" + + +scriptfolder=$(dirname "$0") +projectfolder=$(mktemp -d) +payloadfolder="${projectfolder}/payload" + +# MARK: functions +requeststatus() { # $1: requestUUID + requestUUID=${1?:"need a request UUID"} + req_status=$(xcrun altool --notarization-info "$requestUUID" \ + --username "$dev_account" \ + --password "@keychain:$dev_keychain_label" 2>&1 | awk -F ': ' '/Status:/ { print $2; }' ) + echo "$req_status" +} + +notarizefile() { # $1: path to file to notarize, $2: identifier + filepath=${1:?"need a filepath"} + identifier=${2:?"need an identifier"} + + # upload file + echo "## uploading $filepath for notarization" + requestUUID=$(xcrun altool --notarize-app \ + --primary-bundle-id "$identifier" \ + --username "$dev_account" \ + --password "@keychain:$dev_keychain_label" \ + --asc-provider "$dev_team" \ + --file "$filepath" 2>&1 | awk '/RequestUUID/ { print $NF; }') + + echo "Notarization RequestUUID: $requestUUID" + + if [[ $requestUUID == "" ]]; then + echo "could not upload for notarization" + exit 1 + fi + + # wait for status to be not "in progress" any more + request_status="in progress" + while [[ "$request_status" == "in progress" ]]; do + echo -n "waiting... " + sleep 10 + request_status=$(requeststatus "$requestUUID") + echo "$request_status" + done + + if [[ $request_status != "success" ]]; then + echo "## could not notarize $filepath" + xcrun altool --notarization-info "$requestUUID" \ + --username "$dev_account" \ + --password "@keychain:$dev_keychain_label" + exit 1 + fi + +} + +# MARK: main code starts here + +# create a projectfolder with a payload folder +if [[ ! -d "${payloadfolder}" ]]; then + mkdir -p "${payloadfolder}" +fi + +# copy the script file +cp ${scriptfolder}/Installomator.sh ${payloadfolder} +chmod 755 ${payloadfolder}/Installomator.sh + +# build the component package +pkgpath="${scriptfolder}/${pkgname}.pkg" + +pkgbuild --root "${projectfolder}/payload" \ + --identifier "${identifier}" \ + --version "${version}" \ + --install-location "${install_location}" \ + "${pkgpath}" + + +# build the product archive + +productpath="${scriptfolder}/${pkgname}-${version}.pkg" + +productbuild --package "${pkgpath}" \ + --version "${version}" \ + --identifier "${identifier}" \ + --sign "${signature}" \ + "${productpath}" + +# clean up project folder +rm -Rf "${projectfolder}" + +# upload for notarization +notarizefile "$productpath" "$identifier" + +# staple result +echo "## Stapling $productpath" +xcrun stapler staple "$productpath" + +exit 0