Deploy self hosted applications on a Kubernetes cluster using GitOps principles with ArgoCD and ApplicationSets