Skip to content

ci: cover both x64 and arm64 macOS .pkg in test-distribution#6103

Open
Fedr wants to merge 1 commit into
masterfrom
ci/macos-test-arm64
Open

ci: cover both x64 and arm64 macOS .pkg in test-distribution#6103
Fedr wants to merge 1 commit into
masterfrom
ci/macos-test-arm64

Conversation

@Fedr
Copy link
Copy Markdown
Contributor

@Fedr Fedr commented May 15, 2026

Problem

test-distribution validates only the x64 macOS .pkg (test-distribution.yml#L216-256). The arm64 .pkg is built and uploaded to every release but never installed and launched in CI, so regressions specific to Apple Silicon packaging (linker paths, install-name rewrites, code-signing) ship without warning. Linux has had this covered for a long time via the separate linux-x64-test / linux-arm64-test jobs.

Change

Split the single macos-test job into two parallel jobs that mirror the Linux pattern:

  • macos-x64-testmacos-15-intel, downloads *x64.pkg (unchanged behavior, just renamed)
  • macos-arm64-testmacos-latest (github-hosted Apple Silicon), downloads *arm.pkg

Steps are otherwise identical: install via sudo installer, install runtime deps from the bundled requirements/macos.txt, launch MeshViewer and meshconv, build the C and C++ examples against the installed framework.

Test plan

  • After this merges, the next master release's test-distribution chain shows both macos-x64-test and macos-arm64-test running
  • Both pass against a clean macos-15 (Intel and Apple Silicon) host

Non-macOS CI is disabled via labels — this PR only touches the macOS portion of test-distribution.yml.

test-distribution validated only the x64 macOS .pkg, so the arm64 .pkg
was uploaded to releases without any end-to-end install/launch check --
mirroring the gap that linux-x64-test / linux-arm64-test long ago
closed for Linux.

Split the single macos-test job into macos-x64-test (existing,
macos-15-intel, *x64.pkg) and a new macos-arm64-test (macos-latest
github-hosted Apple Silicon, *arm.pkg). Steps are otherwise identical:
install via sudo installer, brew install runtime deps from the bundled
requirements/macos.txt, run MeshViewer / meshconv, build C and C++
examples against the installed framework.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant