This setup provide an ArgoCD operator.
This operator give you the ability to deploy applications from different source (git, helm, ...) and monitor the state of the application. It also provide a way to sync the application with the source, so you can have a gitops workflow.
In this setup, we use the following tools:
- A Kubernetes cluster
- Helm 3
- Cert-manager with a ClusterIssuer
- Add the ArgoCD helm repository
helm repo add argo https://argoproj.github.io/argo-helm- Create a
values.yamlfile with the following content:
If you want to use external authentication, you can follow this yaml file: values_gh_OICD.yaml
global:
domain: argocd.example.com # Change this to your domain
configs:
params:
server.insecure: true
server:
certificate:
enabled: true
issuer:
group: cert-manager.io
kind: ClusterIssuer
name: letsencrypt-prod # Change this to your ClusterIssuer
ingress:
enabled: true
ingressClassName: traefik # Change this to your ingress class
tls: true
- Install the ArgoCD operator
helm upgrade --install argocd argo/argo-cd --namespace argocd --values values.yaml --create-namespace- Get the password of the admin user
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d- Access the ArgoCD dashboard
You can access the ArgoCD dashboard at https://argocd.example.com with the username admin and the password you get in the previous step.