Deno
Deno CI on GitHub Actions
Deno re-downloads and re-type-checks remote modules on every run.
45s → 2s
Module fetch
3m → 50s
Test run
Deno re-downloads and re-type-checks remote modules on every run.
Why it happens
DENO_DIR holds the module and type-check cache and is not persisted.
What to change
- Cache DENO_DIR keyed on deno.lock
- Run deno cache before tests so the download is a separate, visible step
- Use --no-check in test runs where types are already verified elsewhere
Deno on runnerhut
yaml
jobs: test: runs-on: runnerhut-4vcpu-ubuntu-2404 steps: - uses: actions/checkout@v4 - uses: denoland/setup-deno@v2 - run: deno cache main.ts - run: deno test -A --parallelThe only runnerhut-specific line is `runs-on: runnerhut-4vcpu-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.