-
Type:
Task
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: Tests
-
None
-
None
-
PHP Drivers
-
None
-
None
-
None
-
None
-
None
-
None
Context
macOS was removed from the Evergreen matrix on 2019-02-26 in commit 28226bb2 ("Remove macOS from Evergreen matrix (pending PHPC-869)"). The blocker was the lack of a PHP toolchain on the macOS hosts, tracked in BUILD-7783. PHPC-869 was later closed as Won't Do.
As a result, the extension is tested on Linux only. The configuration contains no macOS distro, and the build scripts still handle Darwin, but no job exercises that path.
PHPLIB-1978 (Migrate macOS 14 tests to macOS 15) was closed as Works as Designed because the configuration has no macos-14 distro. Restoring macOS coverage means adding a current macOS 15 variant.
Scope
* Add a build variant that runs on a macOS 15 host (macos-15 or macos-15-arm64, whichever DevProd makes available).
* Make the PHP lookup Darwin-aware. .evergreen/compile-unix.sh currently searches only /opt/php/${PHP_VERSION}-64bit, which is a Linux path. On macOS, resolve the Homebrew PHP prefix instead.
* Install or verify the PHP toolchain on the macOS hosts. Homebrew PHP is preferred because it matches what users do. This is the historical blocker in BUILD-7783.
* Build the extension from source on the macOS host and run make test.
* Add the variant to the pull request aliases for at least one PHP version, to keep patch build times reasonable.
* Document the variant in .evergreen/architecture.md.
Acceptance criteria
* A patch build shows the macOS task passing.
* The macOS task runs in the default pull request build for at least one PHP version.
* A build or test failure on macOS fails the task. Skips are explicit and documented.
Dependencies
* macOS 15 hosts must be available (DEVPROD-45657).
* PHP must be installed on the hosts (BUILD-7783).
Notes
* Do not replace or reduce Linux coverage.
* The related library ticket covers the same work in mongo-php-library.
- related to
-
PHPLIB-1982 Restore macOS testing in Evergreen
-
- Needs Triage
-