ci: run arm64 emulator build on ubuntu-24.04-arm (same-arch TCG)

Cross-arch TCG on ubicloud-standard-8 either SIGTRAPs during migrations
(old QEMU) or hangs in wait-for-deps with no progress. GitHub's
ubuntu-24.04-arm runner is an Azure arm64 VM — same-arch TCG, no KVM
(no nested virt exposed) — but empirically completes migrations, the
dep setup, and image packaging end-to-end (verified on the diagnostics
branch run). Only failure there was the backend smoke test hitting its
300s timeout, which the parent commit on this branch already skips on
arm64.

Keep amd64 on ubicloud-standard-8 for its KVM acceleration.
This commit is contained in:
Bilal Godil 2026-04-10 12:33:46 -07:00
parent 6c5615b931
commit 253838287d

View File

@ -26,14 +26,23 @@ env:
jobs:
build:
name: Build QEMU Image (${{ matrix.arch }})
runs-on: ubicloud-standard-8
runs-on: ${{ matrix.runner }}
timeout-minutes: 120
strategy:
fail-fast: false
matrix:
include:
# amd64 runs natively under KVM on ubicloud's amd64 runner.
- arch: amd64
runner: ubicloud-standard-8
# arm64 runs under same-arch TCG on GitHub's native arm64 runner.
# No KVM (Azure Hyper-V doesn't expose nested virt on arm64) but
# same-arch TCG avoids the V8 JIT translation crashes that kill
# cross-arch TCG, and the smoke test is skipped on arm64 since
# the backend can't come up within any reasonable window under
# software emulation.
- arch: arm64
runner: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v6