nx
Nx
GitHub
nx-cloud-workflows
Workspace
GitHub
CI Pipeline Executions
Current execution
Succeeded
main
Configuration
Self-Healing CI
Project Graph
Resource Usage
Analysis
Conformance
Runs
Current run
Succeeded
Tasks
Resource Usage
Insights
Compare tasks
Analytics
Sign in
Toggle sidebar
fix(install-browsers): add idle + absolute timeouts and surface playw… (#126) * fix(install-browsers): add idle + absolute timeouts and surface playwright install failures - 3min idle timeout, 5min absolute timeout, SIGTERM then SIGKILL after a 5s grace - Inject DEBUG=pw:install into the child env so the extraction step actually logs progress - On failure, print the active node version, resolved playwright version, and the last 10 lines of stdout/stderr so the cause of a hang is visible Supersedes #121. * fix(install-browsers): kill the whole process group on timeout Previous attempt used child_process.exec + proc.kill('SIGTERM'), which only signals /bin/sh — the pnpm/node/playwright descendants keep running and the 'close' event never fires, so timers are never cleared and printFailureContext never prints. Switch to spawn('sh', ['-c', cmd], { detached: true }) so the shell is the leader of its own process group, then signal the whole group with process.kill(-pid, signal). * fix(install-browsers): drop redundant last-stdout/stderr dump on failure The captured chunks are already in the live log right above the failure context, so re-printing them just looks like a second run and makes the output harder to scan. Keep only the bits that aren't visible elsewhere: the kill reason, the active node version, and the resolved playwright version.
nx run-many -t build
⌘K
Succeeded
nx run-many -t build
Click to copy
Linux
4 CPU cores
efb2b21e
main
Get faster results
Learn how to enable distribution.
Atomizer enabled
2 groups of tasks optimized.