Skip to content

Unity

Unity CI on GitHub Actions

Unity re-imports every asset on each build, which can take longer than the build.

22m → 3m
Asset import
38m → 11m
Build

Unity re-imports every asset on each build, which can take longer than the build.

Why it happens

The Library folder holds the imported asset database and is discarded between runs.

What to change

  1. Cache the Library folder keyed on the Unity version and asset hash
  2. Use an Accelerator instance so imports are shared across machines
  3. Build platforms as parallel matrix legs
  4. Use a 16 vCPU runner — asset import parallelises well

Unity on runnerhut

yaml
jobs:
build:
runs-on: runnerhut-16vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
with: { path: Library, key: unity-${{ hashFiles('Assets/**') }} }
- uses: game-ci/unity-builder@v4
with: { targetPlatform: StandaloneLinux64 }
A working starting point

The only runnerhut-specific line is `runs-on: runnerhut-16vcpu-ubuntu-2404`. Everything else is standard GitHub Actions — the same actions, the same secrets and the same permissions model you use today.

Your next build could be twice as fast, at half the price

Start free. Migrating away is the same one line, and we publish that diff too.