Skip to content
Latchkey

kubectl "progress deadline exceeded" - Fix Rollout Timeouts in CI

Your Deployment’s new pods did not become Ready within progressDeadlineSeconds, so Kubernetes marked the rollout failed and kubectl rollout status returned non-zero in CI.

What this error means

kubectl rollout status deployment/<name> blocks and then fails, or the Deployment reports ProgressDeadlineExceeded. The new ReplicaSet never reaches the desired Ready count.

kubectl output
Waiting for deployment "api" rollout to finish: 1 out of 3 new replicas
have been updated...
error: deployment "api" exceeded its progress deadline

Common causes

New pods crash or fail their probes

A bad image, missing config, or a readiness probe that never passes keeps the new pods out of Ready. The rollout cannot make progress and hits the deadline.

Pods cannot be scheduled

Insufficient CPU/memory, unsatisfiable nodeSelector/affinity, or unbound PVCs leave pods Pending, so the rollout stalls until the deadline.

How to fix it

Inspect why the new pods are not Ready

Look at the rollout’s pods and events to find the real blocker before changing the deadline.

Terminal
kubectl rollout status deploy/api --timeout=120s
kubectl get pods -l app=api
kubectl describe deploy/api | sed -n '/Conditions/,/Events/p'
kubectl logs deploy/api --all-containers --tail=50

Fix the underlying readiness problem

  1. If pods CrashLoopBackOff, fix the image/config and re-deploy.
  2. If a readiness probe never passes, correct its path/port or initialDelaySeconds.
  3. If pods are Pending, add capacity or relax the scheduling constraints.

Allow more time only when the app is genuinely slow to start

If startup is legitimately long, raise the deadline rather than masking a real failure.

deployment.yaml
spec:
  progressDeadlineSeconds: 600

How to prevent it

  • Set realistic progressDeadlineSeconds for the app’s real startup time.
  • Gate deploys on kubectl rollout status so CI fails on a bad rollout.
  • Validate images and probes in a staging deploy before production.

Related guides

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