Skip to main content
πŸŽ“ Claude Code Masterclass Learn AI-assisted development on Udemy β€” plus the companion book on Leanpub & Amazon. Start Learning
Fix ArgoCD Application Stuck in OutOfSync
DevOps

Fix ArgoCD Application Stuck in OutOfSync

App permanently out of sync? Identify ignored differences, server-side mutations, and annotation-based sync exceptions. Practical guide with examples.

LB
Luca Berton
Β· 1 min read

The Problem

Your ArgoCD application is permanently stuck in OutOfSync status regardless of how many times you sync.

Root Cause

This is different from a temporary sync issue. The application is stuck because:

  1. Mutating admission webhooks change resources after deployment
  2. Kubernetes defaulting adds fields not in your manifests
  3. Another controller (HPA, Istio, Kyverno) modifies the resource

Fix

Step 1: Find the Diff

argocd app diff my-app

Step 2: Add ignoreDifferences

spec:
  ignoreDifferences:
    - group: apps
      kind: Deployment
      jsonPointers:
        - /spec/replicas
    - group: networking.istio.io
      kind: VirtualService
      jqPathExpressions:
        - .metadata.generation

Step 3: Use Server-Side Apply

spec:
  syncPolicy:
    syncOptions:
      - ServerSideApply=true

Server-side apply lets Kubernetes handle field ownership conflicts, often resolving persistent OutOfSync issues.

Free 30-min AI & Cloud consultation

Book Now