# This workflow uses actions that are not certified by GitHub. # They are provided by a third-party and are governed by # separate terms of service, privacy policy, and support # documentation. # This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time # For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle name: Java CI with Gradle on: push: branches: [ "main" ] pull_request: branches: [ "main" ] workflow_call: permissions: contents: read jobs: build: strategy: matrix: include: - target: iosSimulatorArm64Test os: macos-latest - target: jvmTest os: ubuntu-latest - target: linuxX64Test os: ubuntu-latest - target: testDebugUnitTest os: ubuntu-latest - target: testReleaseUnitTest os: ubuntu-latest runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v3 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 - uses: actions/cache@v3 with: path: | ~/.konan key: ${{ runner.os }}-${{ hashFiles('**/.lock') }} - name: Set up JDK 17 uses: actions/setup-java@v3 with: java-version: '17' distribution: 'temurin' - name: Build with Gradle uses: gradle/gradle-build-action@ce999babab2de1c4b649dc15f0ee67e6246c994f with: arguments: ${{ matrix.target }}