</>CodeWithKarani
All of DevOps & Cloud
DevOps & Cloud

Infra as Code & GitOps

Terraform state, Helm releases and GitOps drift.

7 articles

DevOps & Containers9 min read

ArgoCD Stuck on 'Waiting for Completion of Hook': Breaking the Deadlock

Your ArgoCD sync has waited on a PreSync Job for forty minutes and Terminate changes nothing. Here is why the hook never completes and the exact steps that clear it.

Read
DevOps & Containers8 min read

Fixing Helm's "another operation is in progress" Without Nuking the Release

An interrupted helm upgrade leaves the release Secret stuck at pending-upgrade and blocks every deploy. Here is the safe unstick order, and why the label patch fails.

Read
DevOps & Containers8 min read

Helm 'has no deployed releases': recovering a broken release history

When every Helm revision is failed or pending, upgrade and rollback both refuse to run. Here is how the release Secrets work, how to repair the history safely, and how to stop it recurring.

Read
DevOps & Containers9 min read

Helm Upgrade Stuck in PENDING_UPGRADE After a Hook Timeout: The Cleanup Path

A pre-upgrade hook outran --timeout, and now Helm refuses every retry and shows two deployed revisions. Here is why the release state froze and how to clear it safely.

Read
DevOps & Containers8 min read

Error Acquiring the State Lock: When Terraform force-unlock Is Safe

A stale Terraform lock blocks every apply. How to read the Lock Info block, decide in 90 seconds whether force-unlock is safe, and find the resources a killed apply orphaned.

Read
DevOps & Containers8 min read

ArgoCD StatefulSet Stuck OutOfSync With ServerSideApply: Fix the Diff, Not the Manifest

ArgoCD reports permanent drift on a StatefulSet after you enable ServerSideApply. Every field in the diff is an API server default, not your change. Here is the real fix.

Read
DevOps & Containers7 min read

Your kubectl edit Keeps Getting Reverted in GitOps: The Right Way to Hotfix

ArgoCD self-heal and Flux reconciliation undo manual kubectl edits within minutes, so the incident looks like it came back. Here is the correct emergency runbook that does not disable GitOps cluster-wide.

Read