# SPDX-FileCopyrightText: 2023-2024 Nextcloud GmbH and Nextcloud contributors # SPDX-FileCopyrightText: 2020-2024 Stefan Niedermann # SPDX-FileCopyrightText: 2023 Álvaro Brey # SPDX-License-Identifier: GPL-3.0-or-later name: Android CI on: pull_request: push: branches: [ main, stable-* ] permissions: contents: read jobs: validation: name: Validate Gradle Wrapper runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1 with: distribution: 'temurin' java-version: '17' check-latest: true cache: 'gradle' - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@88425854a36845f9c881450d9660b5fd46bee142 # v3.4.2 lint: name: Lint runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1 with: distribution: 'temurin' java-version: '17' check-latest: true cache: 'gradle' - name: Lint run: bash ./gradlew lintDevDebug --stacktrace --no-configuration-cache test: name: Unit tests runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1 with: distribution: 'temurin' java-version: '17' check-latest: true cache: 'gradle' - name: Unit tests run: bash ./gradlew test --stacktrace --no-configuration-cache apk: name: Generate APK runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7 - uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1 with: distribution: 'temurin' java-version: '17' check-latest: true cache: 'gradle' - name: Build debug APK run: bash ./gradlew assembleDev --stacktrace --no-configuration-cache - name: Upload APK uses: actions/upload-artifact@v4 with: name: app-dev-debug path: app/build/outputs/apk/dev/debug/app-dev-debug.apk