Skip to content

ci: refact android ci#330

Open
feihongxu0824 wants to merge 8 commits intoalibaba:mainfrom
feihongxu0824:ci/refact_android_ci
Open

ci: refact android ci#330
feihongxu0824 wants to merge 8 commits intoalibaba:mainfrom
feihongxu0824:ci/refact_android_ci

Conversation

@feihongxu0824
Copy link
Copy Markdown
Collaborator

No description provided.

The android-actions/setup-android@v4 action fails on ARM64 Linux
because the emulator SDK package is not published for that platform.
Switch to ubuntu-24.04 (x86_64) where sdkmanager fully supports the
emulator package. NDK cross-compilation for arm64-v8a works on any
host architecture.
x86_64 Linux emulator refuses ARM64 system images (QEMU2 requires
host arch match). ARM64 Linux has no emulator SDK package. macOS 14
(Apple Silicon) runs ARM64 images natively via Hypervisor.framework.

Changes:
- runs-on: macos-14
- brew install instead of apt-get
- Remove android-actions/setup-android (SDK pre-installed on macOS)
- BSD find (-perm +111) and sysctl for macOS compatibility
Replace android-actions/setup-android@v4 with manual cmdline-tools
installation. cmdline-tools is Java-based and works on any arch.
Emulator install uses 3-tier fallback: sdkmanager → canary channel
→ direct download from SDK repository XML.
ARM64 Linux has no emulator package in Google SDK. Use x86_64 Linux
with KVM hardware acceleration for fast emulator testing. Changes:
- runs-on: ubuntu-24.04 (x86_64)
- ABI: x86_64 (emulator + system image + NDK cross-compile)
- android-actions/setup-android@v4 (works on x86_64)
- Enable KVM for emulator acceleration
- All arm64-v8a refs updated to x86_64
…ility

/tmp is read-only on Android x86_64 emulator. Use relative paths
(./zvec_test_*) which resolve to the per-test working directory
set up by the CI test runner.

- collection_test.cc: replace /tmp/absolute/path with relative paths
- c_api_test.c: replace all 15 /tmp/zvec_test_* with ./zvec_test_*
Copy link
Copy Markdown
Contributor

@greptile-apps greptile-apps bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your free trial has ended. If you'd like to continue receiving code reviews, you can add a payment method here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant