Skip to content
Latchkey

Helm Release Stuck "uninstalling" / "pending-install" - Fix Stuck Status in CI

Helm records a release status in its history. If an install/upgrade/uninstall is interrupted (the CI job was killed, the API timed out mid-operation), the release is left in a transient status like pending-upgrade or uninstalling, and the next Helm command refuses to proceed.

What this error means

helm upgrade/uninstall fails because the release is pending-install, pending-upgrade, or uninstalling, or a later operation errors with another operation (install/upgrade/rollback) is in progress. helm status confirms the stuck transient state.

helm output
$ helm status api
STATUS: pending-upgrade
$ helm upgrade api ./chart
Error: UPGRADE FAILED: another operation (install/upgrade/rollback) is in progress

Common causes

A Helm operation was interrupted

The CI job was cancelled, the runner died, or the API call timed out while Helm was mid-install/upgrade/uninstall, so it never wrote a terminal status - leaving a transient one.

Concurrent Helm operations on one release

Two pipelines (or a retry overlapping the original) operate on the same release, and one leaves it pending while the other tries to proceed.

How to fix it

Inspect history and roll back to a deployed revision

For a stuck pending-upgrade, rolling back to the last good revision returns the release to a terminal deployed status.

Terminal
helm history api
helm rollback api <last-deployed-revision>
helm status api

Prevent overlapping operations

  1. Serialize Helm operations on a given release; do not run two pipelines against it concurrently.
  2. Use --atomic so a failed upgrade auto-rolls back to a terminal state instead of staying pending.
  3. Ensure CI does not kill the Helm step mid-operation (adequate step timeout).

How to prevent it

  • Serialize deploys per release so operations never overlap.
  • Use --atomic/--cleanup-on-fail so failures land in a terminal status.
  • Give the Helm CI step enough time to finish so it is not interrupted.

Related guides

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