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 kubectl container that applies CRDs
24 # -- Repository for the kubectl image
25 repository: cgr.dev/chainguard-private/kubectl
26 # -- Tag for the kubectl image
27 tag: latest@sha256:813723b36eec34794fee5918af46e48ff25f09f46124afdc80acdc5ea4ff6a84
28 # -- Override base URL to download full CRD YAML files from. Defaults to this chart's release tag on GitHub. Ignored if hostPath is set.
30 # -- Host path to mount CRD files from (for local/CI testing). When set, CRDs are applied from this path instead of downloading.
32 # -- Resources for the CRD install Job containers
34 # -- Node selector for the CRD install Job
36 # -- Pod security context for the CRD install Job pod
37 podSecurityContext: {}
38 # -- Optional labels to add to the CRD install Job pod
40 # -- Tolerations for the CRD install Job
42 # -- Image pull secrets for the CRD install Job
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
59 # value: "http://proxy.example.com:8080"
61 # value: "http://proxy.example.com:8080"
63 # value: "localhost,127.0.0.1,10.96.0.0/12,192.168.0.0/16"
64# -- Create ClusterRoles that extend existing ClusterRoles to interact with Argo Workflows CRDs.
65## Ref: https://kubernetes.io/docs/reference/access-authn-authz/rbac/#aggregated-clusterroles
66createAggregateRoles: true
67# -- String to partially override "argo-workflows.fullname" template
69# -- String to fully override "argo-workflows.fullname" template
71# -- Override the namespace
72# @default -- `.Release.Namespace`
74# -- Labels to set on all resources
76# -- Override the Kubernetes version, which is used to evaluate certain manifests
77kubeVersionOverride: ""
80 # -- String to override apiVersion of autoscaling rendered by this helm chart
81 autoscaling: "" # autoscaling/v2
82 # -- String to override apiVersion of GKE resources rendered by this helm chart
83 cloudgoogle: "" # cloud.google.com/v1
84 # -- String to override apiVersion of monitoring CRDs (ServiceMonitor) rendered by this helm chart
85 monitoring: "" # monitoring.coreos.com/v1
86# -- Restrict Argo to operate only in a single namespace (the namespace of the
87# Helm release) by apply Roles and RoleBindings instead of the Cluster
88# equivalents, and start workflow-controller with the --namespaced flag. Use it
89# in clusters with strict access policy.
92 # -- Deprecated; use controller.workflowNamespaces instead.
95 # -- Specifies whether a service account should be created
97 # -- Specifies whether a secret for each service account should be created
99 # -- Labels applied to created service account
101 # -- Annotations applied to created service account
103 # -- Service account which is used to run workflows
104 name: "argo-workflow"
105 # -- Secrets with credentials to pull images from a private registry. Same format as `.Values.images.pullSecrets`
108 # -- Adds Role and RoleBinding for the above specified service account to be able to run workflows.
109 # A Role and Rolebinding pair is also created for each namespace in controller.workflowNamespaces (see below)
111 # -- Allows permissions for the Argo Agent. Only required if using http/plugin templates
112 agentPermissions: false
113 # -- Allows permissions for the Argo Artifact GC pod. Only required if using artifact gc
115 # -- Extra service accounts to be added to the RoleBinding
117 # - name: my-service-account
118 # namespace: my-namespace
119 # -- Additional rules for the service account that runs the workflows.
123 # -- Registry to use for the controller
125 # -- Registry to use for the controller
126 repository: chainguard-private/argo-workflowcontroller
127 # -- Image tag for the workflow controller. Defaults to `.Values.images.tag`.
128 tag: latest@sha256:726a165ebadfed320a22b96a066b69a556cdf02978a25aab6270f5e5799f8ff1
129 # -- parallelism dictates how many workflows can be running at the same time
131 # -- Globally limits the rate at which pods are created.
132 # This is intended to mitigate flooding of the Kubernetes API server by workflows with a large amount of
134 resourceRateLimit: {}
139 # -- Adds Role and RoleBinding for the controller.
141 # -- Allows controller to get, list, and watch certain k8s secrets
143 # -- Allows controller to get, list and watch all k8s secrets. Can only be used if secretWhitelist is empty.
144 accessAllSecrets: false
145 # -- Allows controller to create and update ConfigMaps. Enables memoization feature
146 writeConfigMaps: false
148 # -- Create a ConfigMap for the controller
152 # -- ConfigMap annotations
154 # -- Limits the maximum number of incomplete workflows in a namespace
155 namespaceParallelism:
156 # -- Resolves ongoing, uncommon AWS EKS bug: https://github.com/argoproj/argo-workflows/pull/4224
158 # -- deploymentAnnotations is an optional map of annotations to be applied to the controller Deployment
159 deploymentAnnotations: {}
160 # -- podAnnotations is an optional map of annotations to be applied to the controller Pods
162 # -- Optional labels to add to the controller pods
164 # -- SecurityContext to set on the controller pods
165 podSecurityContext: {}
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 # -- Port is the port where metrics are emitted
176 # -- How often custom metrics are cleared from memory
178 # -- Flag that instructs prometheus to ignore metric emission errors.
180 # -- Flag that use a self-signed cert for TLS
182 # -- Container metrics port name
184 # -- Service metrics port
186 # -- Service metrics port name
187 servicePortName: metrics
188 # -- serviceMonitor scheme
190 # -- Flag to enable headless service
191 headlessService: false
192 # -- When true, honorLabels preserves the metric’s labels when they collide with the target’s labels.
193 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#honorlabels
195 # -- ServiceMonitor relabel configs to apply to samples before scraping
196 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#relabelconfig
198 # -- ServiceMonitor metric relabel configs to apply to samples before ingestion
199 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#endpoint
200 metricRelabelings: []
201 # -- ServiceMonitor will add labels from the service to the Prometheus metric
202 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#servicemonitorspec
204 # -- Manipulate the metrics created by the workflow controller
205 ## Ref: https://argo-workflows.readthedocs.io/en/latest/metrics/#modifiers
207 # -- the controller container's securityContext
209 readOnlyRootFilesystem: true
211 allowPrivilegeEscalation: false
215 # -- enable Workflow Archive to store the status of workflows. Postgres and MySQL (>= 5.7.8) are available.
216 ## Ref: https://argo-workflows.readthedocs.io/en/stable/workflow-archive/
221 # # save the entire workflow into etcd and DB
222 # nodeStatusOffLoad: false
223 # # enable archiving of old workflows
229 # tableName: argo_workflows
230 # # the database secrets must be in the same namespace of the controller
232 # name: argo-postgres-config
235 # name: argo-postgres-config
238 # # sslMode must be one of: disable, require, verify-ca, verify-full
239 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
245 # tableName: argo_workflows
247 # name: argo-mysql-config
250 # name: argo-mysql-config
253 # -- Default values that will apply to all Workflows from this controller, unless overridden on the Workflow-level.
254 # Only valid for 2.7+
255 ## See more: https://argo-workflows.readthedocs.io/en/stable/default-workflow-specs/
259 # secondsAfterCompletion: 86400
260 # # Ref: https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/
261 # artifactRepositoryRef:
262 # configMap: my-artifact-repository # default is "artifact-repositories"
263 # key: v2-s3-artifact-repository # default can be set by the `workflows.argoproj.io/default-artifact-repository` annotation in config map.
265 # -- Number of workflow workers
266 workflowWorkers: # 32
267 # -- Number of workflow TTL workers
268 workflowTTLWorkers: # 4
269 # -- Number of pod cleanup workers
270 podCleanupWorkers: # 4
271 # -- Number of cron workflow workers
272 # Only valid for 3.5+
273 cronWorkflowWorkers: # 8
274 # -- Restricts the Workflows that the controller will process.
275 # Only valid for 2.9+
276 workflowRestrictions: {}
277 # templateReferencing: Strict|Secure
279 # telemetryConfig controls the path and port for prometheus telemetry. Telemetry is enabled and emitted in the same endpoint
280 # as metrics by default, but can be overridden using this config.
282 # -- Enables prometheus telemetry server
286 # -- Frequency at which prometheus scrapes telemetry data
288 # -- telemetry container port
290 # -- How often custom metrics are cleared from memory
292 # -- Flag that instructs prometheus to ignore metric emission errors.
294 # -- Flag that use a self-signed cert for TLS
296 # -- telemetry service port
298 # -- telemetry service port name
299 servicePortName: telemetry
300 # -- telemetry serviceMonitor scheme to use
303 # -- Enable a prometheus ServiceMonitor
305 # -- Prometheus ServiceMonitor labels
307 # -- Prometheus ServiceMonitor namespace
308 namespace: "" # "monitoring"
310 # -- Create a service account for the controller
312 # -- Service account name
314 # -- Labels applied to created service account
316 # -- Annotations applied to created service account
318 # -- Workflow controller name string
319 name: workflow-controller
320 # -- Specify all namespaces where this workflow controller instance will manage
321 # workflows. This controls where the service account and RBAC resources will
322 # be created. Only valid when singleNamespace is false.
326 # -- Configures the controller to filter workflow submissions
327 # to only those which have a matching instanceID attribute.
328 ## NOTE: If `instanceID.enabled` is set to `true` then either `instanceID.userReleaseName`
329 ## or `instanceID.explicitID` must be defined.
331 # -- Use ReleaseName as instanceID
332 useReleaseName: false
333 # useReleaseName: true
335 # -- Use a custom instanceID
337 # explicitID: unique-argo-controller-identifier
339 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
341 # -- Set the glog logging level
343 # -- Set the logging format (one of: `text`, `json`)
345 # -- Service type of the controller Service
346 serviceType: ClusterIP
347 # -- Annotations to be applied to the controller Service
348 serviceAnnotations: {}
349 # -- Optional labels to add to the controller Service
351 # -- The class of the load balancer implementation
352 loadBalancerClass: ""
353 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
354 loadBalancerSourceRanges: []
355 # -- Resource limits and requests for the controller
357 # -- Configure liveness [probe] for the controller
358 # @default -- See [values.yaml]
364 initialDelaySeconds: 90
367 # -- Extra environment variables to provide to the controller container
372 # -- Extra arguments to be added to the controller
374 # -- Additional volume mounts to the controller main container
376 # -- Additional volumes to the controller pod
378 # -- The number of controller pods to run
380 # -- The number of revisions to keep.
381 revisionHistoryLimit: 10
383 # -- Configure [Pod Disruption Budget] for the controller pods
389 kubernetes.io/os: linux
390 # -- [Tolerations] for use with node taints
392 # -- Assign custom [affinity] rules
394 # -- Assign custom [TopologySpreadConstraints] rules to the workflow controller
395 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
396 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
397 topologySpreadConstraints: []
399 # topologyKey: topology.kubernetes.io/zone
400 # whenUnsatisfiable: DoNotSchedule
402 # -- Leverage a PriorityClass to ensure your pods survive resource shortages.
403 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
404 priorityClassName: ""
405 # -- Configure Argo Server to show custom [links]
406 ## Ref: https://argo-workflows.readthedocs.io/en/stable/links/
408 # -- Configure Argo Server to show custom [columns]
409 ## Ref: https://github.com/argoproj/argo-workflows/pull/10693
411 # -- Set ui navigation bar background color
413 clusterWorkflowTemplates:
414 # -- Create a ClusterRole and CRB for the controller to access ClusterWorkflowTemplates.
416 # -- Extra service accounts to be added to the ClusterRoleBinding
418 # - name: my-service-account
419 # namespace: my-namespace
420 # -- Extra containers to be added to the controller deployment
422 # -- Enables init containers to be added to the controller deployment
423 extraInitContainers: []
424 # -- Workflow retention by number of workflows
431 # -- Enable to emit events on node completion.
432 ## This can take up a lot of space in k8s (typically etcd) resulting in errors when trying to create new events:
433 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
436 # -- Enable to emit events on workflow status changes.
437 ## This can take up a lot of space in k8s (typically etcd), resulting in errors when trying to create new events:
438 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
440 # -- Configure when workflow controller runs in a different k8s cluster with the workflow workloads,
441 # or needs to communicate with the k8s apiserver using an out-of-cluster kubeconfig secret.
442 # @default -- `{}` (See [values.yaml])
444 # # name of the kubeconfig secret, may not be empty when kubeConfig specified
445 # secretName: kubeconfig-secret
446 # # key of the kubeconfig secret, may not be empty when kubeConfig specified
447 # secretKey: kubeconfig
448 # # mounting path of the kubeconfig secret, default to /kube/config
449 # mountPath: /kubeconfig/mount/path
450 # # volume name when mounting the secret, default to kubeconfig
451 # volumeName: kube-config-volume
453 # -- Specifies the duration in seconds before a terminating pod is forcefully killed. A zero value indicates that the pod will be forcefully terminated immediately.
454 # @default -- `30` seconds (Kubernetes default)
455 podGCGracePeriodSeconds:
456 # -- The duration in seconds before the pods in the GC queue get deleted. A zero value indicates that the pods will be deleted immediately.
457 # @default -- `5s` (Argo Workflows default)
458 podGCDeleteDelayDuration: ""
459 # -- enable Synchronization to use a database. Postgres and MySQL (>= 5.7.8) are available.
460 ## Ref: https://argo-workflows.readthedocs.io/en/latest/workflow-controller-configmap/#syncconfig
462 # controllerName: argo-workflows
470 # tableName: argo_workflows
471 # # the database secrets must be in the same namespace of the controller
473 # name: argo-postgres-config
476 # name: argo-postgres-config
479 # # sslMode must be one of: disable, require, verify-ca, verify-full
480 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
486 # tableName: argo_workflows
488 # name: argo-mysql-config
491 # name: argo-mysql-config
495 # -- Enable to restart of pods that fail before entering Running state.
496 ## This is useful for recovering from transient infrastructure issues like node eviction due to DiskPressure or MemoryPressure without requiring a retryStrategy on every template.
497 ## ref: https://argo-workflows.readthedocs.io/en/latest/pod-restarts/
499 # -- Maximum number of automatic restarts per node before giving up.
501# mainContainer adds default config for main container that could be overriden in workflows template
503 # -- imagePullPolicy to apply to Workflow main container. Defaults to `.Values.images.pullPolicy`.
505 # -- Resource limits and requests for the Workflow main container
507 # -- Adds environment variables for the Workflow main container
509 # -- Adds reference environment variables for the Workflow main container
511 # -- sets security context for the Workflow main container
513# executor controls how the init and wait container should be customized
516 # -- Registry to use for the Workflow Executors
518 # -- Repository to use for the Workflow Executors
519 repository: chainguard-private/argo-exec
520 # -- Image tag for the workflow executor. Defaults to `.Values.images.tag`.
521 tag: latest@sha256:c932e2e04d37559f36831be1a5b1724abe9db541fd015df9358419e8eb10b5f5
522 # -- Image PullPolicy to use for the Workflow Executors. Defaults to `.Values.images.pullPolicy`.
524 # -- Resource limits and requests for the Workflow Executors
526 # -- Passes arguments to the executor processes
528 # -- Adds environment variables for the executor.
530 # -- sets security context for the executor container
533 # -- Deploy the Argo Server
535 # -- Value for base href in index.html. Used if the server is running behind reverse proxy under subpath different from /.
536 ## only updates base url of resources on client side,
537 ## it's expected that a proxy server rewrites the request URL and gets rid of this prefix
538 ## https://github.com/argoproj/argo-workflows/issues/716#issuecomment-433213190
541 # -- Registry to use for the server
543 # -- Repository to use for the server
544 repository: chainguard-private/argo-cli
545 # -- Image tag for the Argo Workflows server. Defaults to `.Values.images.tag`.
546 tag: latest@sha256:81e2246d80e0bf0acbdf8d9c98b0385061a82c42bcf6251b2d20df799d8191c7
547 # -- optional map of annotations to be applied to the ui Deployment
548 deploymentAnnotations: {}
549 # -- optional map of annotations to be applied to the ui Pods
551 # -- Optional labels to add to the UI pods
553 # -- SecurityContext to set on the server pods
554 podSecurityContext: {}
556 # -- Adds Role and RoleBinding for the server.
558 # -- Servers container-level security context
560 readOnlyRootFilesystem: false
562 allowPrivilegeEscalation: false
566 # -- Server name string
568 # -- Service type for server pods
569 serviceType: ClusterIP
570 # -- Service port for server
572 # -- Service target port for server
573 serviceTargetPort: 2746
574 # -- Service node port
575 serviceNodePort: # 32746
576 # -- Service port name
577 servicePortName: "" # http
578 # -- Mapping between IP and hostnames that will be injected as entries in the pod's hosts files
585 # -- Create a service account for the server
587 # -- Service account name
589 # -- Labels applied to created service account
591 # -- Annotations applied to created service account
593 # -- Annotations to be applied to the UI Service
594 serviceAnnotations: {}
595 # -- Optional labels to add to the UI Service
597 # -- The class of the load balancer implementation
598 loadBalancerClass: ""
599 # -- Static IP address to assign to loadBalancer service type `LoadBalancer`
601 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
602 loadBalancerSourceRanges: []
603 # -- Resource limits and requests for the server
605 # -- The number of server pods to run
607 # -- The number of revisions to keep.
608 revisionHistoryLimit: 10
609 ## Argo Server Horizontal Pod Autoscaler
611 # -- Enable Horizontal Pod Autoscaler ([HPA]) for the Argo Server
613 # -- Minimum number of replicas for the Argo Server [HPA]
615 # -- Maximum number of replicas for the Argo Server [HPA]
617 # -- Average CPU utilization percentage for the Argo Server [HPA]
618 targetCPUUtilizationPercentage: 50
619 # -- Average memory utilization percentage for the Argo Server [HPA]
620 targetMemoryUtilizationPercentage: 50
621 # -- Configures the scaling behavior of the target in both Up and Down directions.
622 # This is only available on HPA apiVersion `autoscaling/v2beta2` and newer
625 # stabilizationWindowSeconds: 300
631 # stabilizationWindowSeconds: 300
636 # -- Configure [Pod Disruption Budget] for the server pods
642 kubernetes.io/os: linux
643 # -- [Tolerations] for use with node taints
645 # -- Assign custom [affinity] rules
647 # -- Assign custom [TopologySpreadConstraints] rules to the argo server
648 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
649 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
650 topologySpreadConstraints: []
652 # topologyKey: topology.kubernetes.io/zone
653 # whenUnsatisfiable: DoNotSchedule
655 # -- Leverage a PriorityClass to ensure your pods survive resource shortages
656 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
657 priorityClassName: ""
658 # -- Run the argo server in "secure" mode. Configure this value instead of `--secure` in extraArgs.
659 ## See the following documentation for more details on secure mode:
660 ## https://argo-workflows.readthedocs.io/en/stable/tls/
662 # -- Extra environment variables to provide to the argo-server container
667 # -- Deprecated; use server.authModes instead.
669 # -- A list of supported authentication modes. Available values are `server`, `client`, or `sso`. If you provide sso, please configure `.Values.server.sso` as well.
670 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server-auth-mode/
672 # -- Extra arguments to provide to the Argo server binary.
673 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server/#options
676 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
678 # -- Set the glog logging level
680 # -- Set the logging format (one of: `text`, `json`)
682 # -- Volume to be mounted in Pods for temporary files.
685 # -- Additional volume mounts to the server main container.
687 # -- Additional volumes to the server pod.
689 ## Ingress configuration.
690 # ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
692 # -- Enable an ingress resource
694 # -- Additional ingress annotations
696 # -- Additional ingress labels
698 # -- Defines which ingress controller will implement the resource
700 # -- List of ingress hosts
701 ## Hostnames must be provided if Ingress is enabled.
702 ## Secrets must be manually created in the namespace
704 # - argoworkflows.example.com
706 # -- List of ingress paths
709 # -- Ingress path type. One of `Exact`, `Prefix` or `ImplementationSpecific`
711 # -- Additional ingress paths
715 # serviceName: ssl-redirect
716 # servicePort: use-annotation
717 ## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
724 # name: use-annotation
726 # -- Ingress TLS configuration
728 # - secretName: argoworkflows-example-tls
730 # - argoworkflows.example.com
731 ## Create a Google Backendconfig for use with the GKE Ingress Controller
732 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-configuration#configuring_ingress_features_through_backendconfig_parameters
734 # -- Enable BackendConfig custom resource for Google Kubernetes Engine
736 # -- [BackendConfigSpec]
741 # oauthclientCredentials:
742 # secretName: argoworkflows-secret
744 ## Create a Google Managed Certificate for use with the GKE Ingress Controller
745 ## https://cloud.google.com/kubernetes-engine/docs/how-to/managed-certs
746 GKEmanagedCertificate:
747 # -- Enable ManagedCertificate custom resource for Google Kubernetes Engine.
749 # -- Domains for the Google Managed Certificate
751 - argoworkflows.example.com
752 ## Create a Google FrontendConfig Custom Resource, for use with the GKE Ingress Controller
753 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#configuring_ingress_features_through_frontendconfig_parameters
755 # -- Enable FrontConfig custom resource for Google Kubernetes Engine
757 # -- [FrontendConfigSpec]
762 # responseCodeName: RESPONSE_CODE
764 # Gateway API HTTPRoute configuration
765 # NOTE: Gateway API support is in EXPERIMENTAL status
766 # Support depends on your Gateway controller implementation
767 # Some controllers may require additional configuration (e.g., BackendTLSPolicy for HTTPS backends)
768 # Refer to https://gateway-api.sigs.k8s.io/implementations/ for controller-specific details
770 # -- Enable HTTPRoute resource for Argo Workflows server (Gateway API)
772 # -- Additional HTTPRoute labels
774 # -- Additional HTTPRoute annotations
776 # -- Gateway API parentRefs for the HTTPRoute
777 ## Must reference an existing Gateway
778 # @default -- `[]` (See [values.yaml])
780 # - name: example-gateway
781 # namespace: example-gateway-namespace
783 # -- List of hostnames for the HTTPRoute
784 # @default -- `[]` (See [values.yaml])
786 # - argoworkflows.example.com
787 # -- HTTPRoute rules configuration
788 # @default -- `[]` (See [values.yaml])
795 # - type: RequestHeaderModifier
796 # requestHeaderModifier:
798 # - name: X-Custom-Header
799 # value: custom-value
803 # Gateway API BackendTLSPolicy configuration
804 # NOTE: BackendTLSPolicy support is in EXPERIMENTAL status
805 # Required for HTTPS backends when using Gateway API
806 # Not all Gateway controllers support this resource (e.g., Cilium does not support it yet)
808 # -- Enable BackendTLSPolicy resource for Argo Workflows server (Gateway API)
810 # -- Additional BackendTLSPolicy labels
812 # -- Additional BackendTLSPolicy annotations
814 # -- Target references for the BackendTLSPolicy
815 # @default -- `[]` (See [values.yaml])
819 # name: argo-workflows-server
821 # -- TLS validation configuration
822 # @default -- `{}` (See [values.yaml])
824 # hostname: argo-workflows-server.argo.svc.cluster.local
826 # - name: example-ca-cert
829 # wellKnownCACertificates: System
830 clusterWorkflowTemplates:
831 # -- Create a ClusterRole and CRB for the server to access ClusterWorkflowTemplates.
833 # -- Give the server permissions to edit ClusterWorkflowTemplates.
835 # SSO configuration when SSO is specified as a server auth mode.
837 # -- Create SSO configuration. If you set `true` , please also set `.Values.server.authModes` as `sso`.
839 # -- The root URL of the OIDC identity provider
840 issuer: https://accounts.google.com
842 # -- Name of secret to retrieve the app OIDC client ID
843 name: argo-server-sso
844 # -- Key of secret to retrieve the app OIDC client ID
847 # -- Name of a secret to retrieve the app OIDC client secret
848 name: argo-server-sso
849 # -- Key of a secret to retrieve the app OIDC client secret
851 # -- The OIDC redirect URL. Should be in the form <argo-root-url>/oauth2/callback.
854 # -- Adds ServiceAccount Policy to server (Cluster)Role.
856 # -- Whitelist to allow server to fetch Secrets
857 ## When present, restricts secrets the server can read to a given list.
858 ## You can use it to restrict the server to only be able to access the
859 ## service account token secrets that are associated with service accounts
860 ## used for authorization.
862 # -- Scopes requested from the SSO ID provider
863 ## The 'groups' scope requests group membership information, which is usually used for authorization decisions.
866 # -- Define how long your login is valid for (in hours)
867 ## If omitted, defaults to 10h.
869 # -- Alternate root URLs that can be included for some OIDC providers
871 # -- Override claim name for OIDC groups
872 customGroupClaimName: ""
873 # -- Specify the user info endpoint that contains the groups claim
874 ## Configure this if your OIDC provider provides groups information only using the user-info endpoint (e.g. Okta)
876 # -- Skip TLS verification for the HTTP client
877 insecureSkipVerify: false
878 # -- Filter the groups returned by the OIDC provider
879 ## A logical "OR" is used between each regex in the list
880 filterGroupsRegex: []
882 # - ".*argo-workflow.*"
883 # -- Extra containers to be added to the server deployment
885 # -- Enables init containers to be added to the server deployment
886 extraInitContainers: []
887 # -- Specify postStart and preStop lifecycle hooks for server container
889 # -- terminationGracePeriodSeconds for container lifecycle hook
890 terminationGracePeriodSeconds: 30
891 ## livenessProbe for server
892 ## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
894 # -- Enable Kubernetes liveness probe for server
897 # -- Http port to use for the liveness probe
899 # -- Http path to use for the liveness probe
901 # -- Minimum consecutive failures for the [probe] to be considered failed after having succeeded
903 # -- Number of seconds after the container has started before [probe] is initiated
904 initialDelaySeconds: 10
905 # -- How often (in seconds) to perform the [probe]
907 # -- Number of seconds after which the [probe] times out
909 # -- Minimum consecutive successes for the [probe] to be considered successful after having failed
911# -- Array of extra K8s manifests to deploy
913# - apiVersion: secrets-store.csi.x-k8s.io/v1
914# kind: SecretProviderClass
916# name: argo-server-sso
921# - objectName: "argo/server/sso"
922# objectType: "secretsmanager"
925# objectAlias: "client_id"
926# - path: "client_secret"
927# objectAlias: "client_secret"
931# objectName: client_id
932# - key: client_secret
933# objectName: client_secret
934# secretName: argo-server-sso-secrets-store
937# -- Use static credentials for S3 (eg. when not using AWS IRSA)
938useStaticCredentials: true
940 # -- Archive the main container logs as an artifact
942 # -- Store artifact in a S3-compliant object store
943 # @default -- See [values.yaml]
945 # # Note the `key` attribute is not the actual secret, it's the PATH to
946 # # the contents in the associated secret, as defined by the `name` attribute.
948 # name: "{{ .Release.Name }}-minio"
951 # name: "{{ .Release.Name }}-minio"
953 # sessionTokenSecret:
954 # name: "{{ .Release.Name }}-minio"
956 # # insecure will disable TLS. Primarily used for minio installs not configured with TLS
967 # enableEncryption: true
968 # -- Store artifact in a GCS object store
969 # @default -- `{}` (See [values.yaml])
971 # bucket: <project>-argo
972 # keyFormat: "{{ \"{{workflow.namespace}}/{{workflow.name}}/{{pod.name}}\" }}"
973 # # serviceAccountKeySecret is a secret selector.
974 # # It references the k8s secret named 'my-gcs-credentials'.
975 # # This secret is expected to have the key 'serviceAccountKey',
976 # # containing the base64 encoded credentials
979 # # If it's running on GKE and Workload Identity is used,
980 # # serviceAccountKeySecret is not needed.
981 # serviceAccountKeySecret:
982 # name: my-gcs-credentials
983 # key: serviceAccountKey
984 # -- Store artifact in Azure Blob Storage
985 # @default -- `{}` (See [values.yaml])
987 # endpoint: https://mystorageaccountname.blob.core.windows.net
988 # container: my-container-name
989 # blobNameFormat: path/in/container
990 # # accountKeySecret is a secret selector.
991 # # It references the k8s secret named 'my-azure-storage-credentials'.
992 # # This secret is expected to have the key 'account-access-key',
993 # # containing the base64 encoded credentials to the storage account.
994 # # If a managed identity has been assigned to the machines running the
995 # # workflow (e.g., https://docs.microsoft.com/en-us/azure/aks/use-managed-identity)
996 # # then accountKeySecret is not needed, and useSDKCreds should be
997 # # set to true instead:
1000 # name: my-azure-storage-credentials
1001 # key: account-access-key
1002# -- The section of custom artifact repository.
1003# Utilize a custom artifact repository that is not one of the current base ones (s3, gcs, azure)
1004customArtifactRepository: {}
1006# repoUrl: https://artifactory.example.com/raw
1008# name: artifactory-creds
1011# name: artifactory-creds
1014# -- The section of [artifact repository ref](https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/).
1015# Each map key is the name of configmap
1016# @default -- `{}` (See [values.yaml])
1017artifactRepositoryRef: {}
1019# # If you want to use this config map by default, name it "artifact-repositories".
1020# # Otherwise, you can provide a reference to a
1021# # different config map in `artifactRepositoryRef.configMap`.
1022# artifact-repositories:
1023# # -- v3.0 and after - if you want to use a specific key, put that key into this annotation.
1025# workflows.argoproj.io/default-artifact-repository: default-v1-s3-artifact-repository
1026# # 1st data of configmap. See above artifactRepository or customArtifactRepository.
1027# default-v1-s3-artifact-repository:
1031# endpoint: minio:9000
1034# name: my-minio-cred
1037# name: my-minio-cred
1040# oss-artifact-repository:
1043# endpoint: http://oss-cn-zhangjiakou-internal.aliyuncs.com
1045# # accessKeySecret and secretKeySecret are secret selectors.
1046# # It references the k8s secret named 'bucket-workflow-artifect-credentials'.
1047# # This secret is expected to have the keys 'accessKey'
1048# # and 'secretKey', containing the base64 encoded credentials
1051# name: $mybucket-credentials
1054# name: $mybucket-credentials
1057# another-artifact-repositories:
1059# workflows.argoproj.io/default-artifact-repository: gcs
1062# keyFormat: prefix/in/bucket/{{workflow.name}}/{{pod.name}}
1063# serviceAccountKeySecret:
1064# name: my-gcs-credentials
1065# key: serviceAccountKey
1068 # -- The command/args for each image on workflow, needed when the command is not specified and the emissary executor is used.
1069 ## See more: https://argo-workflows.readthedocs.io/en/stable/workflow-executors/#emissary-emissary
1071 # argoproj/argosay:v2:
1073 # docker/whalesay:latest: