The first "Spin up environment" step failed, so the job never started. CircleCI could not provision the executor - usually an image pull failure, capacity, or a transient infrastructure error.
What this error means
The job fails on the "Spin up environment" step before any of your steps run. The message may reference an image pull, a provisioning error, or simply "failed". It is often intermittent.
circleci
Spin up environmentError response from daemon:... failed to spin up environment# orError:failed to provision executor (transient infrastructure error)
Common causes
Image pull failure during provisioning
A bad image tag, missing registry auth, or a rate-limited pull stops the environment from coming up.
Transient infrastructure or capacity issue
A momentary platform-side provisioning failure or capacity constraint for the requested resource class fails spin-up. These usually clear on retry.
How to fix it
Rule out image and auth problems
Confirm the docker/machine image tag exists and is spelled correctly.
Add an auth: block or context for private images.
Validate the resource class is available for your plan.
Retry transient provisioning failures
When spin-up fails for infrastructure reasons, a re-run typically succeeds.
How to prevent it
Pin valid image tags and provide registry auth up front.
Use resource classes available on your plan.
Add retry-on-failure for jobs prone to transient spin-up issues.
Frequently asked questions
What causes ""Spin up environment: failed""?
A bad image tag, missing registry auth, or a rate-limited pull stops the environment from coming up.
How do I fix "Spin up environment: failed"?
Rule out image and auth problems
Can Latchkey fix this automatically?
Yes. Latchkey runs your GitHub Actions on managed runners that detect this failure, apply the fix, and retry the job automatically - self-healing is on by default.