The operator includes an ArgoCD watcher that monitors ArgoCD Application resources and updates matching ApplicationPersonas with sync and health status. This gives you a unified view of application state across both dorgu and ArgoCD.Documentation Index
Fetch the complete documentation index at: https://dorguai.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
How it works
The watcher reconciles every 30 seconds and on watch events. It uses the Kubernetes unstructured API to read ArgoCD Applications, so the operator has no compile-time dependency on ArgoCD.Matching logic
The watcher matches ArgoCD Applications to ApplicationPersonas using the application name:- Extract the app name from the ArgoCD Application (labels first, then
metadata.name) - Extract the destination namespace from
spec.destination.namespace - Search for an ApplicationPersona with a matching
spec.namein the destination namespace - If not found in the destination namespace, search across all namespaces
| Source | Field |
|---|---|
| App name (preferred) | app.kubernetes.io/name label |
| App name (fallback 1) | app label |
| App name (fallback 2) | metadata.name |
| Destination namespace | spec.destination.namespace |
Status fields
When a match is found, the watcher populates.status.argocd on the ApplicationPersona:
| Field | Description | Example values |
|---|---|---|
syncStatus | ArgoCD sync state | Synced, OutOfSync, Unknown |
healthStatus | ArgoCD health state | Healthy, Degraded, Progressing, Suspended, Missing, Unknown |
lastSyncTime | When ArgoCD last synced | RFC 3339 timestamp |
revision | Git revision that was synced | Git SHA or tag |
applicationName | Name of the ArgoCD Application | my-app |
applicationNamespace | Namespace of the ArgoCD Application | argocd |
Conditional activation
The watcher only starts if both conditions are met:- The
--enable-argocdflag istrue(default) - The ArgoCD Application CRD (
argoproj.io/v1alpha1) exists in the cluster
Configuration
Via Helm
Via CLI flag
Checking ArgoCD status
The ArgoCD watcher requires RBAC permissions to
get, list, and watch ArgoCD Application resources (argoproj.io/v1alpha1). The Helm chart configures these permissions automatically.ApplicationPersona validation
Continuous validation via the reconciliation loop
Configuration
All operator configuration options