Add optimized multi-platform release CI/CD pipeline.

Split Windows builds into shared x64 prep and arch-specific packaging, add comprehensive caching, verification scripts, and a PR smoke workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-09-13 17:18:49 +03:00
Unverified
parent f9eb9cc438
commit 32583600d4
13 changed files with 4886 additions and 212 deletions
+22
View File
@@ -0,0 +1,22 @@
#!/usr/bin/env bash
set -euo pipefail
ARCH="${1:?usage: ci-package-windows-release.sh <x64|arm64>}"
export FROMCHAT_PACKAGING_JDK="${JAVA_HOME}"
export FROMCHAT_SKIP_RUST_BUILD=1
GRADLE_ARGS=(
:app:desktop:createReleaseDistributable
:app:desktop:patchWindowsJpackageReleaseIcon
:app:desktop:packSetupOnly
"-PdesktopArch=$ARCH"
--no-daemon
--console=plain
)
if [[ "$ARCH" == "arm64" ]]; then
GRADLE_ARGS+=("-PwindowsArm64")
fi
./gradlew "${GRADLE_ARGS[@]}"