action not working on self hosted M1 machine
See original GitHub issueI’m curious if anyone has gotten this action to work with a self hosted m1 machine and arm64 emulator. I’ve been having a bunch of issues trying to get it to work.
My first issue is that when I try to run the action with api-level: 29
and arch: arm64-v8a
without an emulator build, it gives me this error.
WARNING | unexpected system image feature string, emulator might not function correctly, please try updating the emulator.
ERROR | Unable to connect to adb daemon on port: 5037
WARNING | cannot add library /Users/administrator/code/actions-runner/_work/marvin/marvin/undefined/emulator/qemu/darwin-aarch64/lib64/vulkan/libvulkan.dylib: failed
ERROR | EglOsGlLibrary: Could not open GL library libGLESv2.dylib [dlopen(libGLESv2.dylib, 0x0002): tried: '/Users/administrator/code/actions-runner/_work/marvin/marvin/undefined/emulator/lib64/gles_swiftshader/libGLESv2.dylib' (code signature in <B48F2D27-E9C4-30EF-A948-CB28819733C9> '/Users/administrator/code/actions-r]
ERROR | EglOsEglDispatcher: Could not open EGL library libEGL.dylib [dlopen(libEGL.dylib, 0x0002): tried: '/Users/administrator/code/actions-runner/_work/marvin/marvin/undefined/emulator/lib64/gles_swiftshader/libEGL.dylib' (code signature in <5C3ABCC5-722A-3AEA-AF5B-6CEEFF8D1074> '/Users/administrator/code/actions-runner/]
and the emulator hangs forever and doesn’t start.
So, I added emulator-build: 8316981
to the args (emulator build 31.2.9) because I saw the error about the emulator needing to be updated. Which confuses me, because doesn’t the action already use the latest emulator build? Well, now I’m getting a different error:
emulator: ERROR: process is translated under Rosetta. Attempting to replace emulator installation.
emulator: Replacing via command: /Users/administrator/code/actions-runner/_work/marvin/marvin/undefined/emulator/darwin-aarch64-replace.sh (downloading ~120 MB)...
sh: /Users/administrator/code/actions-runner/_work/marvin/marvin/undefined/emulator/darwin-aarch64-replace.sh: No such file or directory
emulator: Replacement done. Please relaunch the emulator. You will also need to be using an Apple Silicon-compatible system image. Check the release updates blog (https://androidstudio.googleblog.com/) for more details.
and the emulator continues to hang.
I tracked the issue down here https://issuetracker.google.com/issues/226921798 and it seems like google is aware of that bug and will fix it in the next release. My question is, shouldn’t the emulator launch regardless of this error? Or do I need to re-launch the emulator manually somehow?
I’m mainly posting this for visibility, but also to see if anyone has had success in running this action on a self hosted m1 machine. Any tips would be greatly appreciated.
Issue Analytics
- State:
- Created a year ago
- Comments:13 (3 by maintainers)
Are you sure
default
target is available with api 31? You might need to usegoogle_apis
orplaystore
instead.@sebastianbuechler use the
android-actions/setup-android
to install SDK tools, it’ll automatically set theANDROID_SDK_ROOT
for you!