name: CI
on: [pull_request]

jobs:
  check_wrapper:
    name: Validate Gradle Wrapper
    runs-on: ubuntu-latest

    steps:
      - name: Clone repo
        uses: actions/checkout@v2

      - name: Validate Gradle Wrapper
        uses: gradle/wrapper-validation-action@v1

  build:
    name: Build app
    needs: check_wrapper
    runs-on: ubuntu-latest

    steps:
      - name: Cancel previous runs
        uses: styfle/cancel-workflow-action@0.5.0
        with:
          access_token: ${{ github.token }}

      - name: Clone repo
        uses: actions/checkout@v2

      - name: Set up JDK 11
        uses: actions/setup-java@v1
        with:
          java-version: 11

      - name: Copy CI gradle.properties
        run: |
          mkdir -p ~/.gradle
          cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties

      - name: Build app
        uses: eskatos/gradle-command-action@v1
        with:
          arguments: assembleDevDebug
          wrapper-cache-enabled: true
          dependencies-cache-enabled: true
          configuration-cache-enabled: true
      - name: Upload APK
        uses: actions/upload-artifact@v2
        with:
          name: TachiyomiSY-${{ github.sha }}.apk
          path: app/build/outputs/apk/dev/debug/app-dev-debug.apk