Overview
Argo CD applications, projects, and settings can be defined declaratively using Kubernetes manifests. These can be applied usingkubectl apply without touching the argocd CLI tool.
Configuration Resources
Atomic Configuration
These ConfigMaps and Secrets have a single supported resource name per type:ConfigMap resources must be annotated with the label
app.kubernetes.io/part-of: argocd for Argo CD to use them.Multiple Configuration Objects
Application and project names are unique within an Argo CD installation.
Applications
The Application CRD represents a deployed application instance. It is defined by:- source: Reference to desired state in Git (repository, revision, path)
- destination: Target cluster and namespace
Basic Application
The namespace must match the namespace of your Argo CD instance (typically
argocd).Helm Application
For Helm repositories, usechart instead of path:
Cascading Deletion
Without the finalizer, deleting an Application won’t delete its managed resources:Sync Policy
Configure automated sync:Projects
The AppProject CRD defines a logical grouping of applications with:- sourceRepos: Allowed Git repositories
- destinations: Allowed clusters and namespaces
- roles: RBAC roles for project access
Repositories
Repository credentials are stored in Secrets:HTTPS Repository
SSH Repository
Clusters
Cluster credentials are stored in Secrets:General Configuration
Theargocd-cm ConfigMap contains general settings:
RBAC Configuration
Theargocd-rbac-cm ConfigMap defines RBAC policies:
App of Apps Pattern
Create an application that creates other applications:apps directory contains multiple Application manifests that will be created.
Best Practices
Version Control
Store all declarative configurations in Git for auditability and GitOps workflows.
Use Finalizers
Always include the resources-finalizer for proper cascading deletion of application resources.
Project Scoping
Use AppProjects to implement multi-tenancy and restrict resource access.
Automated Sync
Configure sync policies for automated deployment and self-healing capabilities.