Skip to content

Commit

Permalink
feat(ci): migrate to firebase lab
Browse files Browse the repository at this point in the history
  • Loading branch information
Vacxe committed Jul 9, 2023
1 parent 559e436 commit 0899669
Show file tree
Hide file tree
Showing 3 changed files with 135 additions and 34 deletions.
72 changes: 72 additions & 0 deletions .github/firebase/devices-specs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
api-26:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 26
locale: 'en'
orientation: portrait
api-27:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 27
locale: 'en'
orientation: portrait
api-28:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 28
locale: 'en'
orientation: portrait
api-29:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 29
locale: 'en'
orientation: portrait
api-30:
type: instrumentation
app: apk/sample-debug.apk
test: apk/sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 30
locale: 'en'
orientation: portrait
api-31:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 31
locale: 'en'
orientation: portrait
api-32:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 30
locale: 'en'
orientation: portrait
api-33:
type: instrumentation
app: sample-debug.apk
test: sample-debug-androidTest.apk
device:
- model: MediumPhone.arm
version: 33
locale: 'en'
orientation: portrait
14 changes: 0 additions & 14 deletions .github/workflows/pr-project-check.yml

This file was deleted.

83 changes: 63 additions & 20 deletions .github/workflows/pr-sample-connected-checks.yml
Original file line number Diff line number Diff line change
@@ -1,29 +1,72 @@
name: sample-connected-checks
name: PR
on: [ pull_request ]
jobs:
integration-test:
runs-on: macOS-latest
strategy:
fail-fast: false
matrix:
api: [ 24, 25, 26, 28, 29, 30, 31, 32, 33 ]
abi: [ x86_64 ]
include:
- api: 27
abi: x86
detekt:
runs-on: ubuntu-latest
name: Detekt
steps:
- uses: actions/checkout@v1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: detekt
run: |
./gradlew clean detekt
assemble-debug-apk:
needs: [ detekt ]
name: Assemble Debug APK
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- uses: malinskiy/action-android/install-sdk@release/0.1.1
- name: connectedCheck
uses: malinskiy/action-android/emulator-run-cmd@release/0.1.1
timeout-minutes: 30
- name: Assemble Debug APK
run: bash ./gradlew sample:assembleDebug
- name: Upload app APK
uses: actions/upload-artifact@v1
with:
name: apk
path: sample/build/outputs/apk/debug/sample-debug.apk

assemble-debug-android-test-apk:
needs: [ detekt ]
name: Assemble Instrumental APK
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Assemble Instrumental APK
run: bash ./gradlew sample:assembleDebugAndroidTest
- name: Upload app APK
uses: actions/upload-artifact@v1
with:
name: apk
path: sample/build/outputs/apk/androidTest/debug/sample-debug-androidTest.apk

firebase-lab-test:
needs: [ assemble-debug-apk, assemble-debug-android-test-apk ]
name: Firebase Instrumental API
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
api: [ 30 ]
steps:
- uses: actions/checkout@v1
- name: Download APKs
uses: actions/download-artifact@v1
with:
name: apk
- name: Run tests on Firebase Test Lab for ${{ matrix.api }}
uses: asadmansr/Firebase-Test-Lab-Action@v1.0
with:
cmd: ./gradlew connectedCheck
cmdOptions: -no-snapshot-save -noaudio -no-boot-anim -cores 2 -memory 3072 -no-window -gpu swiftshader_indirect
api: ${{ matrix.api }}
tag: google_apis
abi: ${{ matrix.abi }}
arg-spec: .github/firebase/devices-specs.yml:api-${{ matrix.api }}
env:
SERVICE_ACCOUNT: ${{ secrets.FIREBASE_TESTLAB_JSON }}

0 comments on commit 0899669

Please sign in to comment.