Skip to content

docs(ci): runner host tuning - #36

Merged
mosobande merged 2 commits into
orifrom
docs/runner-pools-and-cache
Oct 20, 2026
Merged

mosobande merged 2 commits into
orifrom
docs/runner-pools-and-cache

Conversation

@mosobande

@mosobande mosobande commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Adds references/practices/ci-runner-hosts.md, linked from the Runners section of ci.md. The rules come from reviewing a week of jobs on a small 2-core self-hosted runner host:

  • Check when build cache was last used before pruning it. Docker's "reclaimable" figure includes cache used minutes ago.
  • Run all of a host's runners as one service user. A runner per user duplicates toolchains, package stores and Docker.
  • Install toolchains once on the host through mise. Keep one pnpm store on the same filesystem as the work folders, and skip actions/cache there.
  • Send jobs under about a minute to a light runner by label, and fold tiny jobs into their neighbours.
  • Use shallow checkouts, and sparse checkouts for jobs that read a few paths.
  • Don't run more jobs than a small, already-swapping host can hold.

View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need.

@mosobande mosobande added the documentation Improvements or additions to documentation label Oct 19, 2026
@mosobande
mosobande marked this pull request as ready for review October 20, 2026 04:21
@mosobande
mosobande merged commit dc1aa90 into ori Oct 20, 2026
5 checks passed
@mosobande
mosobande deleted the docs/runner-pools-and-cache branch October 20, 2026 04:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant