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:2ad180bbbcc8d809f3a9ab75202adeddec89ee5554a46aff8ed5d0429f18a151
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 # -- Tolerations for the CRD install Job
38 # -- Image pull secrets for the CRD install Job
40 # -- Extra environment variables to provide to the CRD install Job container
43 # value: "http://proxy.example.com:8080"
45 # value: "http://proxy.example.com:8080"
47 # value: "localhost,127.0.0.1,10.96.0.0/12,192.168.0.0/16"
48# -- Create ClusterRoles that extend existing ClusterRoles to interact with Argo Workflows CRDs.
49## Ref: https://kubernetes.io/docs/reference/access-authn-authz/rbac/#aggregated-clusterroles
50createAggregateRoles: true
51# -- String to partially override "argo-workflows.fullname" template
53# -- String to fully override "argo-workflows.fullname" template
55# -- Override the namespace
56# @default -- `.Release.Namespace`
58# -- Labels to set on all resources
60# -- Override the Kubernetes version, which is used to evaluate certain manifests
61kubeVersionOverride: ""
64 # -- String to override apiVersion of autoscaling rendered by this helm chart
65 autoscaling: "" # autoscaling/v2
66 # -- String to override apiVersion of GKE resources rendered by this helm chart
67 cloudgoogle: "" # cloud.google.com/v1
68 # -- String to override apiVersion of monitoring CRDs (ServiceMonitor) rendered by this helm chart
69 monitoring: "" # monitoring.coreos.com/v1
70# -- Restrict Argo to operate only in a single namespace (the namespace of the
71# Helm release) by apply Roles and RoleBindings instead of the Cluster
72# equivalents, and start workflow-controller with the --namespaced flag. Use it
73# in clusters with strict access policy.
76 # -- Deprecated; use controller.workflowNamespaces instead.
79 # -- Specifies whether a service account should be created
81 # -- Specifies whether a secret for each service account should be created
83 # -- Labels applied to created service account
85 # -- Annotations applied to created service account
87 # -- Service account which is used to run workflows
89 # -- Secrets with credentials to pull images from a private registry. Same format as `.Values.images.pullSecrets`
92 # -- Adds Role and RoleBinding for the above specified service account to be able to run workflows.
93 # A Role and Rolebinding pair is also created for each namespace in controller.workflowNamespaces (see below)
95 # -- Allows permissions for the Argo Agent. Only required if using http/plugin templates
96 agentPermissions: false
97 # -- Allows permissions for the Argo Artifact GC pod. Only required if using artifact gc
99 # -- Extra service accounts to be added to the RoleBinding
101 # - name: my-service-account
102 # namespace: my-namespace
103 # -- Additional rules for the service account that runs the workflows.
107 # -- Registry to use for the controller
109 # -- Registry to use for the controller
110 repository: chainguard-private/argo-workflowcontroller
111 # -- Image tag for the workflow controller. Defaults to `.Values.images.tag`.
112 tag: latest@sha256:24712b85c065c9cf0ad26191cdbbb789c9d513c26f85d39b748254328f5f0c78
113 # -- parallelism dictates how many workflows can be running at the same time
115 # -- Globally limits the rate at which pods are created.
116 # This is intended to mitigate flooding of the Kubernetes API server by workflows with a large amount of
118 resourceRateLimit: {}
123 # -- Adds Role and RoleBinding for the controller.
125 # -- Allows controller to get, list, and watch certain k8s secrets
127 # -- Allows controller to get, list and watch all k8s secrets. Can only be used if secretWhitelist is empty.
128 accessAllSecrets: false
129 # -- Allows controller to create and update ConfigMaps. Enables memoization feature
130 writeConfigMaps: false
132 # -- Create a ConfigMap for the controller
136 # -- ConfigMap annotations
138 # -- Limits the maximum number of incomplete workflows in a namespace
139 namespaceParallelism:
140 # -- Resolves ongoing, uncommon AWS EKS bug: https://github.com/argoproj/argo-workflows/pull/4224
142 # -- deploymentAnnotations is an optional map of annotations to be applied to the controller Deployment
143 deploymentAnnotations: {}
144 # -- podAnnotations is an optional map of annotations to be applied to the controller Pods
146 # -- Optional labels to add to the controller pods
148 # -- SecurityContext to set on the controller pods
149 podSecurityContext: {}
152 # -- Enables prometheus metrics server
154 # -- Path is the path where metrics are emitted. Must start with a "/".
156 # -- Frequency at which prometheus scrapes metrics
158 # -- Port is the port where metrics are emitted
160 # -- How often custom metrics are cleared from memory
162 # -- Flag that instructs prometheus to ignore metric emission errors.
164 # -- Flag that use a self-signed cert for TLS
166 # -- Container metrics port name
168 # -- Service metrics port
170 # -- Service metrics port name
171 servicePortName: metrics
172 # -- serviceMonitor scheme
174 # -- Flag to enable headless service
175 headlessService: false
176 # -- When true, honorLabels preserves the metric’s labels when they collide with the target’s labels.
177 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#honorlabels
179 # -- ServiceMonitor relabel configs to apply to samples before scraping
180 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#relabelconfig
182 # -- ServiceMonitor metric relabel configs to apply to samples before ingestion
183 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#endpoint
184 metricRelabelings: []
185 # -- ServiceMonitor will add labels from the service to the Prometheus metric
186 ## Ref: https://github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/api.md#servicemonitorspec
188 # -- Manipulate the metrics created by the workflow controller
189 ## Ref: https://argo-workflows.readthedocs.io/en/latest/metrics/#modifiers
191 # -- the controller container's securityContext
193 readOnlyRootFilesystem: true
195 allowPrivilegeEscalation: false
199 # -- enable Workflow Archive to store the status of workflows. Postgres and MySQL (>= 5.7.8) are available.
200 ## Ref: https://argo-workflows.readthedocs.io/en/stable/workflow-archive/
205 # # save the entire workflow into etcd and DB
206 # nodeStatusOffLoad: false
207 # # enable archiving of old workflows
213 # tableName: argo_workflows
214 # # the database secrets must be in the same namespace of the controller
216 # name: argo-postgres-config
219 # name: argo-postgres-config
222 # # sslMode must be one of: disable, require, verify-ca, verify-full
223 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
229 # tableName: argo_workflows
231 # name: argo-mysql-config
234 # name: argo-mysql-config
237 # -- Default values that will apply to all Workflows from this controller, unless overridden on the Workflow-level.
238 # Only valid for 2.7+
239 ## See more: https://argo-workflows.readthedocs.io/en/stable/default-workflow-specs/
243 # secondsAfterCompletion: 86400
244 # # Ref: https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/
245 # artifactRepositoryRef:
246 # configMap: my-artifact-repository # default is "artifact-repositories"
247 # key: v2-s3-artifact-repository # default can be set by the `workflows.argoproj.io/default-artifact-repository` annotation in config map.
249 # -- Number of workflow workers
250 workflowWorkers: # 32
251 # -- Number of workflow TTL workers
252 workflowTTLWorkers: # 4
253 # -- Number of pod cleanup workers
254 podCleanupWorkers: # 4
255 # -- Number of cron workflow workers
256 # Only valid for 3.5+
257 cronWorkflowWorkers: # 8
258 # -- Restricts the Workflows that the controller will process.
259 # Only valid for 2.9+
260 workflowRestrictions: {}
261 # templateReferencing: Strict|Secure
263 # telemetryConfig controls the path and port for prometheus telemetry. Telemetry is enabled and emitted in the same endpoint
264 # as metrics by default, but can be overridden using this config.
266 # -- Enables prometheus telemetry server
270 # -- Frequency at which prometheus scrapes telemetry data
272 # -- telemetry container port
274 # -- How often custom metrics are cleared from memory
276 # -- Flag that instructs prometheus to ignore metric emission errors.
278 # -- Flag that use a self-signed cert for TLS
280 # -- telemetry service port
282 # -- telemetry service port name
283 servicePortName: telemetry
284 # -- telemetry serviceMonitor scheme to use
287 # -- Enable a prometheus ServiceMonitor
289 # -- Prometheus ServiceMonitor labels
291 # -- Prometheus ServiceMonitor namespace
292 namespace: "" # "monitoring"
294 # -- Create a service account for the controller
296 # -- Service account name
298 # -- Labels applied to created service account
300 # -- Annotations applied to created service account
302 # -- Workflow controller name string
303 name: workflow-controller
304 # -- Specify all namespaces where this workflow controller instance will manage
305 # workflows. This controls where the service account and RBAC resources will
306 # be created. Only valid when singleNamespace is false.
310 # -- Configures the controller to filter workflow submissions
311 # to only those which have a matching instanceID attribute.
312 ## NOTE: If `instanceID.enabled` is set to `true` then either `instanceID.userReleaseName`
313 ## or `instanceID.explicitID` must be defined.
315 # -- Use ReleaseName as instanceID
316 useReleaseName: false
317 # useReleaseName: true
319 # -- Use a custom instanceID
321 # explicitID: unique-argo-controller-identifier
323 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
325 # -- Set the glog logging level
327 # -- Set the logging format (one of: `text`, `json`)
329 # -- Service type of the controller Service
330 serviceType: ClusterIP
331 # -- Annotations to be applied to the controller Service
332 serviceAnnotations: {}
333 # -- Optional labels to add to the controller Service
335 # -- The class of the load balancer implementation
336 loadBalancerClass: ""
337 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
338 loadBalancerSourceRanges: []
339 # -- Resource limits and requests for the controller
341 # -- Configure liveness [probe] for the controller
342 # @default -- See [values.yaml]
348 initialDelaySeconds: 90
351 # -- Extra environment variables to provide to the controller container
356 # -- Extra arguments to be added to the controller
358 # -- Additional volume mounts to the controller main container
360 # -- Additional volumes to the controller pod
362 # -- The number of controller pods to run
364 # -- The number of revisions to keep.
365 revisionHistoryLimit: 10
367 # -- Configure [Pod Disruption Budget] for the controller pods
373 kubernetes.io/os: linux
374 # -- [Tolerations] for use with node taints
376 # -- Assign custom [affinity] rules
378 # -- Assign custom [TopologySpreadConstraints] rules to the workflow controller
379 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
380 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
381 topologySpreadConstraints: []
383 # topologyKey: topology.kubernetes.io/zone
384 # whenUnsatisfiable: DoNotSchedule
386 # -- Leverage a PriorityClass to ensure your pods survive resource shortages.
387 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
388 priorityClassName: ""
389 # -- Configure Argo Server to show custom [links]
390 ## Ref: https://argo-workflows.readthedocs.io/en/stable/links/
392 # -- Configure Argo Server to show custom [columns]
393 ## Ref: https://github.com/argoproj/argo-workflows/pull/10693
395 # -- Set ui navigation bar background color
397 clusterWorkflowTemplates:
398 # -- Create a ClusterRole and CRB for the controller to access ClusterWorkflowTemplates.
400 # -- Extra service accounts to be added to the ClusterRoleBinding
402 # - name: my-service-account
403 # namespace: my-namespace
404 # -- Extra containers to be added to the controller deployment
406 # -- Enables init containers to be added to the controller deployment
407 extraInitContainers: []
408 # -- Workflow retention by number of workflows
415 # -- Enable to emit events on node completion.
416 ## This can take up a lot of space in k8s (typically etcd) resulting in errors when trying to create new events:
417 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
420 # -- Enable to emit events on workflow status changes.
421 ## This can take up a lot of space in k8s (typically etcd), resulting in errors when trying to create new events:
422 ## "Unable to create audit event: etcdserver: mvcc: database space exceeded"
424 # -- Configure when workflow controller runs in a different k8s cluster with the workflow workloads,
425 # or needs to communicate with the k8s apiserver using an out-of-cluster kubeconfig secret.
426 # @default -- `{}` (See [values.yaml])
428 # # name of the kubeconfig secret, may not be empty when kubeConfig specified
429 # secretName: kubeconfig-secret
430 # # key of the kubeconfig secret, may not be empty when kubeConfig specified
431 # secretKey: kubeconfig
432 # # mounting path of the kubeconfig secret, default to /kube/config
433 # mountPath: /kubeconfig/mount/path
434 # # volume name when mounting the secret, default to kubeconfig
435 # volumeName: kube-config-volume
437 # -- Specifies the duration in seconds before a terminating pod is forcefully killed. A zero value indicates that the pod will be forcefully terminated immediately.
438 # @default -- `30` seconds (Kubernetes default)
439 podGCGracePeriodSeconds:
440 # -- The duration in seconds before the pods in the GC queue get deleted. A zero value indicates that the pods will be deleted immediately.
441 # @default -- `5s` (Argo Workflows default)
442 podGCDeleteDelayDuration: ""
443 # -- enable Synchronization to use a database. Postgres and MySQL (>= 5.7.8) are available.
444 ## Ref: https://argo-workflows.readthedocs.io/en/latest/workflow-controller-configmap/#syncconfig
446 # controllerName: argo-workflows
454 # tableName: argo_workflows
455 # # the database secrets must be in the same namespace of the controller
457 # name: argo-postgres-config
460 # name: argo-postgres-config
463 # # sslMode must be one of: disable, require, verify-ca, verify-full
464 # # you can find more information about those ssl options here: https://godoc.org/github.com/lib/pq
470 # tableName: argo_workflows
472 # name: argo-mysql-config
475 # name: argo-mysql-config
479 # -- Enable to restart of pods that fail before entering Running state.
480 ## This is useful for recovering from transient infrastructure issues like node eviction due to DiskPressure or MemoryPressure without requiring a retryStrategy on every template.
481 ## ref: https://argo-workflows.readthedocs.io/en/latest/pod-restarts/
483 # -- Maximum number of automatic restarts per node before giving up.
485# mainContainer adds default config for main container that could be overriden in workflows template
487 # -- imagePullPolicy to apply to Workflow main container. Defaults to `.Values.images.pullPolicy`.
489 # -- Resource limits and requests for the Workflow main container
491 # -- Adds environment variables for the Workflow main container
493 # -- Adds reference environment variables for the Workflow main container
495 # -- sets security context for the Workflow main container
497# executor controls how the init and wait container should be customized
500 # -- Registry to use for the Workflow Executors
502 # -- Repository to use for the Workflow Executors
503 repository: chainguard-private/argo-exec
504 # -- Image tag for the workflow executor. Defaults to `.Values.images.tag`.
505 tag: latest@sha256:0ca6a3cb88ccf4f36523d698f7d5e8a882f1dbbb890a3aa78ecb402f5caac324
506 # -- Image PullPolicy to use for the Workflow Executors. Defaults to `.Values.images.pullPolicy`.
508 # -- Resource limits and requests for the Workflow Executors
510 # -- Passes arguments to the executor processes
512 # -- Adds environment variables for the executor.
514 # -- sets security context for the executor container
517 # -- Deploy the Argo Server
519 # -- Value for base href in index.html. Used if the server is running behind reverse proxy under subpath different from /.
520 ## only updates base url of resources on client side,
521 ## it's expected that a proxy server rewrites the request URL and gets rid of this prefix
522 ## https://github.com/argoproj/argo-workflows/issues/716#issuecomment-433213190
525 # -- Registry to use for the server
527 # -- Repository to use for the server
528 repository: chainguard-private/argo-cli
529 # -- Image tag for the Argo Workflows server. Defaults to `.Values.images.tag`.
530 tag: latest@sha256:0e652c7e3d677a5a9b508fa4cd18423dc0aaec92e6bf52b38dd081b4e6f6a976
531 # -- optional map of annotations to be applied to the ui Deployment
532 deploymentAnnotations: {}
533 # -- optional map of annotations to be applied to the ui Pods
535 # -- Optional labels to add to the UI pods
537 # -- SecurityContext to set on the server pods
538 podSecurityContext: {}
540 # -- Adds Role and RoleBinding for the server.
542 # -- Servers container-level security context
544 readOnlyRootFilesystem: false
546 allowPrivilegeEscalation: false
550 # -- Server name string
552 # -- Service type for server pods
553 serviceType: ClusterIP
554 # -- Service port for server
556 # -- Service target port for server
557 serviceTargetPort: 2746
558 # -- Service node port
559 serviceNodePort: # 32746
560 # -- Service port name
561 servicePortName: "" # http
562 # -- Mapping between IP and hostnames that will be injected as entries in the pod's hosts files
569 # -- Create a service account for the server
571 # -- Service account name
573 # -- Labels applied to created service account
575 # -- Annotations applied to created service account
577 # -- Annotations to be applied to the UI Service
578 serviceAnnotations: {}
579 # -- Optional labels to add to the UI Service
581 # -- The class of the load balancer implementation
582 loadBalancerClass: ""
583 # -- Static IP address to assign to loadBalancer service type `LoadBalancer`
585 # -- Source ranges to allow access to service from. Only applies to service type `LoadBalancer`
586 loadBalancerSourceRanges: []
587 # -- Resource limits and requests for the server
589 # -- The number of server pods to run
591 # -- The number of revisions to keep.
592 revisionHistoryLimit: 10
593 ## Argo Server Horizontal Pod Autoscaler
595 # -- Enable Horizontal Pod Autoscaler ([HPA]) for the Argo Server
597 # -- Minimum number of replicas for the Argo Server [HPA]
599 # -- Maximum number of replicas for the Argo Server [HPA]
601 # -- Average CPU utilization percentage for the Argo Server [HPA]
602 targetCPUUtilizationPercentage: 50
603 # -- Average memory utilization percentage for the Argo Server [HPA]
604 targetMemoryUtilizationPercentage: 50
605 # -- Configures the scaling behavior of the target in both Up and Down directions.
606 # This is only available on HPA apiVersion `autoscaling/v2beta2` and newer
609 # stabilizationWindowSeconds: 300
615 # stabilizationWindowSeconds: 300
620 # -- Configure [Pod Disruption Budget] for the server pods
626 kubernetes.io/os: linux
627 # -- [Tolerations] for use with node taints
629 # -- Assign custom [affinity] rules
631 # -- Assign custom [TopologySpreadConstraints] rules to the argo server
632 ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
633 ## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
634 topologySpreadConstraints: []
636 # topologyKey: topology.kubernetes.io/zone
637 # whenUnsatisfiable: DoNotSchedule
639 # -- Leverage a PriorityClass to ensure your pods survive resource shortages
640 ## ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
641 priorityClassName: ""
642 # -- Run the argo server in "secure" mode. Configure this value instead of `--secure` in extraArgs.
643 ## See the following documentation for more details on secure mode:
644 ## https://argo-workflows.readthedocs.io/en/stable/tls/
646 # -- Extra environment variables to provide to the argo-server container
651 # -- Deprecated; use server.authModes instead.
653 # -- A list of supported authentication modes. Available values are `server`, `client`, or `sso`. If you provide sso, please configure `.Values.server.sso` as well.
654 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server-auth-mode/
656 # -- Extra arguments to provide to the Argo server binary.
657 ## Ref: https://argo-workflows.readthedocs.io/en/stable/argo-server/#options
660 # -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
662 # -- Set the glog logging level
664 # -- Set the logging format (one of: `text`, `json`)
666 # -- Volume to be mounted in Pods for temporary files.
669 # -- Additional volume mounts to the server main container.
671 # -- Additional volumes to the server pod.
673 ## Ingress configuration.
674 # ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
676 # -- Enable an ingress resource
678 # -- Additional ingress annotations
680 # -- Additional ingress labels
682 # -- Defines which ingress controller will implement the resource
684 # -- List of ingress hosts
685 ## Hostnames must be provided if Ingress is enabled.
686 ## Secrets must be manually created in the namespace
688 # - argoworkflows.example.com
690 # -- List of ingress paths
693 # -- Ingress path type. One of `Exact`, `Prefix` or `ImplementationSpecific`
695 # -- Additional ingress paths
699 # serviceName: ssl-redirect
700 # servicePort: use-annotation
701 ## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
708 # name: use-annotation
710 # -- Ingress TLS configuration
712 # - secretName: argoworkflows-example-tls
714 # - argoworkflows.example.com
715 ## Create a Google Backendconfig for use with the GKE Ingress Controller
716 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-configuration#configuring_ingress_features_through_backendconfig_parameters
718 # -- Enable BackendConfig custom resource for Google Kubernetes Engine
720 # -- [BackendConfigSpec]
725 # oauthclientCredentials:
726 # secretName: argoworkflows-secret
728 ## Create a Google Managed Certificate for use with the GKE Ingress Controller
729 ## https://cloud.google.com/kubernetes-engine/docs/how-to/managed-certs
730 GKEmanagedCertificate:
731 # -- Enable ManagedCertificate custom resource for Google Kubernetes Engine.
733 # -- Domains for the Google Managed Certificate
735 - argoworkflows.example.com
736 ## Create a Google FrontendConfig Custom Resource, for use with the GKE Ingress Controller
737 ## https://cloud.google.com/kubernetes-engine/docs/how-to/ingress-features#configuring_ingress_features_through_frontendconfig_parameters
739 # -- Enable FrontConfig custom resource for Google Kubernetes Engine
741 # -- [FrontendConfigSpec]
746 # responseCodeName: RESPONSE_CODE
748 # Gateway API HTTPRoute configuration
749 # NOTE: Gateway API support is in EXPERIMENTAL status
750 # Support depends on your Gateway controller implementation
751 # Some controllers may require additional configuration (e.g., BackendTLSPolicy for HTTPS backends)
752 # Refer to https://gateway-api.sigs.k8s.io/implementations/ for controller-specific details
754 # -- Enable HTTPRoute resource for Argo Workflows server (Gateway API)
756 # -- Additional HTTPRoute labels
758 # -- Additional HTTPRoute annotations
760 # -- Gateway API parentRefs for the HTTPRoute
761 ## Must reference an existing Gateway
762 # @default -- `[]` (See [values.yaml])
764 # - name: example-gateway
765 # namespace: example-gateway-namespace
767 # -- List of hostnames for the HTTPRoute
768 # @default -- `[]` (See [values.yaml])
770 # - argoworkflows.example.com
771 # -- HTTPRoute rules configuration
772 # @default -- `[]` (See [values.yaml])
779 # - type: RequestHeaderModifier
780 # requestHeaderModifier:
782 # - name: X-Custom-Header
783 # value: custom-value
787 # Gateway API BackendTLSPolicy configuration
788 # NOTE: BackendTLSPolicy support is in EXPERIMENTAL status
789 # Required for HTTPS backends when using Gateway API
790 # Not all Gateway controllers support this resource (e.g., Cilium does not support it yet)
792 # -- Enable BackendTLSPolicy resource for Argo Workflows server (Gateway API)
794 # -- Additional BackendTLSPolicy labels
796 # -- Additional BackendTLSPolicy annotations
798 # -- Target references for the BackendTLSPolicy
799 # @default -- `[]` (See [values.yaml])
803 # name: argo-workflows-server
805 # -- TLS validation configuration
806 # @default -- `{}` (See [values.yaml])
808 # hostname: argo-workflows-server.argo.svc.cluster.local
810 # - name: example-ca-cert
813 # wellKnownCACertificates: System
814 clusterWorkflowTemplates:
815 # -- Create a ClusterRole and CRB for the server to access ClusterWorkflowTemplates.
817 # -- Give the server permissions to edit ClusterWorkflowTemplates.
819 # SSO configuration when SSO is specified as a server auth mode.
821 # -- Create SSO configuration. If you set `true` , please also set `.Values.server.authModes` as `sso`.
823 # -- The root URL of the OIDC identity provider
824 issuer: https://accounts.google.com
826 # -- Name of secret to retrieve the app OIDC client ID
827 name: argo-server-sso
828 # -- Key of secret to retrieve the app OIDC client ID
831 # -- Name of a secret to retrieve the app OIDC client secret
832 name: argo-server-sso
833 # -- Key of a secret to retrieve the app OIDC client secret
835 # -- The OIDC redirect URL. Should be in the form <argo-root-url>/oauth2/callback.
838 # -- Adds ServiceAccount Policy to server (Cluster)Role.
840 # -- Whitelist to allow server to fetch Secrets
841 ## When present, restricts secrets the server can read to a given list.
842 ## You can use it to restrict the server to only be able to access the
843 ## service account token secrets that are associated with service accounts
844 ## used for authorization.
846 # -- Scopes requested from the SSO ID provider
847 ## The 'groups' scope requests group membership information, which is usually used for authorization decisions.
850 # -- Define how long your login is valid for (in hours)
851 ## If omitted, defaults to 10h.
853 # -- Alternate root URLs that can be included for some OIDC providers
855 # -- Override claim name for OIDC groups
856 customGroupClaimName: ""
857 # -- Specify the user info endpoint that contains the groups claim
858 ## Configure this if your OIDC provider provides groups information only using the user-info endpoint (e.g. Okta)
860 # -- Skip TLS verification for the HTTP client
861 insecureSkipVerify: false
862 # -- Filter the groups returned by the OIDC provider
863 ## A logical "OR" is used between each regex in the list
864 filterGroupsRegex: []
866 # - ".*argo-workflow.*"
867 # -- Extra containers to be added to the server deployment
869 # -- Enables init containers to be added to the server deployment
870 extraInitContainers: []
871 # -- Specify postStart and preStop lifecycle hooks for server container
873 # -- terminationGracePeriodSeconds for container lifecycle hook
874 terminationGracePeriodSeconds: 30
875 ## livenessProbe for server
876 ## Ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/
878 # -- Enable Kubernetes liveness probe for server
881 # -- Http port to use for the liveness probe
883 # -- Http path to use for the liveness probe
885 # -- Minimum consecutive failures for the [probe] to be considered failed after having succeeded
887 # -- Number of seconds after the container has started before [probe] is initiated
888 initialDelaySeconds: 10
889 # -- How often (in seconds) to perform the [probe]
891 # -- Number of seconds after which the [probe] times out
893 # -- Minimum consecutive successes for the [probe] to be considered successful after having failed
895# -- Array of extra K8s manifests to deploy
897# - apiVersion: secrets-store.csi.x-k8s.io/v1
898# kind: SecretProviderClass
900# name: argo-server-sso
905# - objectName: "argo/server/sso"
906# objectType: "secretsmanager"
909# objectAlias: "client_id"
910# - path: "client_secret"
911# objectAlias: "client_secret"
915# objectName: client_id
916# - key: client_secret
917# objectName: client_secret
918# secretName: argo-server-sso-secrets-store
921# -- Use static credentials for S3 (eg. when not using AWS IRSA)
922useStaticCredentials: true
924 # -- Archive the main container logs as an artifact
926 # -- Store artifact in a S3-compliant object store
927 # @default -- See [values.yaml]
929 # # Note the `key` attribute is not the actual secret, it's the PATH to
930 # # the contents in the associated secret, as defined by the `name` attribute.
932 # name: "{{ .Release.Name }}-minio"
935 # name: "{{ .Release.Name }}-minio"
937 # sessionTokenSecret:
938 # name: "{{ .Release.Name }}-minio"
940 # # insecure will disable TLS. Primarily used for minio installs not configured with TLS
951 # enableEncryption: true
952 # -- Store artifact in a GCS object store
953 # @default -- `{}` (See [values.yaml])
955 # bucket: <project>-argo
956 # keyFormat: "{{ \"{{workflow.namespace}}/{{workflow.name}}/{{pod.name}}\" }}"
957 # # serviceAccountKeySecret is a secret selector.
958 # # It references the k8s secret named 'my-gcs-credentials'.
959 # # This secret is expected to have the key 'serviceAccountKey',
960 # # containing the base64 encoded credentials
963 # # If it's running on GKE and Workload Identity is used,
964 # # serviceAccountKeySecret is not needed.
965 # serviceAccountKeySecret:
966 # name: my-gcs-credentials
967 # key: serviceAccountKey
968 # -- Store artifact in Azure Blob Storage
969 # @default -- `{}` (See [values.yaml])
971 # endpoint: https://mystorageaccountname.blob.core.windows.net
972 # container: my-container-name
973 # blobNameFormat: path/in/container
974 # # accountKeySecret is a secret selector.
975 # # It references the k8s secret named 'my-azure-storage-credentials'.
976 # # This secret is expected to have the key 'account-access-key',
977 # # containing the base64 encoded credentials to the storage account.
978 # # If a managed identity has been assigned to the machines running the
979 # # workflow (e.g., https://docs.microsoft.com/en-us/azure/aks/use-managed-identity)
980 # # then accountKeySecret is not needed, and useSDKCreds should be
981 # # set to true instead:
984 # name: my-azure-storage-credentials
985 # key: account-access-key
986# -- The section of custom artifact repository.
987# Utilize a custom artifact repository that is not one of the current base ones (s3, gcs, azure)
988customArtifactRepository: {}
990# repoUrl: https://artifactory.example.com/raw
992# name: artifactory-creds
995# name: artifactory-creds
998# -- The section of [artifact repository ref](https://argo-workflows.readthedocs.io/en/stable/artifact-repository-ref/).
999# Each map key is the name of configmap
1000# @default -- `{}` (See [values.yaml])
1001artifactRepositoryRef: {}
1003# # If you want to use this config map by default, name it "artifact-repositories".
1004# # Otherwise, you can provide a reference to a
1005# # different config map in `artifactRepositoryRef.configMap`.
1006# artifact-repositories:
1007# # -- v3.0 and after - if you want to use a specific key, put that key into this annotation.
1009# workflows.argoproj.io/default-artifact-repository: default-v1-s3-artifact-repository
1010# # 1st data of configmap. See above artifactRepository or customArtifactRepository.
1011# default-v1-s3-artifact-repository:
1015# endpoint: minio:9000
1018# name: my-minio-cred
1021# name: my-minio-cred
1024# oss-artifact-repository:
1027# endpoint: http://oss-cn-zhangjiakou-internal.aliyuncs.com
1029# # accessKeySecret and secretKeySecret are secret selectors.
1030# # It references the k8s secret named 'bucket-workflow-artifect-credentials'.
1031# # This secret is expected to have the keys 'accessKey'
1032# # and 'secretKey', containing the base64 encoded credentials
1035# name: $mybucket-credentials
1038# name: $mybucket-credentials
1041# another-artifact-repositories:
1043# workflows.argoproj.io/default-artifact-repository: gcs
1046# keyFormat: prefix/in/bucket/{{workflow.name}}/{{pod.name}}
1047# serviceAccountKeySecret:
1048# name: my-gcs-credentials
1049# key: serviceAccountKey
1052 # -- The command/args for each image on workflow, needed when the command is not specified and the emissary executor is used.
1053 ## See more: https://argo-workflows.readthedocs.io/en/stable/workflow-executors/#emissary-emissary
1055 # argoproj/argosay:v2:
1057 # docker/whalesay:latest: