Skip to content
Latchkey

GitHub Actions actions/cache "No URL provided" / cache flow misconfigured

actions/cache needs a cache-service URL injected by the GitHub-hosted environment; when that URL is absent (often on self-hosted runners without a cache backend), the action fails with "No URL provided".

What this error means

The cache step fails early with an error indicating no cache service URL is available, so neither restore nor save can run.

github-actions
Error: No URL provided, unable to access the cache service.

Common causes

Self-hosted runner without a cache backend

The runner environment did not provide the ACTIONS_CACHE_URL, so the action has no endpoint to call.

Cache action version / backend mismatch

A cache action version expecting a backend that the environment does not expose fails to resolve a URL.

How to fix it

Provide a supported cache backend

  1. On self-hosted, run with a runner setup that injects the cache service URL.
  2. Or use a cache backend explicitly supported by your runner provider.
  3. Confirm the cache action version matches the available backend.

Use managed runners with built-in caching

Managed runners ship an integrated cache backend so actions/cache resolves a service URL automatically without manual configuration.

How to prevent it

  • Pair self-hosted runners with a supported cache backend.
  • Keep the cache action version aligned with the backend.
  • Validate caching on a self-hosted runner before relying on it.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →