mirror of
https://github.com/android-password-store/Android-Password-Store.git
synced 2025-09-07 16:09:38 +02:00
Spotless has fixed their Gradle Configuration Cache woes in the past couple months which gets rid of my primary complaint.
106 lines
3.2 KiB
YAML
106 lines
3.2 KiB
YAML
on:
|
|
pull_request:
|
|
merge_group:
|
|
|
|
name: Check pull request
|
|
|
|
concurrency:
|
|
group: ${{ github.head_ref || github.ref_name }}
|
|
cancel-in-progress: true
|
|
|
|
env:
|
|
SENTRY_DSN: 'https://public_key@example.com/project_id'
|
|
|
|
jobs:
|
|
check-codestyle:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup build environment
|
|
uses: android-password-store/android-password-store/.github/reusable-workflows/setup-gradle@develop
|
|
|
|
- name: Check codestyle
|
|
shell: bash
|
|
run: ./gradlew spotlessCheck
|
|
|
|
- name: Upload Kotlin build report
|
|
if: "${{ always() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Build report (check-codestyle)
|
|
path: build/reports/kotlin-build/
|
|
|
|
unit-tests:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup build environment
|
|
uses: android-password-store/android-password-store/.github/reusable-workflows/setup-gradle@develop
|
|
|
|
- name: Run unit tests
|
|
shell: bash
|
|
run: ./gradlew test -PslimTests
|
|
|
|
- name: (Fail-only) Upload test report
|
|
if: "${{ failure() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Test report (unit-tests)
|
|
path: app/build/reports
|
|
|
|
- name: Upload Kotlin build report
|
|
if: "${{ always() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Build report (unit-tests)
|
|
path: build/reports/kotlin-build/
|
|
|
|
build-apks:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup build environment
|
|
uses: android-password-store/android-password-store/.github/reusable-workflows/setup-gradle@develop
|
|
|
|
- name: Build debug APKs
|
|
shell: bash
|
|
run: ./gradlew assembleFreeDebug assembleNonFreeDebug assembleNonFreeRelease
|
|
|
|
- name: Upload Kotlin build report
|
|
if: "${{ always() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Build report (build-apks)
|
|
path: build/reports/kotlin-build/
|
|
|
|
check-api:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup build environment
|
|
uses: android-password-store/android-password-store/.github/reusable-workflows/setup-gradle@develop
|
|
|
|
- name: Check library API
|
|
shell: bash
|
|
run: ./gradlew metalavaCheckCompatibilityRelease
|
|
|
|
- name: Upload Kotlin build report
|
|
if: "${{ always() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Build report (check-api)
|
|
path: build/reports/kotlin-build/
|
|
|
|
lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Setup build environment
|
|
uses: android-password-store/android-password-store/.github/reusable-workflows/setup-gradle@develop
|
|
|
|
- name: Run Lint
|
|
shell: bash
|
|
run: ./gradlew lint
|
|
|
|
- name: Upload Kotlin build report
|
|
if: "${{ always() }}"
|
|
uses: actions/upload-artifact@834a144ee995460fba8ed112a2fc961b36a5ec5a # v4.3.6
|
|
with:
|
|
name: Build report (lint)
|
|
path: build/reports/kotlin-build/
|