From 439a691516141f7aa9dc0f303ab243bdd2b49b67 Mon Sep 17 00:00:00 2001 From: "goodolclint-claude[bot]" <323206664+goodolclint-claude[bot]@users.noreply.github.com> Date: Tue, 1 Sep 2026 16:53:54 -0500 Subject: [PATCH] docs: the dev-infra image needs Rosetta on Apple Silicon MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit "x86 only" was too strong. The image is amd64-only — proxmox-auto-install-assistant and the HashiCorp apt repo publish no arm64 — but it builds and runs on Apple Silicon once Docker Desktop's Rosetta emulation is on. Under the default qemu translation pwsh starts and reports its version, then segfaults on module discovery (uncaught target signal 11), which fails the build at Install-Module Pester and would fail Pester at test time. With Rosetta enabled the same Dockerfile builds to within 150 bytes of the image CI pushed for this commit, and Invoke-Pester runs. Worth stating explicitly because the failure is silent: the build step exits 1 with no diagnostic output, which reads as a Dockerfile defect rather than an emulation problem. --- CLAUDE.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 643cf72..0e31a96 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -93,7 +93,13 @@ or delete the installed copy. (`dotnet build` writes there; only `dotnet publish ./publish/netstandard2.0`, which CI runs, creates `publish/`.) The integration flow needs the `dev-infra` container — the same image CI runs its jobs in -(`tests/Dockerfile.test`, target `dev-infra`). x86 only: +(`tests/Dockerfile.test`, target `dev-infra`). + +The image is amd64-only: `proxmox-auto-install-assistant` and the HashiCorp apt repo publish no +arm64. On Apple Silicon turn on Docker Desktop's **Use Rosetta for x86_64/amd64 emulation** +before building or running it. Under the default qemu translation `pwsh` starts but segfaults +on module discovery, which fails the image build at `Install-Module Pester`; under Rosetta the +same Dockerfile builds byte-equivalent to CI's. ```bash pve() {