Skip to content

Pulumi

Pulumi CI on GitHub Actions

Plugin and dependency installation runs before every preview.

95s → 5s
Plugin install

Plugin and dependency installation runs before every preview.

Why it happens

The Pulumi plugin directory and language dependencies are not cached.

What to change

  1. Cache ~/.pulumi/plugins keyed on the lockfile
  2. Cache the language runtime dependencies as well
  3. Run pulumi preview on pull requests and pulumi up only on merge

Pulumi on runnerhut

yaml
jobs:
preview:
runs-on: runnerhut-4vcpu-ubuntu-2404
steps:
- uses: actions/checkout@v4
- uses: pulumi/actions@v6
with: { command: preview, stack-name: dev }
A working starting point

The 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.