docs: DinD is required for ARC (not optional), fix NET_ADMIN misinformation, clarify sudo scope#44586
Conversation
…rmation Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This PR updates the self-hosted runner and ARC DinD documentation to correct previously inaccurate statements about ARC requirements, NET_ADMIN, and what actually needs sudo (AWF vs the Copilot CLI install script).
Changes:
- Clarifies
sudorequirements by separating AWF (rootless, no sudo in default isolation mode) from the Copilot CLI install script (usessudo, incompatible withallowPrivilegeEscalation: false). - Updates ARC guidance to state DinD is required and
containerMode.type="kubernetes"is not supported; clarifies pod security (privileged only for the DinD sidecar, not the runner container). - Updates the ARC DinD guide to remove
NET_ADMINfrom the runner container example and adds an explanation of network isolation via Docker topology.
Show a summary per file
| File | Description |
|---|---|
| docs/src/content/docs/reference/self-hosted-runners.md | Corrects ARC/DinD and pod security guidance; clarifies sudo scope and rootless AWF behavior. |
| docs/src/content/docs/guides/arc-dind-copilot-agent.md | Updates ARC DinD setup instructions (removes NET_ADMIN) and explains network isolation model. |
| .github/workflows/firewall.lock.yml | Deleted generated workflow lock file (compiled output) for firewall.md. |
| .github/workflows/example-permissions-warning.lock.yml | Deleted generated workflow lock file (compiled output) for example-permissions-warning.md. |
| .github/workflows/codex-github-remote-mcp-test.lock.yml | Deleted generated workflow lock file (compiled output) for codex-github-remote-mcp-test.md. |
Review details
Tip
Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Files reviewed: 12/258 changed files
- Comments generated: 2
- Review effort level: Low
| GitHub Copilot coding agent **requires** Docker-in-Docker (DinD) mode on ARC. Set `containerMode.type="dind"` in your ARC Helm configuration. The `containerMode.type="kubernetes"` mode is not supported. | ||
|
|
||
| Set `runner.topology: arc-dind` in workflow frontmatter to enable ARC DinD split-filesystem handling. See the [ARC with Docker-in-Docker (DinD)](#arc-with-docker-in-docker-dind) section above and the [ARC DinD setup guide](/gh-aw/guides/arc-dind-copilot-agent/) for a complete walkthrough. |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|
@copilot address review feedback |
Co-authored-by: lpcox <15877973+lpcox@users.noreply.github.com>
The 256 accidentally deleted |
|
@copilot please run the
|
|
🎉 This pull request is included in a new release. Release: |
The self-hosted-runners reference doc and ARC DinD guide contained three categories of inaccuracies: DinD was presented as one option among peers rather than a hard requirement for ARC,
NET_ADMINwas incorrectly stated as required on the runner container, and the sudo requirement conflated AWF (which runs rootless) with the Copilot CLI install script (which actually needs sudo).self-hosted-runners.mdNET_ADMINor sudo needed on the runnerinstall_copilot_cli.shescalates viasudofor file ops (chown, binary install, cleanup); this is the actual blocker forallowPrivilegeEscalation: falsepodscontainerMode.type="kubernetes"is not supported; add cross-reference linksrunner.topology: arc-dindreference, fixes pod security:privileged: true" (incorrect)privileged: true; runner container needs neitherprivilegednorNET_ADMINarc-dind-copilot-agent.mdNET_ADMINcapability from the runner container specNET_ADMINrow changed fromYestoNo;Runner userrow updated — sudo is for the install script, not AWF