87 lines
2.0 KiB
YAML
87 lines
2.0 KiB
YAML
name: Android Master CI
|
|
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
- 'main'
|
|
|
|
jobs:
|
|
unit-tests:
|
|
name: Run Unit Tests
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up JDK 11
|
|
uses: actions/setup-java@v2
|
|
with:
|
|
distribution: 'adopt'
|
|
java-version: '11'
|
|
|
|
- name: Run Presentation Unit Tests
|
|
run: ./gradlew :presentation:testDebugUnitTest
|
|
|
|
- name: Run Data Unit Tests
|
|
run: ./gradlew :data:testDebugUnitTest
|
|
|
|
- name: Run Domain Unit Tests
|
|
run: ./gradlew :domain:test
|
|
|
|
instrumented-tests:
|
|
name: Run Android Tests
|
|
runs-on: macos-latest
|
|
timeout-minutes: 20
|
|
strategy:
|
|
matrix:
|
|
api-level: [ 29 ] #[21, 23, 29]
|
|
target: [ default ] #[default, google_apis]
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up JDK 11
|
|
uses: actions/setup-java@v2
|
|
with:
|
|
distribution: 'adopt'
|
|
java-version: '11'
|
|
|
|
- name: Run All Android Tests
|
|
uses: reactivecircus/android-emulator-runner@v2.19.1
|
|
#continue-on-error: true
|
|
with:
|
|
api-level: ${{ matrix.api-level }}
|
|
target: ${{ matrix.target }}
|
|
arch: x86_64
|
|
script: ./gradlew connectedCheck
|
|
|
|
- name: Upload emulator tests artifact
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: emulator_tests
|
|
path: ./presentation/build/reports/androidTests/connected
|
|
|
|
apk:
|
|
name: Generate Debug APK
|
|
runs-on: ubuntu-18.04
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Set up JDK 11
|
|
uses: actions/setup-java@v2
|
|
with:
|
|
distribution: 'adopt'
|
|
java-version: '11'
|
|
|
|
- name: Build Debug APK
|
|
run: bash ./gradlew :presentation:assembleDebug --stacktrace
|
|
|
|
- name: Upload Debug APK
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: apk
|
|
path: presentation/build/outputs/apk/debug/presentation-debug.apk |