Files
Meshtastic-Android/.github
James Rich 6170ed06cd ci: add support for building and attaching desktop distributions to releases
This commit updates the release and promotion workflows to support building desktop binaries for macOS, Windows, and Linux. It introduces a `build_desktop` flag to toggle this functionality and ensures that generated artifacts (DMG, MSI, EXE, DEB, RPM, AppImage) are uploaded and attached to the GitHub release.

Specific changes include:
- **Workflow Inputs**: Added a `build_desktop` boolean input to `promote.yml`, `release.yml`, and `create-or-promote-release.yml`.
- **Desktop Build Job**:
    - Implemented a `release-desktop` job in `promote.yml` using a matrix strategy for `macos-latest`, `windows-latest`, and `ubuntu-24.04`.
    - Added logic to install `libfuse2` on Linux for AppImage support.
    - Configured Gradle to run `:desktop:packageReleaseDistributionForCurrentOS`.
    - Added artifact upload steps for various desktop binary formats.
- **Release Integration**:
    - Updated `update-github-release` and `github-release` jobs to conditionally download desktop artifacts.
    - Modified the GitHub Release CLI command to include desktop binaries in the release assets when `build_desktop` is enabled.
    - Added safety checks (`!cancelled() && !failure()`) to the release jobs to ensure proper execution flow.
- **Workflow Coordination**: Passed the `build_desktop` parameter through the `create-or-promote-release.yml` orchestrator to both the release and promote sub-workflows.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
2026-03-26 14:45:49 -05:00
..
2023-01-28 12:11:35 -03:00