Argo workflows configuration

Argo workflows configuration is divided by 2 parts: one is a helm chart values in application.yaml and basic entities declaration in cluster repo common for all the cluster installation, another one is a workload-specific kubernetes entities declaration in the wl-<workload name>-dev namespace, executing through kustomize scenario.

Helm chart values defined in application.yaml consists of several sections, one for each component of Argo Workflows:

  • controller for Workflow Controller
  • executor for Executor
  • server for Argo Workflow Server
  • artifactRepository for default artifact repository

SSO declaration is a part of server section; also every section has it's own rbac parameters.

All the Argo Workflow components images are pulling through Harbor registry proxy. To dive deep into the helm chart values see https://github.com/argoproj/argo-helm/blob/main/charts/argo-workflows/values.yaml.

Namespaces

Namespaces names based on the name of workloads are not known before the workload created, so only argo namesapace noticed for provisioning by helm; all the others are provisioned by kustomize scenario in -gitops repo of workload.