Skip to main content

ArgoCD

Full ArgoCD Application lifecycle — sync, rollback, delete, create, repositories — entirely through the Kubernetes API. No ArgoCD API server access needed.

What you can see

Via the Kind selector (Cmd/Ctrl + K):

  • Application — ArgoCD Applications
  • AppProject — Projects
  • ApplicationSet — ApplicationSets
  • Repositories — a virtual kind that lists repo Secrets (labeled argocd.argoproj.io/secret-type: repository)

The Applications table includes custom columns: NAME, SYNC, HEALTH, REPO, PATH, REVISION, AGE.

Application Info window

Open an Application (double-click or right-click → Info). Tabbed viewport:

Overview

  • Sync status, Health status (color-coded badges).
  • Source repo, path, target revision, destination cluster/namespace.
  • Container images summary across managed resources.
  • Clickable URLs — auto-extracted from managed Ingress, IngressRoute, and Gateway API resources.
  • Deployment history snapshot.

Resources

Every Kubernetes resource managed by this Application, with:

  • Real-time health updates via WebSocket watcher.
  • Action buttons: Logs, Restart, Shell, Delete.
  • Clickable resource names that open their Info.

History

Revision timeline. Each entry can be:

  • Diffed against another revision (side-by-side).
  • Rolled back to — creates a sync targeting that revision.

Sync

Sync tooling:

  • Sync — normal sync.
  • Dry-run Sync — shows what would change without applying.
  • Prune / Force / Replace options per run.

Context menu actions

Right-click any Application:

ActionEffect
SyncTriggers a sync (via Application operation field)
Dry-run SyncPlan-only sync
Hard Refreshargocd.argoproj.io/refresh: hard annotation
Normal Refreshargocd.argoproj.io/refresh: normal annotation
Suspend Auto-SyncTurns off syncPolicy.automated
Resume Auto-SyncRe-enables it
Diff OutOfSyncOpens diff of live vs desired for out-of-sync resources
RollbackVia History tab
Delete (cascade)Finalizer set — removes all managed resources
Delete (non-cascade / orphan)Removes the Application only, leaves resources

Creating an Application

From Dots menu → Create Application (shown when ArgoCD is the current kind):

Form fields:

  • Name
  • Namespace — usually argocd
  • Project — defaults to default
  • Source: Repository URL, Path, Target Revision (branch/tag/commit).
  • Destination: Cluster server URL, Namespace.
  • Sync policy: Automated (toggle), Prune (toggle), Self-heal (toggle), Allow-empty (toggle).
  • Sync options (multi-select): CreateNamespace=true, ApplyOutOfSyncOnly=true, etc.

Click Create — the Application manifest is applied via server-side apply.

Repositories

The virtual Repositories kind lists Secrets labeled as ArgoCD repositories.

Columns: NAME, TYPE, URL, PROJECT, CONNECTION STATE.

Adding a repository

From the Repositories list → Add Repository:

Source typeFields
Git (HTTPS)URL, username, password / token
Git (SSH)URL, SSH private key, optional known-hosts
HelmURL, optional username/password
OCIURL, optional credentials

Also:

  • TLS verify / Insecure skip verify.
  • Enable LFS (Git only).
  • Project — scope the repo to a Project or leave blank for global.

Saving writes a Secret with the appropriate ArgoCD labels and annotations.

Real-time health

Each managed resource in an Application's Resources tab has a WebSocket watch running — you'll see health badges flip in real time as pods come up or go down.

Tips

  • Can't see Applications? — ArgoCD installs the CRDs into whatever namespace the controller runs in (usually argocd). Switch namespace or use All namespaces.
  • URLs missing from Overview? — Kubezilla auto-detects them from Ingress, Traefik IngressRoute, and Gateway API HTTPRoute. If your app uses something exotic (Istio VirtualService, etc.), they won't be picked up.
  • Delete didn't remove resources? — you chose non-cascade delete. Re-delete with cascade, or clean up manually.
  • Sync says "Unknown"? — ArgoCD controller may be paused or unreachable. Check the argocd-application-controller pod.