ArgoCDInstance
k8s.gitops.nyl/v1
Kubernetes GitOps Resources · Download JSON Schema · Usage guide
Defines an Argo CD control plane and the catalog defaults for its deployment targets.
This is compiler configuration. Targets sharing an instance must use unambiguous generated Application and AppProject names.
When needed
Declare one to configure a shared or remote Argo CD control plane, a different namespace, or shared catalog defaults.
If omitted
When no ArgoCDInstance resources are declared, each target uses an implicit instance in its workload Cluster, in namespace argocd, with the catalog defaults. Leave spec.argocdRef unset in this case. Once any explicit instance exists, every DeploymentTarget must set spec.argocdRef.name to a declared instance.
Example
apiVersion: k8s.gitops.nyl/v1
kind: ArgoCDInstance
metadata:
name: primary
spec:
clusterRef:
name: primary
namespace: argocd
Fields
Required means required within the containing object. Optional and nullable are distinct; contextual defaults and requirements are explained with each field.
Unknown fields are rejected.
apiVersion
Required · string
API group and version defining this resource.
const: "k8s.gitops.nyl/v1"
kind
Required · string
Resource kind within the API group.
const: "ArgoCDInstance"
metadata
Required · object
Resource identity and metadata.
Unknown fields are rejected.
metadata.labels
Optional · object
Literal labels used for organization and target selection.
metadata.labels[key]
Optional · string
metadata.name
Required · string
Project-local identity, validated by the resource kind; remains static during discovery.
spec
Required · object
Configuration for this resource.
Unknown fields are rejected.
spec.catalogApplicationDefaults
Optional · object
Default policy for the catalog Applications of targets using this instance.
default: {"applicationDeletionPolicy":"Foreground","project":"default","selfPrunePolicy":"Confirm","syncPolicy":{"syncOptions":["ApplyOutOfSyncOnly=true","ServerSideApply=true"]}}
Unknown fields are rejected.
spec.catalogApplicationDefaults.annotations
Optional · object
Annotations added to generated Applications.
spec.catalogApplicationDefaults.annotations[key]
Optional · string
spec.catalogApplicationDefaults.applicationDeletionPolicy
Optional · string
Argo CD Application finalizer policy: foreground cascade, background cascade, or orphan workloads.
default: "Foreground"
Allowed values:
| Value | Meaning |
|---|---|
"Foreground" | Cascade deletion in the foreground using the Argo CD resources finalizer. |
"Background" | Cascade deletion in the background using the Argo CD background finalizer. |
"Orphan" | Omit the finalizer and leave workload resources in place. |
spec.catalogApplicationDefaults.labels
Optional · object
Labels added to generated Applications.
spec.catalogApplicationDefaults.labels[key]
Optional · string
spec.catalogApplicationDefaults.project
Optional · string
Argo CD project assigned to generated catalog Applications.
default: "default"
spec.catalogApplicationDefaults.selfPrunePolicy
Optional · string
Policy for pruning the catalog Application itself. Confirmation is required by default.
default: "Confirm"
Allowed values:
| Value | Meaning |
|---|---|
"Automatic" | Allow pruning or deletion without additional restrictions. |
"Confirm" | Require confirmation through the Argo CD Prune or Delete sync option. |
"Retain" | Set the Argo CD Prune or Delete sync option to false. |
spec.catalogApplicationDefaults.syncPolicy
Optional · object
Catalog synchronization policy. Defaults to manual sync with apply-only-out-of-sync and server-side apply.
default: {"syncOptions":["ApplyOutOfSyncOnly=true","ServerSideApply=true"]}
Unknown fields are rejected.
spec.catalogApplicationDefaults.syncPolicy.automated
Optional · object or null
Presence enables automated synchronization unless enabled is false.
Unknown fields are rejected.
spec.catalogApplicationDefaults.syncPolicy.automated.enabled
Optional · boolean or null
Whether automated sync is enabled. Omission enables it when the automated block is present.
spec.catalogApplicationDefaults.syncPolicy.automated.prune
Optional · boolean
Allow Argo CD to prune resources removed from desired manifests.
default: false
spec.catalogApplicationDefaults.syncPolicy.automated.selfHeal
Optional · boolean
Allow Argo CD to repair live drift automatically.
default: false
spec.catalogApplicationDefaults.syncPolicy.syncOptions
Optional · array
Argo CD sync options. Generated Applications add ApplyOutOfSyncOnly=true and ServerSideApply=true unless an option with the same key is supplied.
spec.catalogApplicationDefaults.syncPolicy.syncOptions[]
Required · string
spec.clusterRef
Required · object
Project-local Cluster containing the Argo CD control plane.
Unknown fields are rejected.
spec.clusterRef.name
Required · string
Project-local name of the referenced resource; its kind and API group are determined by the containing field.
spec.namespace
Optional · string
Namespace containing Argo CD Applications and AppProjects.
default: "argocd"