name: Build all apps on: pull_request: concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number }} cancel-in-progress: true jobs: build-jvm: name: Build desktop runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: 21 - name: Assemble desktop jar run: ./gradlew :shared:jvmJar build-android: name: Build Android runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: 21 - name: Android debug build run: ./gradlew :androidApp:assembleDebug --stacktrace build-ios: name: Build iOS runs-on: macOS-latest steps: - name: Check out code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: 21 - name: Set Xcode version run: sudo xcode-select -s /Applications/Xcode_15.3.app/Contents/Developer - name: iOS debug build run: cd iosApp && xcodebuild -target "iosApp" -configuration Debug -destination 'platform=iOS Simulator,OS=latest,name=iPhone 15' CODE_SIGNING_ALLOWED='NO' build-web: name: Build web runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: 21 - name: Build web app run: ./gradlew buildWebApp build-backend: name: Build backend runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@v4 - name: Set up JDK 21 uses: actions/setup-java@v4 with: distribution: 'zulu' java-version: 21 - name: Build backend jar run: ./gradlew :backend:jar