Skip to content

fix: change to macos-13 #348

fix: change to macos-13

fix: change to macos-13 #348

Workflow file for this run

name: Android Build
on:
pull_request:
branches:
- master
paths:
- '.github/workflows/android.yml'
- 'android/**'
- 'example/android/**'
push:
branches:
- master
jobs:
android-build:
runs-on: macos-13 # emulator never starts on macOS 14 https://github.com/ReactiveCircus/android-emulator-runner/issues/392#issuecomment-2106167725
concurrency:
group: ${{ github.ref }}-android
cancel-in-progress: true
steps:
- uses: oven-sh/setup-bun@v2
- uses: actions/checkout@v4
- name: Install dependencies
shell: bash
run: bun install
- name: Install example dependencies
shell: bash
run: bun install
working-directory: example
- uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '17'
cache: 'gradle'
- name: Install Maestro CLI
run: |
export MAESTRO_VERSION=1.31.0; curl -Ls "https://get.maestro.mobile.dev" | bash
brew tap facebook/fb
brew install facebook/fb/idb-companion
- name: Add Maestro to path
run: echo "${HOME}/.maestro/bin" >> $GITHUB_PATH
- name: Bundle app
run: bun run build:android
working-directory: example
- name: Create AVD and generate snapshot for caching
uses: reactivecircus/android-emulator-runner@v2
with:
# Use the slimmer aosp_atd images for working
# around "System UI isn't responding" ANR
# (Application Not Responding) error
#
# https://android-developers.googleblog.com/2021/10/whats-new-in-scalable-automated-testing.html#:~:text=Slimmer%20Emulator%20System%20Images
# https://github.com/ReactiveCircus/android-emulator-runner/issues/129
# https://github.com/upleveled/hotline-bling-codealong/pull/26#issuecomment-1094659722
target: aosp_atd
api-level: 30
arch: x86
ram-size: 4096M
channel: canary
profile: pixel
avd-name: Pixel_3a_API_30_AOSP
force-avd-creation: false
emulator-options: -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
emulator-boot-timeout: 12000
disable-animations: false
script: |
bun example:android:release
bun test:e2e:android
- name: Upload report
if: always()
uses: actions/upload-artifact@v4
with:
name: E2E Report
path: |
${{ github.workspace }}/*.mp4
${{ github.workspace }}/*.png
${{ github.workspace }}/report*.xml
~/.maestro/tests/**/*
- name: Store tests result
uses: actions/upload-artifact@v4
with:
name: e2e_android_report
path: |
report.xml