disable emulator vulkan and record emulator exit status

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Samuel Newman
2026-07-19 11:56:24 +03:00
parent 3464ea4c63
commit 04c0b1c6bf
+29 -10
View File
@@ -252,16 +252,33 @@ jobs:
sudo chmod 666 /dev/kvm sudo chmod 666 /dev/kvm
fi fi
"$android_sdk/emulator/emulator" @nightly-e2e \ # Disable the emulator's Vulkan feature so graphics goes through the
-port 5554 \ # plain GLES SwiftShader translator. gfxstream Vulkan via SwiftShader
-no-window \ # Subzero crashed qemu silently at a deterministic rendering step;
-gpu swiftshader_indirect \ # GLES-only is sufficient since the guest renders with skiagl.
-no-snapshot \ #
-noaudio \ # Run the launch in a background subshell so the emulator's exit
-no-boot-anim \ # status is recorded when it dies (it is otherwise backgrounded and
-camera-back none \ # its death is invisible). Write the emulator's real PID - not the
> artifacts/android/emulator.log 2>&1 & # subshell's - to emulator.pid, since cleanup-nightly-e2e.sh kills the
echo "$!" > artifacts/android/emulator.pid # PID from that file directly; killing the subshell would not kill the
# emulator child.
(
"$android_sdk/emulator/emulator" @nightly-e2e \
-port 5554 \
-no-window \
-gpu swiftshader_indirect \
-feature -Vulkan \
-no-snapshot \
-noaudio \
-no-boot-anim \
-camera-back none \
> artifacts/android/emulator.log 2>&1 &
emulator_pid=$!
echo "$emulator_pid" > artifacts/android/emulator.pid
wait "$emulator_pid"
echo "Emulator exited with status $?" >> artifacts/android/emulator.log
) &
adb -s emulator-5554 wait-for-device adb -s emulator-5554 wait-for-device
booted=false booted=false
@@ -306,6 +323,8 @@ jobs:
{ {
echo "=== Emulator process status ===" echo "=== Emulator process status ==="
pgrep -fa "emulator.*nightly-e2e" || echo "Emulator process not found" pgrep -fa "emulator.*nightly-e2e" || echo "Emulator process not found"
echo "=== Emulator exit status ==="
grep "Emulator exited" artifacts/android/emulator.log || echo "No emulator exit status recorded"
echo "=== OOM killer check ===" echo "=== OOM killer check ==="
sudo dmesg 2>/dev/null | grep -i "oom\|killed\|out of memory" | tail -20 || echo "dmesg not available" sudo dmesg 2>/dev/null | grep -i "oom\|killed\|out of memory" | tail -20 || echo "dmesg not available"
echo "=== Emulator crash database ===" echo "=== Emulator crash database ==="