name: PR Checks on: pull_request: types: [opened, reopened, synchronize] branches: - master paths-ignore: - '**/*.md' - 'fastlane/**' - 'static/**' - 'captures/**' workflow_dispatch: permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: build: name: Compile (app:assembleDebug) runs-on: ubuntu-latest timeout-minutes: 30 if: ${{ github.event_name != 'pull_request' || !github.event.pull_request.draft }} steps: - name: Checkout uses: actions/checkout@v4 with: fetch-depth: 1 persist-credentials: false - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v2 - name: Set up JDK 17 uses: actions/setup-java@v4 with: distribution: 'temurin' java-version: '17' - name: Set up Android SDK uses: android-actions/setup-android@v3 - name: Set up Gradle uses: gradle/actions/setup-gradle@v4 with: gradle-version: wrapper cache-read-only: ${{ github.event_name == 'pull_request' }} gradle-home-cache-cleanup: true - name: Make gradlew executable run: chmod +x ./gradlew - name: Build debug APK (skip lint/tests) run: ./gradlew :app:assembleDebug -x lint -x test --stacktrace