Commit 5225257
authored
fix(build-system-tests): bound Android emulator boot-wait to stop 6h canary hangs (#7031)
The macos-15-intel React Native Android canary regularly cold-boots into a
wedged emulator. With no job timeout and an unbounded `adb wait-for-device`
boot-wait loop, the job spins until GitHub's 6h hard limit cancels it.
Compounding this, the snapshot cache key always hits but the cached snapshot
is incompatible with the current runner emulator ("Failed to load snapshot
'default_boot'"), while the snapshot-resave step is gated on a cache miss, so
the broken snapshot stays sticky.
Minimum mitigation:
- timeout-minutes: 45 on the emulator job so a wedged boot can't burn 6h.
- Wrap the boot-wait in `timeout 420` in both the cold-boot and cached steps;
on timeout, emit a ::error:: annotation, dump `adb devices`, and fail fast.
This needs GNU coreutils on macOS (brew install coreutils), mirroring the
proven recipe in reusable-e2e.yml.
- Bump the snapshot cache key v1 -> v2 so a compatible snapshot is regenerated
on the next cold boot.
Follow-up (not in this PR): replace the hand-rolled emulator launch with
reactivecircus/android-emulator-runner and move the Android matrix to
ubuntu-latest (KVM) for reliability and speed.
Co-authored-by: soberm <12175134+soberm@users.noreply.github.com>1 parent 6cdc424 commit 5225257
1 file changed
Lines changed: 15 additions & 3 deletions
Lines changed: 15 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
| 15 | + | |
14 | 16 | | |
15 | 17 | | |
16 | 18 | | |
| |||
87 | 89 | | |
88 | 90 | | |
89 | 91 | | |
90 | | - | |
| 92 | + | |
91 | 93 | | |
92 | 94 | | |
93 | 95 | | |
| |||
126 | 128 | | |
127 | 129 | | |
128 | 130 | | |
| 131 | + | |
| 132 | + | |
129 | 133 | | |
130 | 134 | | |
131 | 135 | | |
132 | 136 | | |
133 | 137 | | |
134 | 138 | | |
135 | 139 | | |
136 | | - | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
137 | 145 | | |
138 | 146 | | |
139 | 147 | | |
| |||
148 | 156 | | |
149 | 157 | | |
150 | 158 | | |
151 | | - | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
152 | 164 | | |
153 | 165 | | |
154 | 166 | | |
| |||
0 commit comments