rusackas opened a new pull request, #40235: URL: https://github.com/apache/superset/pull/40235
### SUMMARY The multi-platform `docker-build (websocket)` job on master has been flaking ~13% with `exit code: 132` (SIGILL) during `npm ci && npm run build` on the `linux/arm64` leg. The `linux/amd64` leg always succeeds on the same host, so the trigger is QEMU's user-mode x86_64→aarch64 translator mis-executing one of the instructions a newer Node native-module postinstall emits. Example failure: [run 26074698301](https://github.com/apache/superset/actions/runs/26074698301) ``` #15 [linux/arm64 build 4/4] RUN npm ci && npm run build #15 ERROR: process "/bin/sh -c npm ci && npm run build" did not complete successfully: exit code: 132 ``` [`docker/[email protected]`](https://github.com/apache/superset/blob/master/.github/actions/setup-docker/action.yml) is itself pinned, but it pulls `tonistiigi/binfmt:latest` by default — a moving target. Pin the binfmt image to `tonistiigi/binfmt:qemu-v8.1.5` (a recent, broadly-used QEMU release) so the emulator binaries stop drifting under us. ### BEFORE/AFTER | | Before | After | |---|---|---| | QEMU emulator | `tonistiigi/binfmt:latest` (moving) | `tonistiigi/binfmt:qemu-v8.1.5` (pinned) | | Image bytes produced | unchanged | unchanged | | Workflows affected | n/a | docker.yml, tag-release.yml, showtime-trigger.yml, ephemeral-env.yml (all use `./.github/actions/setup-docker` with `build: true`) | ### TESTING INSTRUCTIONS CI-only change. To validate: 1. This PR's `docker-build` matrix run exercises the pinned QEMU on both `linux/amd64` and `linux/arm64`. 2. Compare the failure rate of `docker-build (websocket)` on master against the baseline (~13% recently). ### ADDITIONAL INFORMATION - [ ] Has associated issue - [ ] Required feature flags - [ ] Changes UI - [ ] Includes DB Migration - [ ] Introduces new feature or API - [ ] Removes existing feature or API **No breaking changes:** the cross-built `linux/arm64` artifact bytes are identical regardless of which QEMU version emulated the build — DockerHub consumers see no difference. If a future Node native module needs an instruction even this QEMU version lacks, we'd see the same SIGILL and bump the pin. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
