This repository contains practical examples of my blog post called ArgoCD beyond the basics.
To run this locally you only need to install devbox. Devbox is a tool that ensures a consistent developer environment. Devbox will ensure that in your local environment, you will have the following tools:
Kubectl
: Kubernetes command lineKind
: Kubernetes locally using Dockeryq
: Easily manage YAML manifests
- Install dependencies
devbox shell
- Create infrastructure
devbox run create
This will create two local Kubernetes clusters using Kind and install ArgoCD in the local cluster. The cluster called prod
is the cluster that ArgoCD will be installed and the dev
cluster is the external cluster.
- Connect to the ArgoCD
devbox run connect
And follow the instructions to connect to the ArgoCD UI.
- Delete it all when done!
devbox run destroy
To delete the local Kubernetes cluster.
devbox run app-of-apps
This will create the app of apps pattern.
devbox run multi-cluster
It creates all the Kubernetes resources that allows ArgoCD to deploy to an external cluster (dev cluster).
devbox run applicationset
When you run the app of apps command (devbox run app-of-apps
) it automatically creates the example of an application using hooks and sync waves. Notice that this application does not have auto sync, so you can go sync manually on the ArgoCD UI and check the behavior.