Skip to main content
Each job runs in a fresh VM built from a Debian image with Node.js, npm, Python and git. Each section says which actions and jobs were verified on Coreload runners in our benchmark runs; use them in your workflow as you do today, with runs-on set to the label we sent you. Other actions may work too. Other setup-* actions that fetch Ubuntu builds may fail the same way as Python’s (see below).

Node.js

Node.js and npm are preinstalled. Verified: actions/checkout and actions/setup-node.

pnpm and Turborepo

Verified: pnpm/action-setup, and a whole pnpm and Turborepo job.

Go

Go is not preinstalled. Verified: actions/setup-go; add it before any step that runs go.

Rust

Rust is not preinstalled. Verified: a Rust job that installs it and runs cargo build and cargo test.

Python

Debian’s own Python is preinstalled; our benchmark runs didn’t exercise it. actions/setup-python failed for the CPython versions our benchmark runs tried (the quickstart lists them) when it downloaded them, because those builds are made for Ubuntu only. Keep a job that needs a particular Python version on its current runner for now.

Caching

A job’s artifact and cache calls may go to a Coreload relay on the machine, or straight to GitHub. Through the relay, artifact calls go on to GitHub with the job’s own token, and cache calls go to a Coreload service on the machine without it and miss, since there is no Coreload cache yet. See Caching.

Docker

Docker is not available in jobs yet; keep a job that uses it on its current runner. See Limits.