Skip to content

Commit 4cbd28f

Browse files
committed
Sign downloader with GPG
1 parent 8e39524 commit 4cbd28f

File tree

1 file changed

+29
-0
lines changed

1 file changed

+29
-0
lines changed

installer-downloader/build.sh

+29
Original file line numberDiff line numberDiff line change
@@ -234,12 +234,22 @@ function dist_macos_app {
234234
notarize_mac "$dmg_path"
235235
fi
236236

237+
# GPG sign .dmg
238+
if [[ "$SIGN" != "false" ]]; then
239+
gpg_sign "$dmg_path"
240+
fi
241+
237242
# Move to dist dir
238243
log_info "Moving final artifacts to $DIST_DIR"
239244
rm -rf "$DIST_DIR/$FILENAME.app/"
240245
rm -rf "$DIST_DIR/$FILENAME.dmg"
246+
rm -rf "$DIST_DIR/$FILENAME.dmg.asc"
241247
mv "$app_path" "$DIST_DIR/"
242248
mv "$dmg_path" "$DIST_DIR/"
249+
250+
if [[ "$SIGN" != "false" ]]; then
251+
mv "$dmg_path.asc" "$DIST_DIR/"
252+
fi
243253
}
244254

245255
# Notarize and staple a file.
@@ -284,13 +294,32 @@ function sign_win {
284294
done
285295
}
286296

297+
# Sign a file using gpg.
298+
# Arguments:
299+
# - file to sign
300+
function gpg_sign {
301+
local file="$1"
302+
log_info "Signing $file with gpg -> $file.asc"
303+
gpg -u "$CODE_SIGNING_KEY_FINGERPRINT" --pinentry-mode loopback --sign --armor --detach-sign "$file"
304+
}
305+
287306
# Copy executable and optionally sign it.
288307
function dist_windows_app {
289308
cp "$CARGO_TARGET_DIR/release/installer-downloader.exe" "$BUILD_DIR/$FILENAME.exe"
309+
290310
if [[ "$SIGN" != "false" ]]; then
291311
sign_win "$BUILD_DIR/$FILENAME.exe"
312+
gpg_sign "$BUILD_DIR/$FILENAME.exe"
292313
fi
314+
315+
log_info "Moving final artifacts to $DIST_DIR"
316+
rm -rf "$DIST_DIR/$FILENAME.exe"
317+
rm -rf "$DIST_DIR/$FILENAME.exe.asc"
318+
293319
mv "$BUILD_DIR/$FILENAME.exe" "$DIST_DIR/"
320+
if [[ "$SIGN" != "false" ]]; then
321+
mv "$BUILD_DIR/$FILENAME.exe.asc" "$DIST_DIR/"
322+
fi
294323
}
295324

296325
function main {

0 commit comments

Comments
 (0)