ci: fix Android CI (emulator create_routes network race + macOS NDK bump) - #848
Merged
Merged
Conversation
The android-macos-ndk21/aarch64-linux-android29 job fails on the macos-latest runner. NDK 21 host tools link against system libc++. On macos26 libc++ enforces typed new/delete, and the old ndk tools trips this error: "libc++abi: Terminating due to typed operator new being invoked before its static initializer in libcxx has been executed." Bump the macOS "oldest tested" entry to NDK 25, whose host tools are compatible with macOS 26. Also bump cmake to 3.22.1 to match the 25 toolchain
…empty interface list
|
🤖 Pull request description does not have a link to an issue. |
baranovmv
marked this pull request as ready for review
August 6, 2026 19:39
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two fixes for the Android CI jobs.
1.
android-emu—create_routesnetwork race (emulator.sh)The
android-emu-ndk26/x86_64-android33job failed in the Run tests step atscripts/android_emu/emulator.sh create_routes, exiting 1 immediately after--- creating routeswith no further output.Root cause: the block runs under
set -euo pipefailand harvested interfaces viaadb shell "ip a" | grep 'state UP' | .... A reportedsys.boot_completeddoesnot guarantee any interface has reached
state UPyet, sogrepmatched nothing,exited 1, and
pipefail+set -eaborted the whole job before any route was added.Changes to the
create_routesaction:adb shell ip afor diagnostics.pipefailso an empty match warns andcontinues instead of aborting.
adbcalls nolonger consume the loop's stdin and skip interfaces.
su 0 ip route addfailure still hard-fails viarun_cmd.2.
android-macos— bump oldest NDK 21 → 25 (build.yml)The oldest tested NDK (21) crashes on the macOS 26 runner image; bump it to 25.