fix: ensure Node.js is available in copilot-setup-steps for GPU runners#2228
fix: ensure Node.js is available in copilot-setup-steps for GPU runners#2228
Conversation
…nners Agent-Logs-Url: https://github.com/github/gh-aw-firewall/sessions/a19baeac-bd68-4fd3-be96-e3f40f0d35bc Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR aims to prevent engine: copilot workflows from failing on GPU runners that don’t have Node.js preinstalled by ensuring Node is set up before any Copilot CLI invocation.
Changes:
- Add a pinned
actions/setup-nodestep to provision Node.js 20 in the Copilot setup workflow. - Document in-workflow why Node is required (Copilot CLI dependency).
Show a summary per file
| File | Description |
|---|---|
.github/workflows/copilot-setup-steps.yml |
Adds an early actions/setup-node step (pinned SHA) to ensure Node.js is present for Copilot CLI usage on runners lacking Node preinstall. |
Copilot's findings
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 1/1 changed files
- Comments generated: 0
|
Smoke Test Results 🧪 ✅ GitHub MCP: Retrieved last 2 merged PRs Overall: PASS
|
🔥 Smoke Test: Copilot BYOK (Offline) Mode
Running in BYOK offline mode ( PR: "fix: ensure Node.js is available in copilot-setup-steps for GPU runners" by Overall: PASS (core BYOK path verified ✅)
|
This comment has been minimized.
This comment has been minimized.
🏗️ Build Test Suite Results
Overall: 8/8 ecosystems passed — ✅ PASS
|
🤖 Smoke Test Results
PR: fix: ensure Node.js is available in copilot-setup-steps for GPU runners Overall: PASS
|
Smoke Test: Services Connectivity — ❌ FAIL
|
Smoke Test
Warning Firewall blocked 1 domainThe following domain was blocked by the firewall during workflow execution:
network:
allowed:
- defaults
- "registry.npmjs.org"See Network Configuration for more information.
|
engine: copilotworkflows fail onaw-gpu-runner-T4withnode: command not foundbecause that runner image has no Node.js pre-installed andruntimes: node:frontmatter doesn't reliably provision it on GPU runner images.Changes
.github/workflows/copilot-setup-steps.yml: Prependactions/setup-node@v6.2.0(Node.js 20, pinned SHA matching other workflows in this repo) as the first setup step — runs on the agent's actual runner before Copilot CLI is invoked, making Node.js available in PATH and consequently inside the AWF chroot (which bind-mounts~/.nvm).This is a runner-agnostic guard: on
ubuntu-latestit's a no-op cost, on GPU runners it installs the missing runtime beforegh awor any Copilot engine step executes.