/argocd-applicationset-demo

Demo repository for Argo CD ApplicationSet Controller

Demo of Argo CD ApplicationSet Controller

This repository contains example configuration for deploying Argo CD Applications with ApplicationSet Controller.

Deploying the example

Pre-requisites

  1. Kubernetes cluster with argocd namespace.
  2. Argo CD deployed in argocd namespace. Quick deploy: helm upgrade --install argocd-demo argo/argo-cd -n argocd
  3. Argo CD ApplicationSet Controller deployed in argocd namespace. Quick deploy: helm upgrade --install argocd-appset-demo argo/argocd-applicationset -n argocd

Deploy Top-Level Application

Clone the repository and run below command in root of the repository. This will deploy an Application which will deploy the ApplicationSet resource which will end up deploying two "tenant" Applications.

kubectl apply -f top-level-app/TopLevelApplication.yaml -n argocd

Eventually, all applications will get deployed and the Argo CD home page should look like this:

image

The ApplicationSet deploys two "tenant" apps which are actually Wordpress installation with different values.yaml for each tenant.

The ApplicationSet is deployed using the Git Files Generator.

Please read the accompanying blog for further explanation.