Skip to content

Document self-hosted Kubernetes DinD prerequisites for gh-aw (#40107) #44987

Description

@Tarekchehahde

Problem

Self-hosted runner operators on Kubernetes (ARC DinD or custom pods) hit confusion about:

  • Whether the runner container needs privileged: true or NET_ADMIN
  • Whether host iptables is required (vs Docker network isolation inside DinD)
  • Whether to share /tmp vs $RUNNER_TEMP / shared _work volume
  • Where cli-proxy / firewall logs live when runner.topology: arc-dind (searching /tmp/gh-aw/... finds nothing)

Reported in #40107.

Proposed documentation changes

docs/src/content/docs/reference/self-hosted-runners.md

Before: ARC DinD guidance split across two sections; no explicit K8s prerequisite matrix; no path map for arc-dind vs GitHub-hosted /tmp/gh-aw/...; no cli-proxy troubleshooting.

After: Add:

  • Kubernetes pod prerequisites table (privileged sidecar only, shared _work, no separate /tmp, optional docker socket overrides)
  • Path map (/tmp/gh-aw/... vs ${{ runner.temp }}/gh-aw/...)
  • Debugging AWF sidecars (job log → on-disk logs → docker logs; DIFC / wrong log path)
  • Consolidate duplicate ARC section into a short pointer

docs/src/content/docs/guides/arc-dind-copilot-agent.md

After: Note custom K8s pods can use same prerequisites; extend troubleshooting for awf-cli-proxy is unhealthy, cli-proxy log paths, host iptables confusion.

docs/src/content/docs/troubleshooting/debugging.md + compilation-process.md

After: Qualify artifact paths for runner.topology: arc-dind.

Fork PR

Fixes #40107

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions