Skip to content

Commit 32fa490

Browse files
committed
redo build script for PRs
1 parent 2671aa3 commit 32fa490

File tree

2 files changed

+51
-46
lines changed

2 files changed

+51
-46
lines changed

.github/workflows/build_nudge_pr.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ jobs:
3131
p12-file-base64: ${{ secrets.PKG_CERTIFICATES_P12_MAOS }}
3232
p12-password: ${{ secrets.PKG_CERTIFICATES_P12_PASSWORD_MAOS }}
3333

34-
- name: Run build package script
34+
- name: Run build script
3535
run: ./build_nudge.zsh
3636

3737
- name: get environment variables
@@ -40,7 +40,7 @@ jobs:
4040
echo "NUDGE_VERSION=$(/bin/cat ./build_info.txt)" >> $GITHUB_ENV
4141
echo "NUDGE_MAIN_VERSION=$(/bin/cat ./build_info_main.txt)" >> $GITHUB_ENV
4242
43-
- name: Upload packages
43+
- name: Upload zip archive
4444
uses: actions/upload-artifact@0b7f8abb1508181956e8e162db84b466c27e18ce # v3.1.2
4545
with:
4646
name: packages

build_nudge.zsh

+49-44
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,6 @@ echo "Building Nudge"
5656
$XCODE_BUILD -project "$TOOLSDIR/Nudge.xcodeproj" CODE_SIGN_IDENTITY=$APP_SIGNING_IDENTITY OTHER_CODE_SIGN_FLAGS="--timestamp"
5757
check_exit_code "$?" "Error running xcodebuild"
5858

59-
# Setup notary item
60-
$XCODE_NOTARY_PATH store-credentials --apple-id "[email protected]" --team-id "T4SK8ZXCXG" --password "$2" nudge
61-
62-
# Zip application for notary
63-
# /usr/bin/ditto -c -k --keepParent "${BUILDSDIR}/Release/Nudge.app" "${BUILDSDIR}/Release/Nudge.zip"
64-
# Notarize nudge application
65-
# $XCODE_NOTARY_PATH submit "${BUILDSDIR}/Release/Nudge.zip" --keychain-profile "nudge" --wait
66-
6759
# Create outputs folder
6860
if [ -e $OUTPUTSDIR ]; then
6961
/bin/rm -rf $OUTPUTSDIR
@@ -73,6 +65,7 @@ fi
7365
if ! [ -n "$1" ]; then
7466
echo "Did not pass option to create package"
7567
# Move notarized zip to outputs folder
68+
/usr/bin/ditto -c -k --keepParent "${BUILDSDIR}/Release/Nudge.app" "${BUILDSDIR}/Release/Nudge.zip"
7669
/bin/mv "${BUILDSDIR}/Release/Nudge.zip" "$OUTPUTSDIR"
7770
exit 0
7871
fi
@@ -125,15 +118,7 @@ python3 "${MP_BINDIR}/munki-pkg-${MP_SHA}/munkipkg" "$NUDGE_PKG_PATH"
125118
PKG_RESULT="$?"
126119
check_exit_code "$?" "Could not sign package: Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
127120

128-
# Notarize nudge package
129-
$XCODE_NOTARY_PATH submit "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg" --keychain-profile "nudge" --wait
130-
check_exit_code "$?" "Could not notarize package: Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
131-
$XCODE_STAPLER_PATH staple "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
132-
check_exit_code "$?" "Could not staple package: Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
133-
# Move the signed pkg
134-
/bin/mv "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg" "$OUTPUTSDIR"
135-
136-
# move the la to the payload folder
121+
# move the LaunchAgent to the payload folder
137122
echo "Moving LaunchAgent to payload folder"
138123
NUDGE_LA_PKG_PATH="$TOOLSDIR/NudgePkgLA"
139124
if [ -e $NUDGE_LA_PKG_PATH ]; then
@@ -165,19 +150,11 @@ echo "Moving postinstall to scripts folder"
165150
}
166151
SIGNED_JSONFILE
167152

168-
# Create the signed pkg
153+
# Create the LaunchAgent signed pkg
169154
python3 "${MP_BINDIR}/munki-pkg-${MP_SHA}/munkipkg" "$NUDGE_LA_PKG_PATH"
170155
check_exit_code "$?" "Could not sign package: Nudge_LaunchAgent-1.0.1.pkg"
171156

172-
# Notarize launchagent package
173-
$XCODE_NOTARY_PATH submit "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg" --keychain-profile "nudge" --wait
174-
check_exit_code "$?" "Could not notarize package: Nudge_LaunchAgent-1.0.1.pkg"
175-
$XCODE_STAPLER_PATH staple "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg"
176-
check_exit_code "$?" "Could not staple package: Nudge_LaunchAgent-1.0.1.pkg"
177-
# Move the signed pkg
178-
/bin/mv "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg" "$OUTPUTSDIR"
179-
180-
# move the ld to the payload folder
157+
# move the Logger to the payload folder
181158
echo "Moving LaunchDaemon to logging payload folder"
182159
NUDGE_LD_PKG_PATH="$TOOLSDIR/NudgePkgLogger"
183160
if [ -e $NUDGE_LD_PKG_PATH ]; then
@@ -191,7 +168,7 @@ echo "Moving LaunchDaemon to logging payload folder"
191168
echo "Moving postinstall to scripts folder"
192169
/bin/cp "${TOOLSDIR}/build_assets/postinstall-logger" "$NUDGE_LD_PKG_PATH/scripts/postinstall"
193170

194-
# Create the json file for the signed munkipkg LaunchAgent pkg
171+
# Create the json file for the signed munkipkg Logger pkg
195172
/bin/cat << SIGNED_JSONFILE > "$NUDGE_LD_PKG_PATH/build-info.json"
196173
{
197174
"distribution_style": true,
@@ -213,14 +190,6 @@ SIGNED_JSONFILE
213190
python3 "${MP_BINDIR}/munki-pkg-${MP_SHA}/munkipkg" "$NUDGE_LD_PKG_PATH"
214191
check_exit_code "$?" "Could not sign package: Nudge_Logger-1.0.1.pkg"
215192

216-
# Notarize logger package
217-
$XCODE_NOTARY_PATH submit "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg" --keychain-profile "nudge" --wait
218-
check_exit_code "$?" "Could not notarize package: Nudge_Logger-1.0.1.pkg"
219-
$XCODE_STAPLER_PATH staple "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg"
220-
check_exit_code "$?" "Could not staple package: Nudge_Logger-1.0.1.pkg"
221-
# Move the signed pkg
222-
/bin/mv "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg" "$OUTPUTSDIR"
223-
224193
# Create the Essentials package
225194
echo "Moving Nudge.app to payload folder"
226195
ESSENTIALS_PKG_PATH="$TOOLSDIR/NudgePkgEssentials"
@@ -259,14 +228,6 @@ SIGNED_JSONFILE
259228
python3 "${MP_BINDIR}/munki-pkg-${MP_SHA}/munkipkg" "$ESSENTIALS_PKG_PATH"
260229
check_exit_code "$?" "Could not sign package: Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
261230

262-
# Notarize Nudge Essentials package
263-
$XCODE_NOTARY_PATH submit "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg" --keychain-profile "nudge" --wait
264-
check_exit_code "$?" "Could not notarize package: Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
265-
$XCODE_STAPLER_PATH staple "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
266-
check_exit_code "$?" "Could not staple package: Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
267-
# Move the Nudge Essentials signed/notarized pkg
268-
/bin/mv "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg" "$OUTPUTSDIR"
269-
270231
# Create the Suite package
271232
echo "Moving Nudge.app to payload folder"
272233
SUITE_PKG_PATH="$TOOLSDIR/NudgePkgSuite"
@@ -308,6 +269,50 @@ SIGNED_JSONFILE
308269
python3 "${MP_BINDIR}/munki-pkg-${MP_SHA}/munkipkg" "$SUITE_PKG_PATH"
309270
check_exit_code "$?" "Could not sign package: Nudge_Suite-$AUTOMATED_NUDGE_BUILD.pkg"
310271

272+
273+
# Notarize packages
274+
if ! [ -n "$2" ]; then
275+
echo "Did not pass option to notarize packages"
276+
# Move notarized zip to outputs folder
277+
/bin/mv "${BUILDSDIR}/Release/Nudge.zip" "$OUTPUTSDIR"
278+
exit 0
279+
fi
280+
281+
# Setup notary item
282+
$XCODE_NOTARY_PATH store-credentials --apple-id "[email protected]" --team-id "T4SK8ZXCXG" --password "$2" nudge
283+
284+
# Notarize Nudge package
285+
$XCODE_NOTARY_PATH submit "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg" --keychain-profile "nudge" --wait
286+
check_exit_code "$?" "Could not notarize package: Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
287+
$XCODE_STAPLER_PATH staple "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
288+
check_exit_code "$?" "Could not staple package: Nudge-$AUTOMATED_NUDGE_BUILD.pkg"
289+
# Move the Nudge signed/notarized pkg
290+
/bin/mv "$NUDGE_PKG_PATH/build/Nudge-$AUTOMATED_NUDGE_BUILD.pkg" "$OUTPUTSDIR"
291+
292+
# Notarize Nudge LaunchAgent package
293+
$XCODE_NOTARY_PATH submit "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg" --keychain-profile "nudge" --wait
294+
check_exit_code "$?" "Could not notarize package: Nudge_LaunchAgent-1.0.1.pkg"
295+
$XCODE_STAPLER_PATH staple "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg"
296+
check_exit_code "$?" "Could not staple package: Nudge_LaunchAgent-1.0.1.pkg"
297+
# Move the Nudge LaunchAgent signed/notarized pkg
298+
/bin/mv "$NUDGE_LA_PKG_PATH/build/Nudge_LaunchAgent-1.0.1.pkg" "$OUTPUTSDIR"
299+
300+
# Notarize Nudge Logger package
301+
$XCODE_NOTARY_PATH submit "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg" --keychain-profile "nudge" --wait
302+
check_exit_code "$?" "Could not notarize package: Nudge_Logger-1.0.1.pkg"
303+
$XCODE_STAPLER_PATH staple "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg"
304+
check_exit_code "$?" "Could not staple package: Nudge_Logger-1.0.1.pkg"
305+
# Move the Nudge Logger signed/notarized pkg
306+
/bin/mv "$NUDGE_LD_PKG_PATH/build/Nudge_Logger-1.0.1.pkg" "$OUTPUTSDIR"
307+
308+
# Notarize Nudge Essentials package
309+
$XCODE_NOTARY_PATH submit "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg" --keychain-profile "nudge" --wait
310+
check_exit_code "$?" "Could not notarize package: Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
311+
$XCODE_STAPLER_PATH staple "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
312+
check_exit_code "$?" "Could not staple package: Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg"
313+
# Move the Nudge Essentials signed/notarized pkg
314+
/bin/mv "$ESSENTIALS_PKG_PATH/build/Nudge_Essentials-$AUTOMATED_NUDGE_BUILD.pkg" "$OUTPUTSDIR"
315+
311316
# Notarize Nudge Suite package
312317
$XCODE_NOTARY_PATH submit "$SUITE_PKG_PATH/build/Nudge_Suite-$AUTOMATED_NUDGE_BUILD.pkg" --keychain-profile "nudge" --wait
313318
check_exit_code "$?" "Could not notarize package: Nudge_Suite-$AUTOMATED_NUDGE_BUILD.pkg"

0 commit comments

Comments
 (0)