Sengi serves the GitHub Actions cache itself. actions/cache, the setup actions' built-in caches and Docker's type=gha layer cache work with no workflow changes.
Dependency caches
Turn on the cache in your setup action as you would on GitHub:
- uses: actions/setup-node@v4
with:
node-version: "22"
cache: npmThe same works for actions/setup-python with cache: pip, and for any path with actions/cache:
- uses: actions/cache@v4
with:
path: ~/.cargo/registry
key: cargo-${{ runner.os }}-${{ hashFiles('Cargo.lock') }}runner.os and runner.arch read Linux and X64, so cache keys keep the same shape as on GitHub's runners.
Docker layers
Use cache-from: type=gha and cache-to: type=gha,mode=max with docker/build-push-action. See Docker layer caching.
How long caches last
- Your first job on Sengi fills the cache; later jobs restore it.
- Caches are kept per repository.
- An entry no job has read for seven days is removed.
- When a repository reaches its storage limit, the oldest entries go first and the next job saves fresh ones.
Caching is included in the minute price.
