Skip to content

Commit cc0217e

Browse files
linesightclaude
andcommitted
Fix macOS CI: use --single-process to bypass Mach port rendezvous failures
On macOS-14 CI runners, bootstrap_look_up for the MachPortRendezvousServer fails for all child processes (renderer, network service) even with --no-sandbox. This is a bootstrap-namespace restriction in the CI environment that --no-sandbox cannot override. --single-process runs all Chromium subprocesses (renderer, network, GPU) inside the browser process, eliminating subprocess spawning entirely and removing any dependency on Mach port bootstrap IPC. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 4451b83 commit cc0217e

2 files changed

Lines changed: 10 additions & 4 deletions

File tree

unittests/main_test.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -159,8 +159,11 @@ def test_main(self):
159159
switches["in-process-gpu"] = ""
160160
switches["no-zygote"] = ""
161161
if MAC:
162-
# Mach port rendezvous (IPC) fails for child processes on CI
163-
# runners because the macOS sandbox blocks bootstrap_look_up.
162+
# Mach port rendezvous (bootstrap_look_up) fails for child
163+
# processes on macOS CI runners regardless of --no-sandbox.
164+
# Single-process mode runs renderer/network/GPU in-process,
165+
# eliminating all subprocess spawning and bootstrap IPC.
166+
switches["single-process"] = ""
164167
switches["no-sandbox"] = ""
165168
switches["disable-gpu"] = ""
166169
switches["disable-gpu-compositing"] = ""

unittests/osr_test.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -127,8 +127,11 @@ def test_osr(self):
127127
switches["in-process-gpu"] = ""
128128
switches["no-zygote"] = ""
129129
if MAC:
130-
# Mach port rendezvous (IPC) fails for child processes on CI
131-
# runners because the macOS sandbox blocks bootstrap_look_up.
130+
# Mach port rendezvous (bootstrap_look_up) fails for child
131+
# processes on macOS CI runners regardless of --no-sandbox.
132+
# Single-process mode runs renderer/network/GPU in-process,
133+
# eliminating all subprocess spawning and bootstrap IPC.
134+
switches["single-process"] = ""
132135
switches["no-sandbox"] = ""
133136
switches["in-process-gpu"] = ""
134137
browser_settings = {

0 commit comments

Comments
 (0)