Add advanced monitoring and release infrastructure
Build and test / macos (push) Canceled after 0s
Signed release / release (push) Canceled after 0s

This commit is contained in:
2026-08-15 18:23:35 -04:00
parent a67bb5fdf3
commit 0da94715be
38 changed files with 4219 additions and 406 deletions
+22
View File
@@ -0,0 +1,22 @@
#!/bin/zsh
set -euo pipefail
PROJECT_DIR="${0:A:h:h}"
ARCHIVES_DIR="${1:-$PROJECT_DIR/dist/updates}"
DOWNLOAD_PREFIX="${PUTER_UPDATE_DOWNLOAD_PREFIX:-}"
PRIVATE_KEY="${PUTER_SPARKLE_PRIVATE_KEY:-}"
GENERATOR="$PROJECT_DIR/.build/artifacts/sparkle/Sparkle/bin/generate_appcast"
if [[ -z "$DOWNLOAD_PREFIX" || -z "$PRIVATE_KEY" ]]; then
print -u2 "Set PUTER_UPDATE_DOWNLOAD_PREFIX and PUTER_SPARKLE_PRIVATE_KEY."
exit 2
fi
if [[ ! -x "$GENERATOR" ]]; then
swift package resolve --package-path "$PROJECT_DIR"
fi
mkdir -p "$ARCHIVES_DIR"
print -rn -- "$PRIVATE_KEY" | "$GENERATOR" \
--ed-key-file - \
--download-url-prefix "$DOWNLOAD_PREFIX" \
"$ARCHIVES_DIR"
print "Generated $ARCHIVES_DIR/appcast.xml"