2 # -- Common tag for Argo Workflows images. Defaults to `.Chart.AppVersion`.
4 # -- imagePullPolicy to apply to all containers
6 # -- Secrets with credentials to pull images from a private registry
8 # - name: argo-pull-secret
9## Custom resource configuration
11 # -- Install and upgrade CRDs
13 # -- Keep CRDs on chart uninstall
15 # -- Use full CRDs with complete OpenAPI schemas. When false, uses minified CRDs with x-kubernetes-preserve-unknown-fields.
16 # Full CRDs are very large and are installed via a pre-install/pre-upgrade hook Job that uses server-side apply.
18 # -- Annotations to be added to all CRDs (only applies when crds.full=false)
20 # Configuration for the CRD install Job (only used when crds.full=true)
22 # -- Image for the container that applies the full CRDs. It bundles the CRDs for its own tag, so keep it in step with the app version.
23 ## Ref: https://argo-workflows.readthedocs.io/en/latest/crd-installer/
25 # -- Registry to use for the CRD installer
27 # -- Repository to use for the CRD installer
28 repository: chainguard-private/kubectl
29 # -- Image tag for the CRD installer. Defaults to `.Values.images.tag`.
30 tag: 1.37.1-r3@sha256:c55695bc149aac79ba709a3bd1367d7a9ddb639bc748a6afbbeba0105da90cc6
31 # -- Resources for the CRD install Job containers
33 # -- Node selector for the CRD install Job
35 # -- Pod security context for the CRD install Job pod
36 podSecurityContext: {}
37 # -- Optional labels to add to the CRD install Job pod
39 # -- Tolerations for the CRD install Job
41 # -- Image pull secrets for the CRD install Job
42 # @default -- `.Values.images.pullSecrets`
44 # -- Security context for the CRD install Job container
46 readOnlyRootFilesystem: true
48 allowPrivilegeEscalation: false
56 # -- Extra environment variables to provide to the CRD install Job container
58# -- Create ClusterRoles that extend existing ClusterRoles to interact with Argo Workflows CRDs.
59## Ref: https://kubernetes.io/docs/reference/access-authn-authz/rbac/#aggregated-clusterroles
60createAggregateRoles: true
61# -- String to partially override "argo-workflows.fullname" template
63# -- String to fully override "argo-workflows.fullname" template
65# -- Override the namespace
66# @default -- `.Release.Namespace`
68# -- Labels to set on all resources
70# -- Override the Kubernetes version, which is used to evaluate certain manifests
71kubeVersionOverride: ""
74 # -- String to override apiVersion of autoscaling rendered by this helm chart
75 autoscaling: "" # autoscaling/v2
76 # -- String to override apiVersion of GKE resources rendered by this helm chart
77 cloudgoogle: "" # cloud.google.com/v1
78 # -- String to override apiVersion of monitoring CRDs (ServiceMonitor) rendered by this helm chart
79 monitoring: "" # monitoring.coreos.com/v1
80# -- Restrict Argo to operate only in a single namespace (the namespace of the
81# Helm release) by apply Roles and RoleBindings instead of the Cluster
82# equivalents, and start workflow-controller with the --namespaced flag. Use it
83# in clusters with strict access policy.
86 # -- Deprecated; use controller.workflowNamespaces instead.
89 # -- Specifies whether a service account should be created
91 # -- Specifies whether a secret for each service account should be created
93 # -- Labels applied to created service account
95 # -- Annotations applied to created service account
97 # -- Service account which is used to run workflows
99 # -- Secrets with credentials to pull images from a private registry. Same format as `.Values.images.pullSecrets`
102 # -- Adds Role and RoleBinding for the above specified service account to be able to run workflows.
103 # A Role and Rolebinding pair is also created for each namespace in controller.workflowNamespaces (see below)
105 # -- Allows permissions for the Argo Agent. Only required if using http/plugin templates
106 agentPermissions: false
107 # -- Allows permissions for the Argo Artifact GC pod. Only required if using artifact gc
109 # -- Extra service accounts to be added to the RoleBinding
111 # - name: my-service-account
112 # namespace: my-namespace
113 # -- Additional rules for the service account that runs the workflows.
117 # -- Registry to use for the controller
119 # -- Registry to use for the controller
120 repository: chainguard-private/argo-workflowcontroller
121 # -- Image tag for the workflow controller. Defaults to `.Values.images.tag`.
122 tag: 4.1.6-r0@sha256:3c0e2e901bdd94066c232b4600fcc70ade2dce0704998900b4a95df56f4e0da1
123 # -- parallelism dictates how many workflows can be running at the same time
125 # -- Globally limits the rate at which pods are created.
126 # This is intended to mitigate flooding of the Kubernetes API server by workflows with a large amount of
128 resourceRateLimit: {}
133 # -- Adds Role and RoleBinding for the controller.
135 # -- Allows controller to get, list, and watch certain k8s secrets
137 # -- Allows controller to get, list and watch all k8s secrets. Can only be used if secretWhitelist is empty.
138 accessAllSecrets: false
139 # -- Allows controller to create and update ConfigMaps. Enables memoization feature
140 writeConfigMaps: false
142 # -- Create a ConfigMap for the controller
146 # -- ConfigMap annotations
148 # -- Add checksum/config pod annotation to restart the controller when the ConfigMap changes. Alternative to the built-in config watcher; does not cover semaphore ConfigMaps.
149 restartOnChange: false
150 # -- Limits the maximum number of incomplete workflows in a namespace
151 namespaceParallelism:
152 # -- Resolves ongoing, uncommon AWS EKS bug: https://github.com/argoproj/argo-workflows/pull/4224
154 # -- deploymentAnnotations is an optional map of annotations to be applied to the controller Deployment
155 deploymentAnnotations: {}
156 # -- podAnnotations is an optional map of annotations to be applied to the controller Pods
158 # -- Optional labels to add to the controller pods
160 # -- SecurityContext to set on the controller pods
161 podSecurityContext: {}
162 # -- [DNS configuration](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config) for controller pods
164 # -- Alternative DNS policy for controller pods
168 # -- Enables prometheus metrics server
170 # -- Path is the path where metrics are emitted. Must start with a "/".
172 # -- Frequency at which prometheus scrapes metrics
174 # -- Prometheus ServiceMonitor scrapeTimeout. If empty, Prometheus uses the global scrape timeout unless it is less than the target's scrape interval value in which the latter is used.
176 # -- Port is the port where metrics are emitted
178 # -- How often custom metrics are cleared from memory
180 # -- Flag that instructs prometheus to ignore metric emission errors.
182 # -- Flag that use a self-signed cert for TLS
184 # -- Container metrics port name
186 # -- Service metrics port
188 # -- Service metrics port name
189 servicePortName: metrics
190 # -- serviceMonitor scheme
192 # -- Flag to enable headless service
193 headlessService: false
194 # -- When true, honorLabels preserves the metric’s labels when they collide with the target’s labels.
195 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#honorlabels
197 # -- ServiceMonitor relabel configs to apply to samples before scraping
198 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#relabelconfig
200 # -- ServiceMonitor metric relabel configs to apply to samples before ingestion
201 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#endpoint
202 metricRelabelings: []
203 # -- ServiceMonitor will add labels from the service to the Prometheus metric
204 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#servicemonitorspec
206 # -- Manipulate the metrics created by the workflow controller
207 ## Ref: https://argo-workflows.readthedocs.io/en/latest/metrics/#modifiers
209 # -- the controller container's securityContext
211 readOnlyRootFilesystem: true
213 allowPrivilegeEscalation: false
217 # -- enable Workflow Archive to store the status of workflows. Postgres, MySQL (>= 5.7.8) and MariaDB (>= 10.2.7, requires Argo Workflows v4.1+) are available.
218 ## Ref: https://argo-workflows.readthedocs.io/en/stable/workflow-archive/
223 # # save the entire workflow into etcd and DB
224 # nodeStatusOffLoad: false
225 # # enable archiving of old workflows
231 # tableName: argo_workflows
232 # # the database secrets must be in the same namespace of the controller
234 # name: argo-postgres-config
237 # name: argo-postgres-config
239 # # Instead of passwordSecret, Postgres can authenticate with a token.
240 # # Requires Argo Workflows v4.1+; userNameSecret is still required.
241 # # Microsoft Entra ID (needs Azure Workload Identity on the controller's service account):
244 # scope: https://ossrdbms-aad.database.windows.net/.default
245 # # AWS RDS IAM authentication (needs IRSA or EKS Pod Identity on the controller's service account):
250 # # sslMode must be one of: disable, require, verify-ca, verify-full
251 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
257 # tableName: argo_workflows
259 # name: argo-mysql-config
262 # name: argo-mysql-config
265 # -- Default values that will apply to all Workflows from this controller, unless overridden on the Workflow-level.
266 # Only valid for 2.7+
267 ## See more: https://argo-workflows.readthedocs.io/en/stable/default-workflow-specs/
271 # secondsAfterCompletion: 86400
272 # # Ref: https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/
273 # artifactRepositoryRef:
274 # configMap: my-artifact-repository # default is "artifact-repositories"
275 # key: v2-s3-artifact-repository # default can be set by the `workflows.argoproj.io/default-artifact-repository` annotation in config map.
277 # -- Number of workflow workers
278 workflowWorkers: # 32
279 # -- Number of workflow TTL workers
280 workflowTTLWorkers: # 4
281 # -- Number of pod cleanup workers
282 podCleanupWorkers: # 4
283 # -- Number of cron workflow workers
284 # Only valid for 3.5+
285 cronWorkflowWorkers: # 8
286 # -- Restricts the Workflows that the controller will process.
287 # Only valid for 2.9+
288 workflowRestrictions: {}
289 # templateReferencing: Strict|Secure
291 # telemetryConfig controls the path and port for prometheus telemetry. Telemetry is enabled and emitted in the same endpoint
292 # as metrics by default, but can be overridden using this config.
294 # -- Enables prometheus telemetry server
298 # -- Frequency at which prometheus scrapes telemetry data
300 # -- Prometheus ServiceMonitor scrapeTimeout. If empty, Prometheus uses the global scrape timeout unless it is less than the target's scrape interval value in which the latter is used.
302 # -- telemetry container port
304 # -- How often custom metrics are cleared from memory
306 # -- Flag that instructs prometheus to ignore metric emission errors.
308 # -- Flag that use a self-signed cert for TLS
310 # -- telemetry service port
312 # -- telemetry service port name
313 servicePortName: telemetry
314 # -- telemetry serviceMonitor scheme to use
317 # -- Enable a prometheus ServiceMonitor
319 # -- Prometheus ServiceMonitor labels
321 # -- Prometheus ServiceMonitor namespace
322 namespace: "" # "monitoring"
324 # -- Create a service account for the controller
326 # -- Service account name
328 # -- Labels applied to created service account
330 # -- Annotations applied to created service account
332 # -- Workflow controller name string
333 name: workflow-controller
334 # -- Specify all namespaces where this workflow controller instance will manage
335 # workflows. This controls where the service account and RBAC resources will
336 # be created. Only valid when singleNamespace is false.
340 # -- Configures the controller to filter workflow submissions
341 # to only those which have a matching instanceID attribute.
342 ## NOTE: If `instanceID.enabled` is set to `true` then either `instanceID.userReleaseName`
343 ## or `instanceID.explicitID` must be defined.
345 # -- Use ReleaseName as instanceID
346 useReleaseName: false
347 # useReleaseName: true
349 # -- Use a custom instanceID
351 # explicitID: unique-argo-controller-identifier
353 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
355 # -- Set the glog logging level
357 # -- Set the logging format (one of: `text`, `json`)
359 # -- Service type of the controller Service
360 serviceType: ClusterIP
361 # -- Annotations to be applied to the controller Service
362 serviceAnnotations: {}
363 # -- Optional labels to add to the controller Service
365 # -- The class of the load balancer implementation
366 loadBalancerClass: ""
367 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
368 loadBalancerSourceRanges: []
369 # -- Resource limits and requests for the controller
371 # -- Configure liveness [probe] for the controller
372 # @default -- See [values.yaml]
378 initialDelaySeconds: 90
381 # -- Extra environment variables to provide to the controller container
386 # -- envFrom to pass to the controller container
388 # -- Extra arguments to be added to the controller
390 # -- Additional volume mounts to the controller main container
392 # -- Additional volumes to the controller pod
394 # -- The number of controller pods to run
396 # -- The number of revisions to keep.
397 revisionHistoryLimit: 10
399 # -- Configure [Pod Disruption Budget] for the controller pods
405 kubernetes.io/os: linux
406 # -- [Tolerations] for use with node taints
408 # -- Assign custom [affinity] rules
410 # -- Assign custom [TopologySpreadConstraints] rules to the workflow controller
411 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
412 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
413 topologySpreadConstraints: []
415 # topologyKey: topology.kubernetes.io/zone
416 # whenUnsatisfiable: DoNotSchedule
418 # -- Leverage a PriorityClass to ensure your pods survive resource shortages.
419 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
420 priorityClassName: ""
421 # -- Configure Argo Server to show custom [links]
422 ## Ref: https://argo-workflows.readthedocs.io/en/stable/links/
424 # -- Configure Argo Server to show custom [columns]
425 ## Ref: https://github.com/argoproj/argo-workflows/pull/10693
427 # -- Set ui navigation bar background color
429 clusterWorkflowTemplates:
430 # -- Create a ClusterRole and CRB for the controller to access ClusterWorkflowTemplates.
432 # -- Extra service accounts to be added to the ClusterRoleBinding
434 # - name: my-service-account
435 # namespace: my-namespace
436 # -- Extra containers to be added to the controller deployment
438 # -- Enables init containers to be added to the controller deployment
439 extraInitContainers: []
440 # -- Workflow retention by number of workflows
447 # -- Enable to emit events on node completion.
448 ## This can take up a lot of space in k8s (typically etcd) resulting in errors when trying to create new events:
449 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
452 # -- Enable to emit events on workflow status changes.
453 ## This can take up a lot of space in k8s (typically etcd), resulting in errors when trying to create new events:
454 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
456 # -- Configure when workflow controller runs in a different k8s cluster with the workflow workloads,
457 # or needs to communicate with the k8s apiserver using an out-of-cluster kubeconfig secret.
458 # @default -- `{}` (See [values.yaml])
460 # # name of the kubeconfig secret, may not be empty when kubeConfig specified
461 # secretName: kubeconfig-secret
462 # # key of the kubeconfig secret, may not be empty when kubeConfig specified
463 # secretKey: kubeconfig
464 # # mounting path of the kubeconfig secret, default to /kube/config
465 # mountPath: /kubeconfig/mount/path
466 # # volume name when mounting the secret, default to kubeconfig
467 # volumeName: kube-config-volume
469 # -- Specifies the duration in seconds before a terminating pod is forcefully killed. A zero value indicates that the pod will be forcefully terminated immediately.
470 # @default -- `30` seconds (Kubernetes default)
471 podGCGracePeriodSeconds:
472 # -- The duration in seconds before the pods in the GC queue get deleted. A zero value indicates that the pods will be deleted immediately.
473 # @default -- `5s` (Argo Workflows default)
474 podGCDeleteDelayDuration: ""
475 # -- enable Synchronization to use a database. Postgres and MySQL (>= 5.7.8) are available.
476 ## Ref: https://argo-workflows.readthedocs.io/en/latest/workflow-controller-configmap/#syncconfig
478 # controllerName: argo-workflows
486 # tableName: argo_workflows
487 # # the database secrets must be in the same namespace of the controller
489 # name: argo-postgres-config
492 # name: argo-postgres-config
495 # # sslMode must be one of: disable, require, verify-ca, verify-full
496 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
502 # tableName: argo_workflows
504 # name: argo-mysql-config
507 # name: argo-mysql-config
511 # -- Enable to restart of pods that fail before entering Running state.
512 ## This is useful for recovering from transient infrastructure issues like node eviction due to DiskPressure or MemoryPressure without requiring a retryStrategy on every template.
513 ## ref: https://argo-workflows.readthedocs.io/en/latest/pod-restarts/
515 # -- Maximum number of automatic restarts per node before giving up.
517 # -- Disable the creation of agent pods, which are used for HTTP and Plugin templates. When enabled, HTTP and Plugin templates will not be processed by this controller.
518 # Only valid for 4.1+
519 disableAgentPodCreation: false
521 # -- Enable the init-less pod layout (beta), which provides the executor to workflow pods through an image volume instead of an init container.
522 # Only valid for 4.1+. Requires the `ImageVolume` feature gate on the kube-apiserver and all kubelets (beta in Kubernetes v1.33-1.35, enabled by default from v1.36).
523 ## Ref: https://argo-workflows.readthedocs.io/en/latest/initless-pod/
525# mainContainer adds default config for main container that could be overriden in workflows template
527 # -- imagePullPolicy to apply to Workflow main container. Defaults to `.Values.images.pullPolicy`.
529 # -- Resource limits and requests for the Workflow main container
531 # -- Adds environment variables for the Workflow main container
533 # -- Adds reference environment variables for the Workflow main container
535 # -- sets security context for the Workflow main container
537# executor controls how the init and wait container should be customized
540 # -- Registry to use for the Workflow Executors
542 # -- Repository to use for the Workflow Executors
543 repository: chainguard-private/argo-exec
544 # -- Image tag for the workflow executor. Defaults to `.Values.images.tag`.
545 tag: 4.1.6-r0@sha256:703fe84540821a4dab6d83cf3d20896c8271abd3a93814f2587bb2b2cb6dbc6f
546 # -- Image PullPolicy to use for the Workflow Executors. Defaults to `.Values.images.pullPolicy`.
548 # -- Use the `-nonroot` executor image variant. When enabled, the `-nonroot` suffix is appended to the resolved image tag.
550 # -- Resource limits and requests for the Workflow Executors
552 # -- Passes arguments to the executor processes
554 # -- Adds environment variables for the executor.
556 # -- sets security context for the executor container
559 # -- Deploy the Argo Server
561 # -- Value for base href in index.html. Used if the server is running behind reverse proxy under subpath different from /.
562 ## only updates base url of resources on client side,
563 ## it's expected that a proxy server rewrites the request URL and gets rid of this prefix
564 ## https://github.com/argoproj/argo-workflows/issues/716#issuecomment-433213190
567 # -- Registry to use for the server
569 # -- Repository to use for the server
570 repository: chainguard-private/argo-cli
571 # -- Image tag for the Argo Workflows server. Defaults to `.Values.images.tag`.
572 tag: 4.1.6-r0@sha256:8fb20963df9e35bed5f1158e943125f5adfd3615e7bd228cf4adce7939a6aa14
573 # -- optional map of annotations to be applied to the ui Deployment
574 deploymentAnnotations: {}
575 # -- optional map of annotations to be applied to the ui Pods
577 # -- Optional labels to add to the UI pods
579 # -- SecurityContext to set on the server pods
580 podSecurityContext: {}
581 # -- [DNS configuration](https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config) for server pods
583 # -- Alternative DNS policy for server pods
586 # -- Adds Role and RoleBinding for the server.
588 # -- Servers container-level security context
590 readOnlyRootFilesystem: false
592 allowPrivilegeEscalation: false
596 # -- Server name string
598 # -- Service type for server pods
599 serviceType: ClusterIP
600 # -- Service port for server
602 # -- Service target port for server
603 serviceTargetPort: 2746
604 # -- Service node port
605 serviceNodePort: # 32746
606 # -- Service port name
607 servicePortName: "" # http
608 # -- Mapping between IP and hostnames that will be injected as entries in the pod's hosts files
615 # -- Create a service account for the server
617 # -- Service account name
619 # -- Labels applied to created service account
621 # -- Annotations applied to created service account
623 # -- Annotations to be applied to the UI Service
624 serviceAnnotations: {}
625 # -- Optional labels to add to the UI Service
627 # -- The class of the load balancer implementation
628 loadBalancerClass: ""
629 # -- Static IP address to assign to loadBalancer service type `LoadBalancer`
631 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
632 loadBalancerSourceRanges: []
633 # -- Resource limits and requests for the server
635 # -- The number of server pods to run
637 # -- The number of revisions to keep.
638 revisionHistoryLimit: 10
639 ## Argo Server Horizontal Pod Autoscaler
641 # -- Enable Horizontal Pod Autoscaler ([HPA]) for the Argo Server
643 # -- Minimum number of replicas for the Argo Server [HPA]
645 # -- Maximum number of replicas for the Argo Server [HPA]
647 # -- Average CPU utilization percentage for the Argo Server [HPA]
648 targetCPUUtilizationPercentage: 50
649 # -- Average memory utilization percentage for the Argo Server [HPA]
650 targetMemoryUtilizationPercentage: 50
651 # -- Configures the scaling behavior of the target in both Up and Down directions.
652 # This is only available on HPA apiVersion `autoscaling/v2beta2` and newer
655 # stabilizationWindowSeconds: 300
661 # stabilizationWindowSeconds: 300
666 # -- Configure [Pod Disruption Budget] for the server pods
672 kubernetes.io/os: linux
673 # -- [Tolerations] for use with node taints
675 # -- Assign custom [affinity] rules
677 # -- Assign custom [TopologySpreadConstraints] rules to the argo server
678 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
679 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
680 topologySpreadConstraints: []
682 # topologyKey: topology.kubernetes.io/zone
683 # whenUnsatisfiable: DoNotSchedule
685 # -- Leverage a PriorityClass to ensure your pods survive resource shortages
686 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
687 priorityClassName: ""
688 # -- Run the argo server in "secure" mode. Configure this value instead of `--secure` in extraArgs.
689 ## See the following documentation for more details on secure mode:
690 ## https://argo-workflows.readthedocs.io/en/stable/tls/
692 # -- Extra environment variables to provide to the argo-server container
697 # -- envFrom to pass to the argo-server container
699 # -- Deprecated; use server.authModes instead.
701 # -- A list of supported authentication modes. Available values are `server`, `client`, or `sso`. If you provide sso, please configure `.Values.server.sso` as well.
702 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server-auth-mode/
704 # -- Extra arguments to provide to the Argo server binary.
705 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server/#options
708 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
710 # -- Set the glog logging level
712 # -- Set the logging format (one of: `text`, `json`)
714 # -- Volume to be mounted in Pods for temporary files.
717 # -- Additional volume mounts to the server main container.
719 # -- Additional volumes to the server pod.
721 ## Ingress configuration.
722 # ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
724 # -- Enable an ingress resource
726 # -- Additional ingress annotations
728 # -- Additional ingress labels
730 # -- Defines which ingress controller will implement the resource
732 # -- List of ingress hosts
733 ## Hostnames must be provided if Ingress is enabled.
734 ## Secrets must be manually created in the namespace
736 # - argoworkflows.example.com
738 # -- List of ingress paths
741 # -- Ingress path type. One of `Exact`, `Prefix` or `ImplementationSpecific`
743 # -- Additional ingress paths
747 # serviceName: ssl-redirect
748 # servicePort: use-annotation
749 ## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
756 # name: use-annotation
758 # -- Ingress TLS configuration
760 # - secretName: argoworkflows-example-tls
762 # - argoworkflows.example.com
763 ## Create a Google Backendconfig for use with the GKE Ingress Controller
764 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-configuration#configuring_ingress_features_through_backendconfig_parameters
766 # -- Enable BackendConfig custom resource for Google Kubernetes Engine
768 # -- [BackendConfigSpec]
773 # oauthclientCredentials:
774 # secretName: argoworkflows-secret
776 ## Create a Google Managed Certificate for use with the GKE Ingress Controller
777 ## https://cloud.google.com/kubernetes-engine/docs/how-to/managed-certs
778 GKEmanagedCertificate:
779 # -- Enable ManagedCertificate custom resource for Google Kubernetes Engine.
781 # -- Domains for the Google Managed Certificate
783 - argoworkflows.example.com
784 ## Create a Google FrontendConfig Custom Resource, for use with the GKE Ingress Controller
785 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#configuring_ingress_features_through_frontendconfig_parameters
787 # -- Enable FrontConfig custom resource for Google Kubernetes Engine
789 # -- [FrontendConfigSpec]
794 # responseCodeName: RESPONSE_CODE
796 # Gateway API HTTPRoute configuration
797 # NOTE: Gateway API support is in EXPERIMENTAL status
798 # Support depends on your Gateway controller implementation
799 # Some controllers may require additional configuration (e.g., BackendTLSPolicy for HTTPS backends)
800 # Refer to https://gateway-api.sigs.k8s.io/implementations/ for controller-specific details
802 # -- Enable HTTPRoute resource for Argo Workflows server (Gateway API)
804 # -- Additional HTTPRoute labels
806 # -- Additional HTTPRoute annotations
808 # -- Gateway API parentRefs for the HTTPRoute
809 ## Must reference an existing Gateway
810 # @default -- `[]` (See [values.yaml])
812 # - name: example-gateway
813 # namespace: example-gateway-namespace
815 # -- List of hostnames for the HTTPRoute
816 # @default -- `[]` (See [values.yaml])
818 # - argoworkflows.example.com
819 # -- HTTPRoute rules configuration
820 # @default -- `[]` (See [values.yaml])
827 # - type: RequestHeaderModifier
828 # requestHeaderModifier:
830 # - name: X-Custom-Header
831 # value: custom-value
835 # Gateway API BackendTLSPolicy configuration
836 # NOTE: BackendTLSPolicy support is in EXPERIMENTAL status
837 # Required for HTTPS backends when using Gateway API
838 # Not all Gateway controllers support this resource (e.g., Cilium does not support it yet)
840 # -- Enable BackendTLSPolicy resource for Argo Workflows server (Gateway API)
842 # -- Additional BackendTLSPolicy labels
844 # -- Additional BackendTLSPolicy annotations
846 # -- Target references for the BackendTLSPolicy
847 # @default -- `[]` (See [values.yaml])
851 # name: argo-workflows-server
853 # -- TLS validation configuration
854 # @default -- `{}` (See [values.yaml])
856 # hostname: argo-workflows-server.argo.svc.cluster.local
858 # - name: example-ca-cert
861 # wellKnownCACertificates: System
862 clusterWorkflowTemplates:
863 # -- Create a ClusterRole and CRB for the server to access ClusterWorkflowTemplates.
865 # -- Give the server permissions to edit ClusterWorkflowTemplates.
867 # SSO configuration when SSO is specified as a server auth mode.
869 # -- Create SSO configuration. If you set `true` , please also set `.Values.server.authModes` as `sso`.
871 # -- The root URL of the OIDC identity provider
872 issuer: https://accounts.google.com
874 # -- Name of secret to retrieve the app OIDC client ID
875 name: argo-server-sso
876 # -- Key of secret to retrieve the app OIDC client ID
879 # -- Name of a secret to retrieve the app OIDC client secret
880 name: argo-server-sso
881 # -- Key of a secret to retrieve the app OIDC client secret
883 # -- The OIDC redirect URL. Should be in the form <argo-root-url>/oauth2/callback.
886 # -- Adds ServiceAccount Policy to server (Cluster)Role.
888 # -- Whitelist to allow server to fetch Secrets
889 ## When present, restricts secrets the server can read to a given list.
890 ## You can use it to restrict the server to only be able to access the
891 ## service account token secrets that are associated with service accounts
892 ## used for authorization.
894 # -- Scopes requested from the SSO ID provider
895 ## The 'groups' scope requests group membership information, which is usually used for authorization decisions.
898 # -- Define how long your login is valid for (in hours)
899 ## If omitted, defaults to 10h.
901 # -- Alternate root URLs that can be included for some OIDC providers
903 # -- Override claim name for OIDC groups
904 customGroupClaimName: ""
905 # -- Specify the user info endpoint that contains the groups claim
906 ## Configure this if your OIDC provider provides groups information only using the user-info endpoint (e.g. Okta)
908 # -- Skip TLS verification for the HTTP client
909 insecureSkipVerify: false
910 # -- Custom PEM encoded CA certificate file contents used to validate the OIDC provider's certificate
912 # -- Filter the groups returned by the OIDC provider
913 ## A logical "OR" is used between each regex in the list
914 filterGroupsRegex: []
916 # - ".*argo-workflow.*"
917 # -- Extra containers to be added to the server deployment
919 # -- Enables init containers to be added to the server deployment
920 extraInitContainers: []
921 # -- Specify postStart and preStop lifecycle hooks for server container
923 # -- terminationGracePeriodSeconds for container lifecycle hook
924 terminationGracePeriodSeconds: 30
925 ## livenessProbe for server
926 ## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
928 # -- Enable Kubernetes liveness probe for server
931 # -- Http port to use for the liveness probe
933 # -- Http path to use for the liveness probe
935 # -- Minimum consecutive failures for the [probe] to be considered failed after having succeeded
937 # -- Number of seconds after the container has started before [probe] is initiated
938 initialDelaySeconds: 10
939 # -- How often (in seconds) to perform the [probe]
941 # -- Number of seconds after which the [probe] times out
943 # -- Minimum consecutive successes for the [probe] to be considered successful after having failed
945# -- Array of extra K8s manifests to deploy
947# - apiVersion: secrets-store.csi.x-k8s.io/v1
948# kind: SecretProviderClass
950# name: argo-server-sso
955# - objectName: "argo/server/sso"
956# objectType: "secretsmanager"
959# objectAlias: "client_id"
960# - path: "client_secret"
961# objectAlias: "client_secret"
965# objectName: client_id
966# - key: client_secret
967# objectName: client_secret
968# secretName: argo-server-sso-secrets-store
971# -- Use static credentials for S3 (eg. when not using AWS IRSA)
972useStaticCredentials: true
974 # -- Archive the main container logs as an artifact
976 # -- Store artifact in a S3-compliant object store
977 # @default -- See [values.yaml]
979 # # Note the `key` attribute is not the actual secret, it's the PATH to
980 # # the contents in the associated secret, as defined by the `name` attribute.
982 # name: "{{ .Release.Name }}-minio"
985 # name: "{{ .Release.Name }}-minio"
987 # sessionTokenSecret:
988 # name: "{{ .Release.Name }}-minio"
990 # # insecure will disable TLS. Primarily used for minio installs not configured with TLS
1000 # # addressingStyle must be one of: "" (auto-detect), path, virtual-hosted
1001 # # Only valid for 4.1+
1002 # addressingStyle: ""
1003 # encryptionOptions:
1004 # enableEncryption: true
1005 # -- Store artifact in a GCS object store
1006 # @default -- `{}` (See [values.yaml])
1008 # bucket: <project>-argo
1009 # keyFormat: "{{ \"{{workflow.namespace}}/{{workflow.name}}/{{pod.name}}\" }}"
1010 # # serviceAccountKeySecret is a secret selector.
1011 # # It references the k8s secret named 'my-gcs-credentials'.
1012 # # This secret is expected to have the key 'serviceAccountKey',
1013 # # containing the base64 encoded credentials
1016 # # If it's running on GKE and Workload Identity is used,
1017 # # serviceAccountKeySecret is not needed.
1018 # serviceAccountKeySecret:
1019 # name: my-gcs-credentials
1020 # key: serviceAccountKey
1021 # -- Store artifact in Azure Blob Storage
1022 # @default -- `{}` (See [values.yaml])
1024 # endpoint: https://mystorageaccountname.blob.core.windows.net
1025 # container: my-container-name
1026 # blobNameFormat: path/in/container
1027 # # accountKeySecret is a secret selector.
1028 # # It references the k8s secret named 'my-azure-storage-credentials'.
1029 # # This secret is expected to have the key 'account-access-key',
1030 # # containing the base64 encoded credentials to the storage account.
1031 # # If a managed identity has been assigned to the machines running the
1032 # # workflow (e.g., https://docs.microsoft.com/en-us/azure/aks/use-managed-identity)
1033 # # then accountKeySecret is not needed, and useSDKCreds should be
1034 # # set to true instead:
1037 # name: my-azure-storage-credentials
1038 # key: account-access-key
1039# -- The section of custom artifact repository.
1040# Utilize a custom artifact repository that is not one of the current base ones (s3, gcs, azure)
1041customArtifactRepository: {}
1043# repoUrl: https://artifactory.example.com/raw
1045# name: artifactory-creds
1048# name: artifactory-creds
1051# -- The section of [artifact repository ref](https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/).
1052# Each map key is the name of configmap
1053# @default -- `{}` (See [values.yaml])
1054artifactRepositoryRef: {}
1056# # If you want to use this config map by default, name it "artifact-repositories".
1057# # Otherwise, you can provide a reference to a
1058# # different config map in `artifactRepositoryRef.configMap`.
1059# artifact-repositories:
1060# # -- v3.0 and after - if you want to use a specific key, put that key into this annotation.
1062# workflows.argoproj.io/default-artifact-repository: default-v1-s3-artifact-repository
1063# # 1st data of configmap. See above artifactRepository or customArtifactRepository.
1064# default-v1-s3-artifact-repository:
1068# endpoint: minio:9000
1071# name: my-minio-cred
1074# name: my-minio-cred
1077# oss-artifact-repository:
1080# endpoint: http://oss-cn-zhangjiakou-internal.aliyuncs.com
1082# # accessKeySecret and secretKeySecret are secret selectors.
1083# # It references the k8s secret named 'bucket-workflow-artifect-credentials'.
1084# # This secret is expected to have the keys 'accessKey'
1085# # and 'secretKey', containing the base64 encoded credentials
1088# name: $mybucket-credentials
1091# name: $mybucket-credentials
1094# another-artifact-repositories:
1096# workflows.argoproj.io/default-artifact-repository: gcs
1099# keyFormat: prefix/in/bucket/{{workflow.name}}/{{pod.name}}
1100# serviceAccountKeySecret:
1101# name: my-gcs-credentials
1102# key: serviceAccountKey
1105 # -- The command/args for each image on workflow, needed when the command is not specified and the emissary executor is used.
1106 ## See more: https://argo-workflows.readthedocs.io/en/stable/workflow-executors/#emissary-emissary
1108 # argoproj/argosay:v2:
1110 # docker/whalesay:latest: