Misc UX bug fixes & Improvements. #121
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build and run local tests | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
env: | |
RAWG_API_KEY: ${{ secrets.RAWG_API_KEY }} | |
BUGSNAG_API_KEY: ${{ secrets.BUGSNAG_API_KEY }} | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Validate Gradle Wrapper | |
uses: gradle/wrapper-validation-action@v1 | |
- name: set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'temurin' | |
cache: gradle | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v2.7.0 | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Build debug | |
run: ./gradlew assembleDebug packageDistributionForCurrentOS --stacktrace | |
- name: Run local tests | |
run: ./gradlew testDebug desktopTest --stacktrace | |
- name: Apply ktlint formatting to (.kt/s) files. | |
run: ./gradlew ktlintFormat --stacktrace | |
- name: Apply Spotless formatting if not applied. | |
run: ./gradlew spotlessApply --stacktrace | |
- name: Commit and push changes (if any). | |
uses: EndBug/add-and-commit@v9 | |
with: | |
author_name: GitHub Actions | |
author_email: github-actions@github.com | |
message: Apply style formatting | |
push: true | |
- name: Upload build outputs (APKs & Desktop binaries) | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build-outputs | |
path: | | |
**/build/outputs/* | |
**/build/compose/* | |
- name: Upload build reports | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: build-reports | |
path: ./**/build/reports | |
androidTest: | |
runs-on: macos-latest # enables hardware acceleration in the virtual machine | |
needs: build | |
timeout-minutes: 30 | |
strategy: | |
matrix: | |
api-level: [ 29, 30, 31, 33 ] | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
- name: set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'zulu' | |
- name: Setup Gradle | |
uses: gradle/gradle-build-action@v2.7.0 | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- name: Run instrumentation tests | |
uses: reactivecircus/android-emulator-runner@v2 | |
with: | |
api-level: ${{ matrix.api-level }} | |
arch: x86_64 | |
target: google_apis | |
disable-animations: true | |
disk-size: 6000M | |
heap-size: 600M | |
script: ./gradlew connectedDebugAndroidTest --stacktrace --daemon | |
- name: Upload test reports | |
if: always() | |
uses: actions/upload-artifact@v3 | |
with: | |
name: test-reports-${{ matrix.api-level }} | |
path: ./**/build/reports |