name: Gradle build

on: [ push ]

jobs:
  build:
    strategy:
      matrix:
        os: [ macOS-latest, windows-latest ]
    runs-on: ${{matrix.os}}
    timeout-minutes: 30
    steps:
      - name: Checkout the repo
        uses: actions/checkout@v2
      - name: Set up JDK 11
        uses: DeLaGuardo/setup-graalvm@4.0
        with:
          graalvm: 21.1.0
          java: java11
          arch: amd64
      - name: Add msys to path
        if: matrix.os == 'windows-latest'
        run: SETX PATH "%PATH%;C:\msys64\mingw64\bin"
      - name: Cache gradle
        uses: actions/cache@v2
        with:
          path: ~/.gradle/caches
          key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
          restore-keys: |
            ${{ runner.os }}-gradle-
      - name: Cache konan
        uses: actions/cache@v2
        with:
          path: ~/.konan
          key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle.kts') }}
          restore-keys: |
            ${{ runner.os }}-gradle-
      - name: Build
        run: ./gradlew build --no-daemon --stacktrace