name: Windows x64 installer on: workflow_dispatch: inputs: version: description: "App version (e.g. 1.1.4)" required: false default: "1.1.4" push: tags: - "win-x64-*" concurrency: group: desktop-windows-x64-${{ github.ref }} cancel-in-progress: true env: GRADLE_OPTS: >- -Dorg.gradle.jvmargs=-Xmx6g -Dkotlin.daemon.jvm.options=-Xmx6g -Dorg.gradle.parallel=true jobs: windows-x64: runs-on: windows-latest timeout-minutes: 45 steps: - uses: actions/checkout@v5 - uses: ./.github/actions/setup-java-gradle - uses: dtolnay/rust-toolchain@stable with: targets: x86_64-pc-windows-msvc - name: Cache Cargo uses: actions/cache@v5 with: path: | ~/.cargo/registry ~/.cargo/git app/desktop/windows-setup/target key: cargo-windows-${{ runner.os }}-${{ hashFiles('app/desktop/windows-setup/Cargo.lock') }} restore-keys: | cargo-windows-${{ runner.os }}- - id: ver name: Resolve version shell: bash run: | if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then V="${{ inputs.version }}" else V="${GITHUB_REF_NAME#win-x64-}" fi echo "version=$V" >> "$GITHUB_OUTPUT" - uses: ./.github/actions/set-version with: version: ${{ steps.ver.outputs.version }} - name: Package Windows x64 installer shell: bash run: | export FROMCHAT_PACKAGING_JDK="$JAVA_HOME" ./gradlew :app:desktop:packageBetaWindows -PbetaDesktop -PdesktopArch=x64 --no-daemon --console=plain - uses: actions/upload-artifact@v5 with: name: windows-x64-installer path: app/desktop/build/distributions/release/FromChat-Setup-*-beta2.exe if-no-files-found: error