DirectorySecurity AdvisoriesPricing
Sign in
Directory
argo-rollouts logoHELM

argo-rollouts

Helm chart
Last changed
Request a free trial

Contact our team to test out this Helm chart and related images for free. Please also indicate any other images you would like to evaluate.

Overview
Chart tags
Default values
Chart metadata
Images

Tag:
Compare:

1
# -- Install and upgrade CRDs
2
installCRDs: true
3
# -- Keep CRD's on helm uninstall
4
keepCRDs: true
5
# -- `false` runs controller in namespaced mode (does not require cluster RBAC)
6
clusterInstall: true
7
# -- flag to enable creation of cluster aggregate roles (requires cluster RBAC)
8
createClusterAggregateRoles: true
9
# -- String to partially override "argo-rollouts.fullname" template
10
nameOverride:
11
# -- String to fully override "argo-rollouts.fullname" template
12
fullnameOverride:
13
# -- Override the namespace
14
# @default -- `.Release.Namespace`
15
namespaceOverride: ""
16
## Override APIVersions
17
## If you want to template helm charts but cannot access k8s API server
18
## you can set api versions here
19
apiVersionOverrides:
20
# -- String to override apiVersion of ingresses rendered by this helm chart
21
ingress: "" # networking.k8s.io/v1beta1
22
# -- Override the Kubernetes version, which is used to evaluate certain manifests
23
kubeVersionOverride: ""
24
# -- Additional manifests to deploy within the chart. A list of objects.
25
## Can be used to add secrets for Analysis with 3rd-party monitoring solutions.
26
extraObjects: []
27
# - apiVersion: v1
28
# kind: Secret
29
# metadata:
30
# name: datadog
31
# type: Opaque
32
# data:
33
# address: https://api.datadoghq.com
34
# api-key: <datadog-api-key>
35
# app-key: <datadog-app-key>
36
37
global:
38
# -- Annotations for all deployed Deployments
39
deploymentAnnotations: {}
40
# -- Labels for all deployed Deployments
41
deploymentLabels: {}
42
# -- Number of old deployment ReplicaSets to retain. The rest will be garbage collected.
43
revisionHistoryLimit: 10
44
# -- Specifies the deployment DNS configuration for controller and dashboard.
45
dnsConfig: {}
46
# nameservers:
47
# - 1.2.3.4
48
# searches:
49
# - ns1.svc.cluster-domain.example
50
# - my.dns.search.suffix
51
# options:
52
# - name: ndots
53
# value: "1"
54
# - name: attempts
55
# value: "3"
56
controller:
57
# -- Value of label `app.kubernetes.io/component`
58
component: rollouts-controller
59
# -- Annotations to be added to the controller deployment
60
deploymentAnnotations: {}
61
# -- Labels to be added to the controller deployment
62
deploymentLabels: {}
63
# -- Annotations to be added to application controller pods
64
podAnnotations: {}
65
# -- Labels to be added to the application controller pods
66
podLabels: {}
67
# -- [Node selector]
68
nodeSelector: {}
69
# -- [Tolerations] for use with node taints
70
tolerations: []
71
# -- Assign custom [affinity] rules to the deployment
72
affinity: {}
73
logging:
74
# -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
75
level: info
76
# -- Set the klog logging level
77
kloglevel: "0"
78
# -- Set the logging format (one of: `text`, `json`)
79
format: "text"
80
# -- Assign custom [TopologySpreadConstraints] rules to the controller
81
## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
82
## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
83
topologySpreadConstraints: []
84
# - maxSkew: 1
85
# topologyKey: topology.kubernetes.io/zone
86
# whenUnsatisfiable: DoNotSchedule
87
88
# -- terminationGracePeriodSeconds for container lifecycle hook
89
terminationGracePeriodSeconds: 30
90
# -- Specify lifecycle hooks for the controller
91
lifecycle: {}
92
# -- [priorityClassName] for the controller
93
priorityClassName: ""
94
# -- The number of controller pods to run
95
replicas: 2
96
image:
97
# -- Registry to use
98
registry: cgr.dev
99
# -- Repository to use
100
repository: chainguard-private/argo-rollouts
101
# -- Overrides the image tag (default is the chart appVersion)
102
tag: 1.10.1-r2@sha256:591cc1c55a0a67ced2bf64c766de05230b7b620bd73e2df8254c9d064a5dfc61
103
# -- Image pull policy
104
pullPolicy: IfNotPresent
105
# -- Enable AWS target group verification before progressing through steps (requires AWS privileges)
106
awsVerifyTargetGroup: false
107
# -- Set the AWS TargetGroupBinding apiVersion (e.g. `elbv2.k8s.aws/v1beta1` for standard EKS, `eks.amazonaws.com/v1` for EKS Auto Mode)
108
awsTargetGroupBindingAPIVersion: ""
109
# -- Set the ALB tag key for resource ID (e.g. `ingress.k8s.aws/resource` for standard EKS, `ingress.eks.amazonaws.com` for EKS Auto Mode)
110
albTagKeyResourceID: ""
111
# -- Enable self-service notification support, allowing the controller to pull notification config from the rollout's namespace
112
selfServiceNotification: false
113
# -- Enable pprof profiling on the controller by specifying a listen address (e.g. `:6060` or `localhost:6060`)
114
pprofAddress: ""
115
# -- Additional command line arguments to pass to rollouts-controller. A list of flags.
116
extraArgs: []
117
# -- Additional environment variables for rollouts-controller. A list of name/value maps.
118
extraEnv: []
119
# - name: AWS_REGION
120
# value: us-east-1
121
122
# -- Literal yaml for extra containers to be added to controller deployment.
123
## Additional containers to add to the rollouts controller deployment
124
## This will be rendered as the literal yaml
125
extraContainers: []
126
# -- Init containers to add to the rollouts controller pod
127
## This will be rendered as the literal yaml
128
initContainers: []
129
# - name: download-tools
130
# image: alpine:3.8
131
# command: [sh, -c]
132
# args:
133
# - ls
134
135
# -- Resource limits and requests for the controller pods.
136
resources: {}
137
# limits:
138
# cpu: 100m
139
# memory: 128Mi
140
# ephemeral-storage: 1Gi
141
# requests:
142
# cpu: 50m
143
# memory: 64Mi
144
145
# -- flag to enable creation of cluster controller role (requires cluster RBAC)
146
createClusterRole: true
147
# Controller container ports
148
containerPorts:
149
# -- Metrics container port
150
metrics: 8090
151
# -- Healthz container port
152
healthz: 8080
153
metrics:
154
# -- Deploy metrics service
155
enabled: false
156
service:
157
# -- Metrics service port name
158
portName: metrics
159
# -- Metrics service port
160
port: 8090
161
# -- Service annotations
162
annotations: {}
163
serviceMonitor:
164
# -- Enable a prometheus ServiceMonitor
165
enabled: false
166
# -- Namespace to be used for the ServiceMonitor
167
namespace: ""
168
# -- Prometheus ServiceMonitor interval; empty uses Prometheus's global one
169
interval: ""
170
# -- Prometheus ServiceMonitor scrapeTimeout; empty uses Prometheus's global one
171
scrapeTimeout: ""
172
# -- Labels to be added to the ServiceMonitor
173
additionalLabels: {}
174
# -- Annotations to be added to the ServiceMonitor
175
additionalAnnotations: {}
176
# -- RelabelConfigs to apply to samples before scraping
177
relabelings: []
178
# -- MetricRelabelConfigs to apply to samples before ingestion
179
metricRelabelings: []
180
# -- TLS configuration for the ServiceMonitor. When set, scheme will be https
181
tlsConfig: {}
182
# caFile: /etc/istio-certs/root-cert.pem
183
# certFile: /etc/istio-certs/cert-chain.pem
184
# insecureSkipVerify: true
185
# keyFile: /etc/istio-certs/key.pem
186
# -- Configure liveness [probe] for the controller
187
# @default -- See [values.yaml]
188
livenessProbe:
189
httpGet:
190
path: /healthz
191
port: healthz
192
initialDelaySeconds: 30
193
periodSeconds: 20
194
failureThreshold: 3
195
successThreshold: 1
196
timeoutSeconds: 10
197
# -- Configure readiness [probe] for the controller
198
readinessProbe: {}
199
## Configure Pod Disruption Budget for the controller
200
pdb:
201
# -- Labels to be added to controller [Pod Disruption Budget]
202
labels: {}
203
# -- Annotations to be added to controller [Pod Disruption Budget]
204
annotations: {}
205
# -- Deploy a [Pod Disruption Budget] for the controller
206
enabled: false
207
# -- Minimum number / percentage of pods that should remain scheduled
208
minAvailable: # 1
209
# -- Maximum number / percentage of pods that may be made unavailable
210
maxUnavailable: # 0
211
# -- Additional volumes to add to the controller pod
212
volumes: []
213
# - configMap:
214
# name: my-certs-cm
215
# name: my-certs
216
217
# -- Additional volumeMounts to add to the controller container
218
volumeMounts: []
219
# - mountPath: /etc/ssl/certs
220
# name: my-certs
221
222
# -- Configures 3rd party metric providers for controller
223
## Ref: https://argo-rollouts.readthedocs.io/en/stable/analysis/plugins/
224
metricProviderPlugins: []
225
# - name: "argoproj-labs/sample-prometheus" # name of the plugin, it must match the name required by the plugin so that it can find its configuration
226
# location: "file://./my-custom-plugin" # supports http(s):// urls and file://
227
228
# -- Configures 3rd party stepPlugins for controller
229
## Ref: https://argo-rollouts.readthedocs.io/en/stable/features/canary/plugins/
230
stepPlugins: []
231
# - name: "argoproj-labs/step-exec" # name of the plugin, it must match the name required by the plugin so it can find it's configuration
232
# location: "file://./my-custom-plugin" # supports http(s):// urls and file://
233
234
# -- Configures 3rd party traffic router plugins for controller
235
## Ref: https://argo-rollouts.readthedocs.io/en/stable/features/traffic-management/plugins/
236
trafficRouterPlugins: []
237
# - name: "argoproj-labs/sample-nginx" # name of the plugin, it must match the name required by the plugin so it can find it's configuration
238
# location: "file://./my-custom-plugin" # supports http(s):// urls and file://
239
240
# -- Whether to create the argo-rollouts-config ConfigMap. Set to false when running multiple
241
# controller instances in the same namespace (e.g. with different --instance-id values) to
242
# avoid Helm ownership conflicts; each secondary instance will read the ConfigMap created by
243
# the primary release.
244
createConfigmap: true
245
serviceAccount:
246
# -- Specifies whether a service account should be created
247
create: true
248
# -- Annotations to add to the service account
249
annotations: {}
250
# -- The name of the service account to use.
251
# If not set and create is true, a name is generated using the fullname template
252
name: ""
253
# -- Annotations to be added to all CRDs
254
crdAnnotations: {}
255
# -- Annotations for the all deployed pods
256
podAnnotations: {}
257
# -- Security Context to set on pod level
258
podSecurityContext:
259
runAsNonRoot: true
260
# -- Security Context to set on container level
261
containerSecurityContext:
262
allowPrivilegeEscalation: false
263
capabilities:
264
drop:
265
- ALL
266
readOnlyRootFilesystem: true
267
seccompProfile:
268
type: RuntimeDefault
269
# -- Annotations to be added to the Rollout service
270
serviceAnnotations: {}
271
# -- Labels to be added to the Rollout pods
272
podLabels: {}
273
# -- Secrets with credentials to pull images from a private registry. Registry secret names as an array.
274
imagePullSecrets: []
275
# - name: argo-pull-secret
276
277
providerRBAC:
278
# -- Toggles addition of provider-specific RBAC rules to the controller Role and ClusterRole
279
enabled: true
280
# providerRBAC.enabled must be true in order to toggle the individual providers
281
providers:
282
# -- Adds RBAC rules for the Istio provider
283
istio: true
284
# -- Adds RBAC rules for the SMI provider
285
smi: true
286
# -- Adds RBAC rules for the Ambassador provider
287
ambassador: true
288
# -- Adds RBAC rules for the AWS Load Balancer Controller provider
289
awsLoadBalancerController: true
290
# -- Adds RBAC rules for the AWS App Mesh provider
291
awsAppMesh: true
292
# -- Adds RBAC rules for the Traefik provider
293
traefik: true
294
# -- Adds RBAC rules for the Apisix provider
295
apisix: true
296
# -- Adds RBAC rules for the Contour provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-contour/blob/main/README.md`
297
contour: true
298
# -- Adds RBAC rules for the Gloo Platform provider, see `https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-glooplatform/blob/main/README.md`
299
glooPlatform: true
300
# -- Adds RBAC rules for the Gateway API provider
301
gatewayAPI: true
302
# -- Additional RBAC rules for others providers
303
additionalRules: []
304
dashboard:
305
# -- Deploy dashboard server
306
enabled: false
307
# -- Set cluster role to readonly
308
readonly: false
309
# -- Value of label `app.kubernetes.io/component`
310
component: rollouts-dashboard
311
# -- Annotations to be added to the dashboard deployment
312
deploymentAnnotations: {}
313
# -- Labels to be added to the dashboard deployment
314
deploymentLabels: {}
315
# -- Annotations to be added to application dashboard pods
316
podAnnotations: {}
317
# -- Labels to be added to the application dashboard pods
318
podLabels: {}
319
# -- [Node selector]
320
nodeSelector: {}
321
# -- [Tolerations] for use with node taints
322
tolerations: []
323
# -- Assign custom [affinity] rules to the deployment
324
affinity: {}
325
logging:
326
# -- Set the logging level (one of: `debug`, `info`, `warn`, `error`)
327
level: info
328
# -- Set the klog logging level
329
kloglevel: "0"
330
# -- Assign custom [TopologySpreadConstraints] rules to the dashboard server
331
## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
332
## If labelSelector is left out, it will default to the labelSelector configuration of the deployment
333
topologySpreadConstraints: []
334
# - maxSkew: 1
335
# topologyKey: topology.kubernetes.io/zone
336
# whenUnsatisfiable: DoNotSchedule
337
338
# -- [priorityClassName] for the dashboard server
339
priorityClassName: ""
340
# -- flag to enable creation of dashbord cluster role (requires cluster RBAC)
341
createClusterRole: true
342
# -- The number of dashboard pods to run
343
replicas: 1
344
image:
345
# -- Registry to use
346
registry: cgr.dev
347
# -- Repository to use
348
repository: chainguard-private/kubectl-argo-rollouts
349
# -- Overrides the image tag (default is the chart appVersion)
350
tag: 1.10.1-r2@sha256:8813696272539f41559c093bf5fa543386e22e0488749f6ef3f18dc3590c9ccb
351
# -- Image pull policy
352
pullPolicy: IfNotPresent
353
# -- Set the root path of the dashboard (e.g. `/rollouts`). Useful when running behind a reverse proxy with a path prefix.
354
rootPath: ""
355
# -- Address the dashboard listens on. Since v1.10.1 the dashboard binds to `127.0.0.1` unless told otherwise, which the Service cannot reach.
356
# Set to `""` to omit the flag for images older than v1.8.5, v1.9.2 or v1.10.1.
357
address: "0.0.0.0"
358
# -- Additional command line arguments to pass to rollouts-dashboard. A list of flags.
359
extraArgs: []
360
# -- Additional environment variables for rollouts-dashboard. A list of name/value maps.
361
extraEnv: []
362
# - name: FOO
363
# value: bar
364
# -- Resource limits and requests for the dashboard pods.
365
resources: {}
366
# -- Security Context to set on pod level
367
podSecurityContext:
368
runAsNonRoot: true
369
# -- Security Context to set on container level
370
containerSecurityContext:
371
allowPrivilegeEscalation: false
372
capabilities:
373
drop:
374
- ALL
375
readOnlyRootFilesystem: true
376
seccompProfile:
377
type: RuntimeDefault
378
service:
379
# -- Sets the type of the Service
380
type: ClusterIP
381
# -- The class of the load balancer implementation
382
loadBalancerClass: ""
383
# -- LoadBalancer will get created with the IP specified in this field
384
loadBalancerIP: ""
385
# -- Source IP ranges to allow access to service from
386
loadBalancerSourceRanges: []
387
# -- Dashboard service external IPs
388
externalIPs: []
389
# -- Service annotations
390
annotations: {}
391
# -- Service labels
392
labels: {}
393
# -- Service port name
394
portName: dashboard
395
# -- Service port
396
port: 3100
397
# -- Service target port
398
targetPort: 3100
399
# -- (int) Service nodePort
400
nodePort:
401
serviceAccount:
402
# -- Specifies whether a dashboard service account should be created
403
create: true
404
# -- Annotations to add to the dashboard service account
405
annotations: {}
406
# -- The name of the service account to use.
407
# If not set and create is true, a name is generated using the fullname template
408
name: ""
409
## Configure Pod Disruption Budget for the dashboard
410
pdb:
411
# -- Labels to be added to dashboard [Pod Disruption Budget]
412
labels: {}
413
# -- Annotations to be added to dashboard [Pod Disruption Budget]
414
annotations: {}
415
# -- Deploy a [Pod Disruption Budget] for the dashboard
416
enabled: false
417
# -- Minimum number / percentage of pods that should remain scheduled
418
minAvailable: # 1
419
# -- Maximum number / percentage of pods that may be made unavailable
420
maxUnavailable: # 0
421
## Ingress configuration.
422
## ref: https://kubernetes.io/docs/concepts/services-networking/ingress/
423
##
424
ingress:
425
# -- Enable dashboard ingress support
426
enabled: false
427
# -- Dashboard ingress annotations
428
annotations: {}
429
# -- Dashboard ingress labels
430
labels: {}
431
# -- Dashboard ingress class name
432
ingressClassName: ""
433
# -- Dashboard ingress hosts
434
## Argo Rollouts Dashboard Ingress.
435
## Hostnames must be provided if Ingress is enabled.
436
## Secrets must be manually created in the namespace
437
hosts: []
438
# - argorollouts.example.com
439
440
# -- Dashboard ingress paths
441
paths:
442
- /
443
# -- Dashboard ingress path type
444
pathType: Prefix
445
# -- Dashboard ingress extra paths
446
extraPaths: []
447
# - path: /*
448
# backend:
449
# serviceName: ssl-redirect
450
# servicePort: use-annotation
451
## for Kubernetes >=1.19 (when "networking.k8s.io/v1" is used)
452
# - path: /*
453
# pathType: Prefix
454
# backend:
455
# service
456
# name: ssl-redirect
457
# port:
458
# name: use-annotation
459
460
# -- Dashboard ingress tls
461
tls: []
462
# - secretName: argorollouts-example-tls
463
# hosts:
464
# - argorollouts.example.com
465
## HTTPRoute configuration (Gateway API).
466
## ref: https://gateway-api.sigs.k8s.io/api-types/httproute/
467
##
468
httproute:
469
# -- Enable HTTPRoute resource for the dashboard (Gateway API)
470
enabled: false
471
# -- Additional HTTPRoute labels
472
labels: {}
473
# -- Additional HTTPRoute annotations
474
annotations: {}
475
# -- Gateway API parentRefs for the HTTPRoute
476
## Must reference an existing Gateway
477
# @default -- `[]` (See [values.yaml])
478
parentRefs: []
479
# - name: example-gateway
480
# namespace: example-gateway-namespace
481
# sectionName: https
482
# -- List of hostnames for the HTTPRoute
483
# @default -- `[]` (See [values.yaml])
484
hostnames: []
485
# - argorollouts.example.com
486
# -- HTTPRoute rules configuration
487
# @default -- `[]` (See [values.yaml])
488
rules:
489
- matches:
490
- path:
491
type: PathPrefix
492
value: /
493
# filters: []
494
# - type: RequestHeaderModifier
495
# requestHeaderModifier:
496
# add:
497
# - name: X-Custom-Header
498
# value: custom-value
499
# timeouts: {}
500
# -- Additional volumes to add to the dashboard pod
501
volumes: []
502
# -- Additional volumeMounts to add to the dashboard container
503
volumeMounts: []
504
notifications:
505
configmap:
506
# -- Whether to create notifications configmap
507
create: true
508
secret:
509
# -- Whether to create notifications secret.
510
## If you want to manually create secret, do not forget to add proper label to it: "app.kubernetes.io/component: {{ .Values.controller.component }}".
511
create: false
512
# -- Generic key:value pairs to be inserted into the notifications secret
513
items: {}
514
# slack-token:
515
# -- Annotations to be added to the notifications secret
516
annotations: {}
517
# -- Configures notification services
518
notifiers: {}
519
# service.slack: |
520
# token: $slack-token
521
522
# -- Notification templates
523
templates: {}
524
# template.my-purple-template: |
525
# message: |
526
# Rollout {{.rollout.metadata.name}} has purple image
527
# slack:
528
# attachments: |
529
# [{
530
# "title": "{{ .rollout.metadata.name}}",
531
# "color": "#800080"
532
# }]
533
534
# -- The trigger defines the condition when the notification should be sent
535
triggers: {}
536
# trigger.on-purple: |
537
# - send: [my-purple-template]
538
# when: rollout.spec.template.spec.containers[0].image == 'argoproj/rollouts-demo:purple'
539
540
# -- The subscriptions define the subscriptions to the triggers in a general way for all rollouts
541
subscriptions: []
542
# - recipients:
543
# - slack:<channel>
544
# triggers:
545
# - on-rollout-completed
546
# - on-rollout-aborted
547

The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.