Skip to content

Build Compose Multiplatform App #2

Build Compose Multiplatform App

Build Compose Multiplatform App #2

Workflow file for this run

name: Build Compose Multiplatform App
on:
push:
branches: [main]
pull_request:
workflow_dispatch:
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: temurin
java-version: 17
- name: Make Gradle Wrapper executable (Linux/macOS)
if: runner.os != 'Windows'
run: chmod +x ./gradlew
- name: Run Gradle packageAll (Linux/macOS)
if: runner.os != 'Windows'
run: ./gradlew :composeApp:packageAll --no-daemon
- name: Run Gradle packageReleaseMsi (Windows)
if: runner.os == 'Windows'
run: .\gradlew :composeApp:packageReleaseMsi --no-daemon
- name: Upload Installer Artifact (Linux)
if: runner.os == 'Linux'
uses: actions/upload-artifact@v4
with:
name: deb-installer
path: composeApp/build/compose/binaries/main/deb/*.deb
- name: Upload Installer Artifact (macOS)
if: runner.os == 'macOS'
uses: actions/upload-artifact@v4
with:
name: dmg-installer
path: composeApp/build/compose/binaries/main/dmg/*.dmg
- name: Upload Installer Artifact (Windows)
if: runner.os == 'Windows'
uses: actions/upload-artifact@v4
with:
name: msi-installer
path: composeApp/build/compose/binaries/main/msi/*.msi