1apiVersion: apiextensions.k8s.io/v1
2kind: CustomResourceDefinition
3metadata:
4 annotations:
5 controller-gen.kubebuilder.io/version: v0.16.1
6 labels:
7 app.kubernetes.io/component: helm-controller
8 app.kubernetes.io/part-of: flux
9 name: helmreleases.helm.toolkit.fluxcd.io
10spec:
11 group: helm.toolkit.fluxcd.io
12 names:
13 kind: HelmRelease
14 listKind: HelmReleaseList
15 plural: helmreleases
16 shortNames:
17 - hr
18 singular: helmrelease
19 scope: Namespaced
20 versions:
21 - additionalPrinterColumns:
22 - jsonPath: .metadata.creationTimestamp
23 name: Age
24 type: date
25 - jsonPath: .status.conditions[?(@.type=="Ready")].status
26 name: Ready
27 type: string
28 - jsonPath: .status.conditions[?(@.type=="Ready")].message
29 name: Status
30 type: string
31 name: v2
32 schema:
33 openAPIV3Schema:
34 description: HelmRelease is the Schema for the helmreleases API
35 properties:
36 apiVersion:
37 description: |-
38 APIVersion defines the versioned schema of this representation of an object.
39 Servers should convert recognized schemas to the latest internal value, and
40 may reject unrecognized values.
41 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
42 type: string
43 kind:
44 description: |-
45 Kind is a string value representing the REST resource this object represents.
46 Servers may infer this from the endpoint the client submits requests to.
47 Cannot be updated.
48 In CamelCase.
49 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
50 type: string
51 metadata:
52 type: object
53 spec:
54 description: HelmReleaseSpec defines the desired state of a Helm release.
55 properties:
56 chart:
57 description: |-
58 Chart defines the template of the v1.HelmChart that should be created
59 for this HelmRelease.
60 properties:
61 metadata:
62 description: ObjectMeta holds the template for metadata like labels
63 and annotations.
64 properties:
65 annotations:
66 additionalProperties:
67 type: string
68 description: |-
69 Annotations is an unstructured key value map stored with a resource that may be
70 set by external tools to store and retrieve arbitrary metadata. They are not
71 queryable and should be preserved when modifying objects.
72 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
73 type: object
74 labels:
75 additionalProperties:
76 type: string
77 description: |-
78 Map of string keys and values that can be used to organize and categorize
79 (scope and select) objects.
80 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
81 type: object
82 type: object
83 spec:
84 description: Spec holds the template for the v1.HelmChartSpec
85 for this HelmRelease.
86 properties:
87 chart:
88 description: The name or path the Helm chart is available
89 at in the SourceRef.
90 maxLength: 2048
91 minLength: 1
92 type: string
93 ignoreMissingValuesFiles:
94 description: IgnoreMissingValuesFiles controls whether to
95 silently ignore missing values files rather than failing.
96 type: boolean
97 interval:
98 description: |-
99 Interval at which to check the v1.Source for updates. Defaults to
100 'HelmReleaseSpec.Interval'.
101 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
102 type: string
103 reconcileStrategy:
104 default: ChartVersion
105 description: |-
106 Determines what enables the creation of a new artifact. Valid values are
107 ('ChartVersion', 'Revision').
108 See the documentation of the values for an explanation on their behavior.
109 Defaults to ChartVersion when omitted.
110 enum:
111 - ChartVersion
112 - Revision
113 type: string
114 sourceRef:
115 description: The name and namespace of the v1.Source the chart
116 is available at.
117 properties:
118 apiVersion:
119 description: APIVersion of the referent.
120 type: string
121 kind:
122 description: Kind of the referent.
123 enum:
124 - HelmRepository
125 - GitRepository
126 - Bucket
127 type: string
128 name:
129 description: Name of the referent.
130 maxLength: 253
131 minLength: 1
132 type: string
133 namespace:
134 description: Namespace of the referent.
135 maxLength: 63
136 minLength: 1
137 type: string
138 required:
139 - kind
140 - name
141 type: object
142 valuesFiles:
143 description: |-
144 Alternative list of values files to use as the chart values (values.yaml
145 is not included by default), expected to be a relative path in the SourceRef.
146 Values files are merged in the order of this list with the last file overriding
147 the first. Ignored when omitted.
148 items:
149 type: string
150 type: array
151 verify:
152 description: |-
153 Verify contains the secret name containing the trusted public keys
154 used to verify the signature and specifies which provider to use to check
155 whether OCI image is authentic.
156 This field is only supported for OCI sources.
157 Chart dependencies, which are not bundled in the umbrella chart artifact,
158 are not verified.
159 properties:
160 provider:
161 default: cosign
162 description: Provider specifies the technology used to
163 sign the OCI Helm chart.
164 enum:
165 - cosign
166 - notation
167 type: string
168 secretRef:
169 description: |-
170 SecretRef specifies the Kubernetes Secret containing the
171 trusted public keys.
172 properties:
173 name:
174 description: Name of the referent.
175 type: string
176 required:
177 - name
178 type: object
179 required:
180 - provider
181 type: object
182 version:
183 default: '*'
184 description: |-
185 Version semver expression, ignored for charts from v1.GitRepository and
186 v1beta2.Bucket sources. Defaults to latest when omitted.
187 type: string
188 required:
189 - chart
190 - sourceRef
191 type: object
192 required:
193 - spec
194 type: object
195 chartRef:
196 description: |-
197 ChartRef holds a reference to a source controller resource containing the
198 Helm chart artifact.
199 properties:
200 apiVersion:
201 description: APIVersion of the referent.
202 type: string
203 kind:
204 description: Kind of the referent.
205 enum:
206 - OCIRepository
207 - HelmChart
208 type: string
209 name:
210 description: Name of the referent.
211 maxLength: 253
212 minLength: 1
213 type: string
214 namespace:
215 description: |-
216 Namespace of the referent, defaults to the namespace of the Kubernetes
217 resource object that contains the reference.
218 maxLength: 63
219 minLength: 1
220 type: string
221 required:
222 - kind
223 - name
224 type: object
225 dependsOn:
226 description: |-
227 DependsOn may contain a meta.NamespacedObjectReference slice with
228 references to HelmRelease resources that must be ready before this HelmRelease
229 can be reconciled.
230 items:
231 description: |-
232 NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any
233 namespace.
234 properties:
235 name:
236 description: Name of the referent.
237 type: string
238 namespace:
239 description: Namespace of the referent, when not specified it
240 acts as LocalObjectReference.
241 type: string
242 required:
243 - name
244 type: object
245 type: array
246 driftDetection:
247 description: |-
248 DriftDetection holds the configuration for detecting and handling
249 differences between the manifest in the Helm storage and the resources
250 currently existing in the cluster.
251 properties:
252 ignore:
253 description: |-
254 Ignore contains a list of rules for specifying which changes to ignore
255 during diffing.
256 items:
257 description: |-
258 IgnoreRule defines a rule to selectively disregard specific changes during
259 the drift detection process.
260 properties:
261 paths:
262 description: |-
263 Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from
264 consideration in a Kubernetes object.
265 items:
266 type: string
267 type: array
268 target:
269 description: |-
270 Target is a selector for specifying Kubernetes objects to which this
271 rule applies.
272 If Target is not set, the Paths will be ignored for all Kubernetes
273 objects within the manifest of the Helm release.
274 properties:
275 annotationSelector:
276 description: |-
277 AnnotationSelector is a string that follows the label selection expression
278 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
279 It matches with the resource annotations.
280 type: string
281 group:
282 description: |-
283 Group is the API group to select resources from.
284 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
285 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
286 type: string
287 kind:
288 description: |-
289 Kind of the API Group to select resources from.
290 Together with Group and Version it is capable of unambiguously
291 identifying and/or selecting resources.
292 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
293 type: string
294 labelSelector:
295 description: |-
296 LabelSelector is a string that follows the label selection expression
297 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
298 It matches with the resource labels.
299 type: string
300 name:
301 description: Name to match resources with.
302 type: string
303 namespace:
304 description: Namespace to select resources from.
305 type: string
306 version:
307 description: |-
308 Version of the API Group to select resources from.
309 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
310 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
311 type: string
312 type: object
313 required:
314 - paths
315 type: object
316 type: array
317 mode:
318 description: |-
319 Mode defines how differences should be handled between the Helm manifest
320 and the manifest currently applied to the cluster.
321 If not explicitly set, it defaults to DiffModeDisabled.
322 enum:
323 - enabled
324 - warn
325 - disabled
326 type: string
327 type: object
328 install:
329 description: Install holds the configuration for Helm install actions
330 for this HelmRelease.
331 properties:
332 crds:
333 description: |-
334 CRDs upgrade CRDs from the Helm Chart's crds directory according
335 to the CRD upgrade policy provided here. Valid values are `Skip`,
336 `Create` or `CreateReplace`. Default is `Create` and if omitted
337 CRDs are installed but not updated.
338
339 Skip: do neither install nor replace (update) any CRDs.
340
341 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
342
343 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
344 but not deleted.
345
346 By default, CRDs are applied (installed) during Helm install action.
347 With this option users can opt in to CRD replace existing CRDs on Helm
348 install actions, which is not (yet) natively supported by Helm.
349 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
350 enum:
351 - Skip
352 - Create
353 - CreateReplace
354 type: string
355 createNamespace:
356 description: |-
357 CreateNamespace tells the Helm install action to create the
358 HelmReleaseSpec.TargetNamespace if it does not exist yet.
359 On uninstall, the namespace will not be garbage collected.
360 type: boolean
361 disableHooks:
362 description: DisableHooks prevents hooks from running during the
363 Helm install action.
364 type: boolean
365 disableOpenAPIValidation:
366 description: |-
367 DisableOpenAPIValidation prevents the Helm install action from validating
368 rendered templates against the Kubernetes OpenAPI Schema.
369 type: boolean
370 disableSchemaValidation:
371 description: |-
372 DisableSchemaValidation prevents the Helm install action from validating
373 the values against the JSON Schema.
374 type: boolean
375 disableWait:
376 description: |-
377 DisableWait disables the waiting for resources to be ready after a Helm
378 install has been performed.
379 type: boolean
380 disableWaitForJobs:
381 description: |-
382 DisableWaitForJobs disables waiting for jobs to complete after a Helm
383 install has been performed.
384 type: boolean
385 remediation:
386 description: |-
387 Remediation holds the remediation configuration for when the Helm install
388 action for the HelmRelease fails. The default is to not perform any action.
389 properties:
390 ignoreTestFailures:
391 description: |-
392 IgnoreTestFailures tells the controller to skip remediation when the Helm
393 tests are run after an install action but fail. Defaults to
394 'Test.IgnoreFailures'.
395 type: boolean
396 remediateLastFailure:
397 description: |-
398 RemediateLastFailure tells the controller to remediate the last failure, when
399 no retries remain. Defaults to 'false'.
400 type: boolean
401 retries:
402 description: |-
403 Retries is the number of retries that should be attempted on failures before
404 bailing. Remediation, using an uninstall, is performed between each attempt.
405 Defaults to '0', a negative integer equals to unlimited retries.
406 type: integer
407 type: object
408 replace:
409 description: |-
410 Replace tells the Helm install action to re-use the 'ReleaseName', but only
411 if that name is a deleted release which remains in the history.
412 type: boolean
413 skipCRDs:
414 description: |-
415 SkipCRDs tells the Helm install action to not install any CRDs. By default,
416 CRDs are installed if not already present.
417
418 Deprecated use CRD policy (`crds`) attribute with value `Skip` instead.
419 type: boolean
420 timeout:
421 description: |-
422 Timeout is the time to wait for any individual Kubernetes operation (like
423 Jobs for hooks) during the performance of a Helm install action. Defaults to
424 'HelmReleaseSpec.Timeout'.
425 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
426 type: string
427 type: object
428 interval:
429 description: Interval at which to reconcile the Helm release.
430 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
431 type: string
432 kubeConfig:
433 description: |-
434 KubeConfig for reconciling the HelmRelease on a remote cluster.
435 When used in combination with HelmReleaseSpec.ServiceAccountName,
436 forces the controller to act on behalf of that Service Account at the
437 target cluster.
438 If the --default-service-account flag is set, its value will be used as
439 a controller level fallback for when HelmReleaseSpec.ServiceAccountName
440 is empty.
441 properties:
442 secretRef:
443 description: |-
444 SecretRef holds the name of a secret that contains a key with
445 the kubeconfig file as the value. If no key is set, the key will default
446 to 'value'.
447 It is recommended that the kubeconfig is self-contained, and the secret
448 is regularly updated if credentials such as a cloud-access-token expire.
449 Cloud specific `cmd-path` auth helpers will not function without adding
450 binaries and credentials to the Pod that is responsible for reconciling
451 Kubernetes resources.
452 properties:
453 key:
454 description: Key in the Secret, when not specified an implementation-specific
455 default key is used.
456 type: string
457 name:
458 description: Name of the Secret.
459 type: string
460 required:
461 - name
462 type: object
463 required:
464 - secretRef
465 type: object
466 maxHistory:
467 description: |-
468 MaxHistory is the number of revisions saved by Helm for this HelmRelease.
469 Use '0' for an unlimited number of revisions; defaults to '5'.
470 type: integer
471 persistentClient:
472 description: |-
473 PersistentClient tells the controller to use a persistent Kubernetes
474 client for this release. When enabled, the client will be reused for the
475 duration of the reconciliation, instead of being created and destroyed
476 for each (step of a) Helm action.
477
478 This can improve performance, but may cause issues with some Helm charts
479 that for example do create Custom Resource Definitions during installation
480 outside Helm's CRD lifecycle hooks, which are then not observed to be
481 available by e.g. post-install hooks.
482
483 If not set, it defaults to true.
484 type: boolean
485 postRenderers:
486 description: |-
487 PostRenderers holds an array of Helm PostRenderers, which will be applied in order
488 of their definition.
489 items:
490 description: PostRenderer contains a Helm PostRenderer specification.
491 properties:
492 kustomize:
493 description: Kustomization to apply as PostRenderer.
494 properties:
495 images:
496 description: |-
497 Images is a list of (image name, new name, new tag or digest)
498 for changing image names, tags or digests. This can also be achieved with a
499 patch, but this operator is simpler to specify.
500 items:
501 description: Image contains an image name, a new name,
502 a new tag or digest, which will replace the original
503 name and tag.
504 properties:
505 digest:
506 description: |-
507 Digest is the value used to replace the original image tag.
508 If digest is present NewTag value is ignored.
509 type: string
510 name:
511 description: Name is a tag-less image name.
512 type: string
513 newName:
514 description: NewName is the value used to replace
515 the original name.
516 type: string
517 newTag:
518 description: NewTag is the value used to replace the
519 original tag.
520 type: string
521 required:
522 - name
523 type: object
524 type: array
525 patches:
526 description: |-
527 Strategic merge and JSON patches, defined as inline YAML objects,
528 capable of targeting objects based on kind, label and annotation selectors.
529 items:
530 description: |-
531 Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should
532 be applied to.
533 properties:
534 patch:
535 description: |-
536 Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with
537 an array of operation objects.
538 type: string
539 target:
540 description: Target points to the resources that the
541 patch document should be applied to.
542 properties:
543 annotationSelector:
544 description: |-
545 AnnotationSelector is a string that follows the label selection expression
546 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
547 It matches with the resource annotations.
548 type: string
549 group:
550 description: |-
551 Group is the API group to select resources from.
552 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
553 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
554 type: string
555 kind:
556 description: |-
557 Kind of the API Group to select resources from.
558 Together with Group and Version it is capable of unambiguously
559 identifying and/or selecting resources.
560 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
561 type: string
562 labelSelector:
563 description: |-
564 LabelSelector is a string that follows the label selection expression
565 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
566 It matches with the resource labels.
567 type: string
568 name:
569 description: Name to match resources with.
570 type: string
571 namespace:
572 description: Namespace to select resources from.
573 type: string
574 version:
575 description: |-
576 Version of the API Group to select resources from.
577 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
578 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
579 type: string
580 type: object
581 required:
582 - patch
583 type: object
584 type: array
585 type: object
586 type: object
587 type: array
588 releaseName:
589 description: |-
590 ReleaseName used for the Helm release. Defaults to a composition of
591 '[TargetNamespace-]Name'.
592 maxLength: 53
593 minLength: 1
594 type: string
595 rollback:
596 description: Rollback holds the configuration for Helm rollback actions
597 for this HelmRelease.
598 properties:
599 cleanupOnFail:
600 description: |-
601 CleanupOnFail allows deletion of new resources created during the Helm
602 rollback action when it fails.
603 type: boolean
604 disableHooks:
605 description: DisableHooks prevents hooks from running during the
606 Helm rollback action.
607 type: boolean
608 disableWait:
609 description: |-
610 DisableWait disables the waiting for resources to be ready after a Helm
611 rollback has been performed.
612 type: boolean
613 disableWaitForJobs:
614 description: |-
615 DisableWaitForJobs disables waiting for jobs to complete after a Helm
616 rollback has been performed.
617 type: boolean
618 force:
619 description: Force forces resource updates through a replacement
620 strategy.
621 type: boolean
622 recreate:
623 description: Recreate performs pod restarts for the resource if
624 applicable.
625 type: boolean
626 timeout:
627 description: |-
628 Timeout is the time to wait for any individual Kubernetes operation (like
629 Jobs for hooks) during the performance of a Helm rollback action. Defaults to
630 'HelmReleaseSpec.Timeout'.
631 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
632 type: string
633 type: object
634 serviceAccountName:
635 description: |-
636 The name of the Kubernetes service account to impersonate
637 when reconciling this HelmRelease.
638 maxLength: 253
639 minLength: 1
640 type: string
641 storageNamespace:
642 description: |-
643 StorageNamespace used for the Helm storage.
644 Defaults to the namespace of the HelmRelease.
645 maxLength: 63
646 minLength: 1
647 type: string
648 suspend:
649 description: |-
650 Suspend tells the controller to suspend reconciliation for this HelmRelease,
651 it does not apply to already started reconciliations. Defaults to false.
652 type: boolean
653 targetNamespace:
654 description: |-
655 TargetNamespace to target when performing operations for the HelmRelease.
656 Defaults to the namespace of the HelmRelease.
657 maxLength: 63
658 minLength: 1
659 type: string
660 test:
661 description: Test holds the configuration for Helm test actions for
662 this HelmRelease.
663 properties:
664 enable:
665 description: |-
666 Enable enables Helm test actions for this HelmRelease after an Helm install
667 or upgrade action has been performed.
668 type: boolean
669 filters:
670 description: Filters is a list of tests to run or exclude from
671 running.
672 items:
673 description: Filter holds the configuration for individual Helm
674 test filters.
675 properties:
676 exclude:
677 description: Exclude specifies whether the named test should
678 be excluded.
679 type: boolean
680 name:
681 description: Name is the name of the test.
682 maxLength: 253
683 minLength: 1
684 type: string
685 required:
686 - name
687 type: object
688 type: array
689 ignoreFailures:
690 description: |-
691 IgnoreFailures tells the controller to skip remediation when the Helm tests
692 are run but fail. Can be overwritten for tests run after install or upgrade
693 actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'.
694 type: boolean
695 timeout:
696 description: |-
697 Timeout is the time to wait for any individual Kubernetes operation during
698 the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'.
699 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
700 type: string
701 type: object
702 timeout:
703 description: |-
704 Timeout is the time to wait for any individual Kubernetes operation (like Jobs
705 for hooks) during the performance of a Helm action. Defaults to '5m0s'.
706 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
707 type: string
708 uninstall:
709 description: Uninstall holds the configuration for Helm uninstall
710 actions for this HelmRelease.
711 properties:
712 deletionPropagation:
713 default: background
714 description: |-
715 DeletionPropagation specifies the deletion propagation policy when
716 a Helm uninstall is performed.
717 enum:
718 - background
719 - foreground
720 - orphan
721 type: string
722 disableHooks:
723 description: DisableHooks prevents hooks from running during the
724 Helm rollback action.
725 type: boolean
726 disableWait:
727 description: |-
728 DisableWait disables waiting for all the resources to be deleted after
729 a Helm uninstall is performed.
730 type: boolean
731 keepHistory:
732 description: |-
733 KeepHistory tells Helm to remove all associated resources and mark the
734 release as deleted, but retain the release history.
735 type: boolean
736 timeout:
737 description: |-
738 Timeout is the time to wait for any individual Kubernetes operation (like
739 Jobs for hooks) during the performance of a Helm uninstall action. Defaults
740 to 'HelmReleaseSpec.Timeout'.
741 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
742 type: string
743 type: object
744 upgrade:
745 description: Upgrade holds the configuration for Helm upgrade actions
746 for this HelmRelease.
747 properties:
748 cleanupOnFail:
749 description: |-
750 CleanupOnFail allows deletion of new resources created during the Helm
751 upgrade action when it fails.
752 type: boolean
753 crds:
754 description: |-
755 CRDs upgrade CRDs from the Helm Chart's crds directory according
756 to the CRD upgrade policy provided here. Valid values are `Skip`,
757 `Create` or `CreateReplace`. Default is `Skip` and if omitted
758 CRDs are neither installed nor upgraded.
759
760 Skip: do neither install nor replace (update) any CRDs.
761
762 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
763
764 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
765 but not deleted.
766
767 By default, CRDs are not applied during Helm upgrade action. With this
768 option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm.
769 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
770 enum:
771 - Skip
772 - Create
773 - CreateReplace
774 type: string
775 disableHooks:
776 description: DisableHooks prevents hooks from running during the
777 Helm upgrade action.
778 type: boolean
779 disableOpenAPIValidation:
780 description: |-
781 DisableOpenAPIValidation prevents the Helm upgrade action from validating
782 rendered templates against the Kubernetes OpenAPI Schema.
783 type: boolean
784 disableSchemaValidation:
785 description: |-
786 DisableSchemaValidation prevents the Helm upgrade action from validating
787 the values against the JSON Schema.
788 type: boolean
789 disableWait:
790 description: |-
791 DisableWait disables the waiting for resources to be ready after a Helm
792 upgrade has been performed.
793 type: boolean
794 disableWaitForJobs:
795 description: |-
796 DisableWaitForJobs disables waiting for jobs to complete after a Helm
797 upgrade has been performed.
798 type: boolean
799 force:
800 description: Force forces resource updates through a replacement
801 strategy.
802 type: boolean
803 preserveValues:
804 description: |-
805 PreserveValues will make Helm reuse the last release's values and merge in
806 overrides from 'Values'. Setting this flag makes the HelmRelease
807 non-declarative.
808 type: boolean
809 remediation:
810 description: |-
811 Remediation holds the remediation configuration for when the Helm upgrade
812 action for the HelmRelease fails. The default is to not perform any action.
813 properties:
814 ignoreTestFailures:
815 description: |-
816 IgnoreTestFailures tells the controller to skip remediation when the Helm
817 tests are run after an upgrade action but fail.
818 Defaults to 'Test.IgnoreFailures'.
819 type: boolean
820 remediateLastFailure:
821 description: |-
822 RemediateLastFailure tells the controller to remediate the last failure, when
823 no retries remain. Defaults to 'false' unless 'Retries' is greater than 0.
824 type: boolean
825 retries:
826 description: |-
827 Retries is the number of retries that should be attempted on failures before
828 bailing. Remediation, using 'Strategy', is performed between each attempt.
829 Defaults to '0', a negative integer equals to unlimited retries.
830 type: integer
831 strategy:
832 description: Strategy to use for failure remediation. Defaults
833 to 'rollback'.
834 enum:
835 - rollback
836 - uninstall
837 type: string
838 type: object
839 timeout:
840 description: |-
841 Timeout is the time to wait for any individual Kubernetes operation (like
842 Jobs for hooks) during the performance of a Helm upgrade action. Defaults to
843 'HelmReleaseSpec.Timeout'.
844 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
845 type: string
846 type: object
847 values:
848 description: Values holds the values for this Helm release.
849 x-kubernetes-preserve-unknown-fields: true
850 valuesFrom:
851 description: |-
852 ValuesFrom holds references to resources containing Helm values for this HelmRelease,
853 and information about how they should be merged.
854 items:
855 description: |-
856 ValuesReference contains a reference to a resource containing Helm values,
857 and optionally the key they can be found at.
858 properties:
859 kind:
860 description: Kind of the values referent, valid values are ('Secret',
861 'ConfigMap').
862 enum:
863 - Secret
864 - ConfigMap
865 type: string
866 name:
867 description: |-
868 Name of the values referent. Should reside in the same namespace as the
869 referring resource.
870 maxLength: 253
871 minLength: 1
872 type: string
873 optional:
874 description: |-
875 Optional marks this ValuesReference as optional. When set, a not found error
876 for the values reference is ignored, but any ValuesKey, TargetPath or
877 transient error will still result in a reconciliation failure.
878 type: boolean
879 targetPath:
880 description: |-
881 TargetPath is the YAML dot notation path the value should be merged at. When
882 set, the ValuesKey is expected to be a single flat value. Defaults to 'None',
883 which results in the values getting merged at the root.
884 maxLength: 250
885 pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$
886 type: string
887 valuesKey:
888 description: |-
889 ValuesKey is the data key where the values.yaml or a specific value can be
890 found at. Defaults to 'values.yaml'.
891 maxLength: 253
892 pattern: ^[\-._a-zA-Z0-9]+$
893 type: string
894 required:
895 - kind
896 - name
897 type: object
898 type: array
899 required:
900 - interval
901 type: object
902 x-kubernetes-validations:
903 - message: either chart or chartRef must be set
904 rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart)
905 && has(self.chartRef))
906 status:
907 default:
908 observedGeneration: -1
909 description: HelmReleaseStatus defines the observed state of a HelmRelease.
910 properties:
911 conditions:
912 description: Conditions holds the conditions for the HelmRelease.
913 items:
914 description: Condition contains details for one aspect of the current
915 state of this API Resource.
916 properties:
917 lastTransitionTime:
918 description: |-
919 lastTransitionTime is the last time the condition transitioned from one status to another.
920 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
921 format: date-time
922 type: string
923 message:
924 description: |-
925 message is a human readable message indicating details about the transition.
926 This may be an empty string.
927 maxLength: 32768
928 type: string
929 observedGeneration:
930 description: |-
931 observedGeneration represents the .metadata.generation that the condition was set based upon.
932 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
933 with respect to the current state of the instance.
934 format: int64
935 minimum: 0
936 type: integer
937 reason:
938 description: |-
939 reason contains a programmatic identifier indicating the reason for the condition's last transition.
940 Producers of specific condition types may define expected values and meanings for this field,
941 and whether the values are considered a guaranteed API.
942 The value should be a CamelCase string.
943 This field may not be empty.
944 maxLength: 1024
945 minLength: 1
946 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
947 type: string
948 status:
949 description: status of the condition, one of True, False, Unknown.
950 enum:
951 - "True"
952 - "False"
953 - Unknown
954 type: string
955 type:
956 description: type of condition in CamelCase or in foo.example.com/CamelCase.
957 maxLength: 316
958 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
959 type: string
960 required:
961 - lastTransitionTime
962 - message
963 - reason
964 - status
965 - type
966 type: object
967 type: array
968 failures:
969 description: |-
970 Failures is the reconciliation failure count against the latest desired
971 state. It is reset after a successful reconciliation.
972 format: int64
973 type: integer
974 helmChart:
975 description: |-
976 HelmChart is the namespaced name of the HelmChart resource created by
977 the controller for the HelmRelease.
978 type: string
979 history:
980 description: |-
981 History holds the history of Helm releases performed for this HelmRelease
982 up to the last successfully completed release.
983 items:
984 description: |-
985 Snapshot captures a point-in-time copy of the status information for a Helm release,
986 as managed by the controller.
987 properties:
988 apiVersion:
989 description: |-
990 APIVersion is the API version of the Snapshot.
991 Provisional: when the calculation method of the Digest field is changed,
992 this field will be used to distinguish between the old and new methods.
993 type: string
994 appVersion:
995 description: AppVersion is the chart app version of the release
996 object in storage.
997 type: string
998 chartName:
999 description: ChartName is the chart name of the release object
1000 in storage.
1001 type: string
1002 chartVersion:
1003 description: |-
1004 ChartVersion is the chart version of the release object in
1005 storage.
1006 type: string
1007 configDigest:
1008 description: |-
1009 ConfigDigest is the checksum of the config (better known as
1010 "values") of the release object in storage.
1011 It has the format of `<algo>:<checksum>`.
1012 type: string
1013 deleted:
1014 description: Deleted is when the release was deleted.
1015 format: date-time
1016 type: string
1017 digest:
1018 description: |-
1019 Digest is the checksum of the release object in storage.
1020 It has the format of `<algo>:<checksum>`.
1021 type: string
1022 firstDeployed:
1023 description: FirstDeployed is when the release was first deployed.
1024 format: date-time
1025 type: string
1026 lastDeployed:
1027 description: LastDeployed is when the release was last deployed.
1028 format: date-time
1029 type: string
1030 name:
1031 description: Name is the name of the release.
1032 type: string
1033 namespace:
1034 description: Namespace is the namespace the release is deployed
1035 to.
1036 type: string
1037 ociDigest:
1038 description: OCIDigest is the digest of the OCI artifact associated
1039 with the release.
1040 type: string
1041 status:
1042 description: Status is the current state of the release.
1043 type: string
1044 testHooks:
1045 additionalProperties:
1046 description: |-
1047 TestHookStatus holds the status information for a test hook as observed
1048 to be run by the controller.
1049 properties:
1050 lastCompleted:
1051 description: LastCompleted is the time the test hook last
1052 completed.
1053 format: date-time
1054 type: string
1055 lastStarted:
1056 description: LastStarted is the time the test hook was
1057 last started.
1058 format: date-time
1059 type: string
1060 phase:
1061 description: Phase the test hook was observed to be in.
1062 type: string
1063 type: object
1064 description: |-
1065 TestHooks is the list of test hooks for the release as observed to be
1066 run by the controller.
1067 type: object
1068 version:
1069 description: Version is the version of the release object in
1070 storage.
1071 type: integer
1072 required:
1073 - chartName
1074 - chartVersion
1075 - configDigest
1076 - digest
1077 - firstDeployed
1078 - lastDeployed
1079 - name
1080 - namespace
1081 - status
1082 - version
1083 type: object
1084 type: array
1085 installFailures:
1086 description: |-
1087 InstallFailures is the install failure count against the latest desired
1088 state. It is reset after a successful reconciliation.
1089 format: int64
1090 type: integer
1091 lastAttemptedConfigDigest:
1092 description: |-
1093 LastAttemptedConfigDigest is the digest for the config (better known as
1094 "values") of the last reconciliation attempt.
1095 type: string
1096 lastAttemptedGeneration:
1097 description: |-
1098 LastAttemptedGeneration is the last generation the controller attempted
1099 to reconcile.
1100 format: int64
1101 type: integer
1102 lastAttemptedReleaseAction:
1103 description: |-
1104 LastAttemptedReleaseAction is the last release action performed for this
1105 HelmRelease. It is used to determine the active remediation strategy.
1106 enum:
1107 - install
1108 - upgrade
1109 type: string
1110 lastAttemptedRevision:
1111 description: |-
1112 LastAttemptedRevision is the Source revision of the last reconciliation
1113 attempt. For OCIRepository sources, the 12 first characters of the digest are
1114 appended to the chart version e.g. "1.2.3+1234567890ab".
1115 type: string
1116 lastAttemptedRevisionDigest:
1117 description: |-
1118 LastAttemptedRevisionDigest is the digest of the last reconciliation attempt.
1119 This is only set for OCIRepository sources.
1120 type: string
1121 lastAttemptedValuesChecksum:
1122 description: |-
1123 LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last
1124 reconciliation attempt.
1125 Deprecated: Use LastAttemptedConfigDigest instead.
1126 type: string
1127 lastHandledForceAt:
1128 description: |-
1129 LastHandledForceAt holds the value of the most recent force request
1130 value, so a change of the annotation value can be detected.
1131 type: string
1132 lastHandledReconcileAt:
1133 description: |-
1134 LastHandledReconcileAt holds the value of the most recent
1135 reconcile request value, so a change of the annotation value
1136 can be detected.
1137 type: string
1138 lastHandledResetAt:
1139 description: |-
1140 LastHandledResetAt holds the value of the most recent reset request
1141 value, so a change of the annotation value can be detected.
1142 type: string
1143 lastReleaseRevision:
1144 description: |-
1145 LastReleaseRevision is the revision of the last successful Helm release.
1146 Deprecated: Use History instead.
1147 type: integer
1148 observedGeneration:
1149 description: ObservedGeneration is the last observed generation.
1150 format: int64
1151 type: integer
1152 observedPostRenderersDigest:
1153 description: |-
1154 ObservedPostRenderersDigest is the digest for the post-renderers of
1155 the last successful reconciliation attempt.
1156 type: string
1157 storageNamespace:
1158 description: |-
1159 StorageNamespace is the namespace of the Helm release storage for the
1160 current release.
1161 maxLength: 63
1162 minLength: 1
1163 type: string
1164 upgradeFailures:
1165 description: |-
1166 UpgradeFailures is the upgrade failure count against the latest desired
1167 state. It is reset after a successful reconciliation.
1168 format: int64
1169 type: integer
1170 type: object
1171 type: object
1172 served: true
1173 storage: true
1174 subresources:
1175 status: {}
1176 - additionalPrinterColumns:
1177 - jsonPath: .metadata.creationTimestamp
1178 name: Age
1179 type: date
1180 - jsonPath: .status.conditions[?(@.type=="Ready")].status
1181 name: Ready
1182 type: string
1183 - jsonPath: .status.conditions[?(@.type=="Ready")].message
1184 name: Status
1185 type: string
1186 deprecated: true
1187 deprecationWarning: v2beta1 HelmRelease is deprecated, upgrade to v2
1188 name: v2beta1
1189 schema:
1190 openAPIV3Schema:
1191 description: HelmRelease is the Schema for the helmreleases API
1192 properties:
1193 apiVersion:
1194 description: |-
1195 APIVersion defines the versioned schema of this representation of an object.
1196 Servers should convert recognized schemas to the latest internal value, and
1197 may reject unrecognized values.
1198 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
1199 type: string
1200 kind:
1201 description: |-
1202 Kind is a string value representing the REST resource this object represents.
1203 Servers may infer this from the endpoint the client submits requests to.
1204 Cannot be updated.
1205 In CamelCase.
1206 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
1207 type: string
1208 metadata:
1209 type: object
1210 spec:
1211 description: HelmReleaseSpec defines the desired state of a Helm release.
1212 properties:
1213 chart:
1214 description: |-
1215 Chart defines the template of the v1beta2.HelmChart that should be created
1216 for this HelmRelease.
1217 properties:
1218 metadata:
1219 description: ObjectMeta holds the template for metadata like labels
1220 and annotations.
1221 properties:
1222 annotations:
1223 additionalProperties:
1224 type: string
1225 description: |-
1226 Annotations is an unstructured key value map stored with a resource that may be
1227 set by external tools to store and retrieve arbitrary metadata. They are not
1228 queryable and should be preserved when modifying objects.
1229 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
1230 type: object
1231 labels:
1232 additionalProperties:
1233 type: string
1234 description: |-
1235 Map of string keys and values that can be used to organize and categorize
1236 (scope and select) objects.
1237 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
1238 type: object
1239 type: object
1240 spec:
1241 description: Spec holds the template for the v1beta2.HelmChartSpec
1242 for this HelmRelease.
1243 properties:
1244 chart:
1245 description: The name or path the Helm chart is available
1246 at in the SourceRef.
1247 type: string
1248 interval:
1249 description: |-
1250 Interval at which to check the v1beta2.Source for updates. Defaults to
1251 'HelmReleaseSpec.Interval'.
1252 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1253 type: string
1254 reconcileStrategy:
1255 default: ChartVersion
1256 description: |-
1257 Determines what enables the creation of a new artifact. Valid values are
1258 ('ChartVersion', 'Revision').
1259 See the documentation of the values for an explanation on their behavior.
1260 Defaults to ChartVersion when omitted.
1261 enum:
1262 - ChartVersion
1263 - Revision
1264 type: string
1265 sourceRef:
1266 description: The name and namespace of the v1beta2.Source
1267 the chart is available at.
1268 properties:
1269 apiVersion:
1270 description: APIVersion of the referent.
1271 type: string
1272 kind:
1273 description: Kind of the referent.
1274 enum:
1275 - HelmRepository
1276 - GitRepository
1277 - Bucket
1278 type: string
1279 name:
1280 description: Name of the referent.
1281 maxLength: 253
1282 minLength: 1
1283 type: string
1284 namespace:
1285 description: Namespace of the referent.
1286 maxLength: 63
1287 minLength: 1
1288 type: string
1289 required:
1290 - kind
1291 - name
1292 type: object
1293 valuesFile:
1294 description: |-
1295 Alternative values file to use as the default chart values, expected to
1296 be a relative path in the SourceRef. Deprecated in favor of ValuesFiles,
1297 for backwards compatibility the file defined here is merged before the
1298 ValuesFiles items. Ignored when omitted.
1299 type: string
1300 valuesFiles:
1301 description: |-
1302 Alternative list of values files to use as the chart values (values.yaml
1303 is not included by default), expected to be a relative path in the SourceRef.
1304 Values files are merged in the order of this list with the last file overriding
1305 the first. Ignored when omitted.
1306 items:
1307 type: string
1308 type: array
1309 verify:
1310 description: |-
1311 Verify contains the secret name containing the trusted public keys
1312 used to verify the signature and specifies which provider to use to check
1313 whether OCI image is authentic.
1314 This field is only supported for OCI sources.
1315 Chart dependencies, which are not bundled in the umbrella chart artifact, are not verified.
1316 properties:
1317 provider:
1318 default: cosign
1319 description: Provider specifies the technology used to
1320 sign the OCI Helm chart.
1321 enum:
1322 - cosign
1323 type: string
1324 secretRef:
1325 description: |-
1326 SecretRef specifies the Kubernetes Secret containing the
1327 trusted public keys.
1328 properties:
1329 name:
1330 description: Name of the referent.
1331 type: string
1332 required:
1333 - name
1334 type: object
1335 required:
1336 - provider
1337 type: object
1338 version:
1339 default: '*'
1340 description: |-
1341 Version semver expression, ignored for charts from v1beta2.GitRepository and
1342 v1beta2.Bucket sources. Defaults to latest when omitted.
1343 type: string
1344 required:
1345 - chart
1346 - sourceRef
1347 type: object
1348 required:
1349 - spec
1350 type: object
1351 chartRef:
1352 description: |-
1353 ChartRef holds a reference to a source controller resource containing the
1354 Helm chart artifact.
1355
1356 Note: this field is provisional to the v2 API, and not actively used
1357 by v2beta1 HelmReleases.
1358 properties:
1359 apiVersion:
1360 description: APIVersion of the referent.
1361 type: string
1362 kind:
1363 description: Kind of the referent.
1364 enum:
1365 - OCIRepository
1366 - HelmChart
1367 type: string
1368 name:
1369 description: Name of the referent.
1370 maxLength: 253
1371 minLength: 1
1372 type: string
1373 namespace:
1374 description: |-
1375 Namespace of the referent, defaults to the namespace of the Kubernetes
1376 resource object that contains the reference.
1377 maxLength: 63
1378 minLength: 1
1379 type: string
1380 required:
1381 - kind
1382 - name
1383 type: object
1384 dependsOn:
1385 description: |-
1386 DependsOn may contain a meta.NamespacedObjectReference slice with
1387 references to HelmRelease resources that must be ready before this HelmRelease
1388 can be reconciled.
1389 items:
1390 description: |-
1391 NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any
1392 namespace.
1393 properties:
1394 name:
1395 description: Name of the referent.
1396 type: string
1397 namespace:
1398 description: Namespace of the referent, when not specified it
1399 acts as LocalObjectReference.
1400 type: string
1401 required:
1402 - name
1403 type: object
1404 type: array
1405 driftDetection:
1406 description: |-
1407 DriftDetection holds the configuration for detecting and handling
1408 differences between the manifest in the Helm storage and the resources
1409 currently existing in the cluster.
1410
1411 Note: this field is provisional to the v2beta2 API, and not actively used
1412 by v2beta1 HelmReleases.
1413 properties:
1414 ignore:
1415 description: |-
1416 Ignore contains a list of rules for specifying which changes to ignore
1417 during diffing.
1418 items:
1419 description: |-
1420 IgnoreRule defines a rule to selectively disregard specific changes during
1421 the drift detection process.
1422 properties:
1423 paths:
1424 description: |-
1425 Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from
1426 consideration in a Kubernetes object.
1427 items:
1428 type: string
1429 type: array
1430 target:
1431 description: |-
1432 Target is a selector for specifying Kubernetes objects to which this
1433 rule applies.
1434 If Target is not set, the Paths will be ignored for all Kubernetes
1435 objects within the manifest of the Helm release.
1436 properties:
1437 annotationSelector:
1438 description: |-
1439 AnnotationSelector is a string that follows the label selection expression
1440 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1441 It matches with the resource annotations.
1442 type: string
1443 group:
1444 description: |-
1445 Group is the API group to select resources from.
1446 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
1447 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1448 type: string
1449 kind:
1450 description: |-
1451 Kind of the API Group to select resources from.
1452 Together with Group and Version it is capable of unambiguously
1453 identifying and/or selecting resources.
1454 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1455 type: string
1456 labelSelector:
1457 description: |-
1458 LabelSelector is a string that follows the label selection expression
1459 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1460 It matches with the resource labels.
1461 type: string
1462 name:
1463 description: Name to match resources with.
1464 type: string
1465 namespace:
1466 description: Namespace to select resources from.
1467 type: string
1468 version:
1469 description: |-
1470 Version of the API Group to select resources from.
1471 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
1472 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1473 type: string
1474 type: object
1475 required:
1476 - paths
1477 type: object
1478 type: array
1479 mode:
1480 description: |-
1481 Mode defines how differences should be handled between the Helm manifest
1482 and the manifest currently applied to the cluster.
1483 If not explicitly set, it defaults to DiffModeDisabled.
1484 enum:
1485 - enabled
1486 - warn
1487 - disabled
1488 type: string
1489 type: object
1490 install:
1491 description: Install holds the configuration for Helm install actions
1492 for this HelmRelease.
1493 properties:
1494 crds:
1495 description: |-
1496 CRDs upgrade CRDs from the Helm Chart's crds directory according
1497 to the CRD upgrade policy provided here. Valid values are `Skip`,
1498 `Create` or `CreateReplace`. Default is `Create` and if omitted
1499 CRDs are installed but not updated.
1500
1501 Skip: do neither install nor replace (update) any CRDs.
1502
1503 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
1504
1505 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
1506 but not deleted.
1507
1508 By default, CRDs are applied (installed) during Helm install action.
1509 With this option users can opt-in to CRD replace existing CRDs on Helm
1510 install actions, which is not (yet) natively supported by Helm.
1511 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
1512 enum:
1513 - Skip
1514 - Create
1515 - CreateReplace
1516 type: string
1517 createNamespace:
1518 description: |-
1519 CreateNamespace tells the Helm install action to create the
1520 HelmReleaseSpec.TargetNamespace if it does not exist yet.
1521 On uninstall, the namespace will not be garbage collected.
1522 type: boolean
1523 disableHooks:
1524 description: DisableHooks prevents hooks from running during the
1525 Helm install action.
1526 type: boolean
1527 disableOpenAPIValidation:
1528 description: |-
1529 DisableOpenAPIValidation prevents the Helm install action from validating
1530 rendered templates against the Kubernetes OpenAPI Schema.
1531 type: boolean
1532 disableWait:
1533 description: |-
1534 DisableWait disables the waiting for resources to be ready after a Helm
1535 install has been performed.
1536 type: boolean
1537 disableWaitForJobs:
1538 description: |-
1539 DisableWaitForJobs disables waiting for jobs to complete after a Helm
1540 install has been performed.
1541 type: boolean
1542 remediation:
1543 description: |-
1544 Remediation holds the remediation configuration for when the Helm install
1545 action for the HelmRelease fails. The default is to not perform any action.
1546 properties:
1547 ignoreTestFailures:
1548 description: |-
1549 IgnoreTestFailures tells the controller to skip remediation when the Helm
1550 tests are run after an install action but fail. Defaults to
1551 'Test.IgnoreFailures'.
1552 type: boolean
1553 remediateLastFailure:
1554 description: |-
1555 RemediateLastFailure tells the controller to remediate the last failure, when
1556 no retries remain. Defaults to 'false'.
1557 type: boolean
1558 retries:
1559 description: |-
1560 Retries is the number of retries that should be attempted on failures before
1561 bailing. Remediation, using an uninstall, is performed between each attempt.
1562 Defaults to '0', a negative integer equals to unlimited retries.
1563 type: integer
1564 type: object
1565 replace:
1566 description: |-
1567 Replace tells the Helm install action to re-use the 'ReleaseName', but only
1568 if that name is a deleted release which remains in the history.
1569 type: boolean
1570 skipCRDs:
1571 description: |-
1572 SkipCRDs tells the Helm install action to not install any CRDs. By default,
1573 CRDs are installed if not already present.
1574
1575 Deprecated use CRD policy (`crds`) attribute with value `Skip` instead.
1576 type: boolean
1577 timeout:
1578 description: |-
1579 Timeout is the time to wait for any individual Kubernetes operation (like
1580 Jobs for hooks) during the performance of a Helm install action. Defaults to
1581 'HelmReleaseSpec.Timeout'.
1582 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1583 type: string
1584 type: object
1585 interval:
1586 description: |-
1587 Interval at which to reconcile the Helm release.
1588 This interval is approximate and may be subject to jitter to ensure
1589 efficient use of resources.
1590 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1591 type: string
1592 kubeConfig:
1593 description: |-
1594 KubeConfig for reconciling the HelmRelease on a remote cluster.
1595 When used in combination with HelmReleaseSpec.ServiceAccountName,
1596 forces the controller to act on behalf of that Service Account at the
1597 target cluster.
1598 If the --default-service-account flag is set, its value will be used as
1599 a controller level fallback for when HelmReleaseSpec.ServiceAccountName
1600 is empty.
1601 properties:
1602 secretRef:
1603 description: |-
1604 SecretRef holds the name of a secret that contains a key with
1605 the kubeconfig file as the value. If no key is set, the key will default
1606 to 'value'.
1607 It is recommended that the kubeconfig is self-contained, and the secret
1608 is regularly updated if credentials such as a cloud-access-token expire.
1609 Cloud specific `cmd-path` auth helpers will not function without adding
1610 binaries and credentials to the Pod that is responsible for reconciling
1611 Kubernetes resources.
1612 properties:
1613 key:
1614 description: Key in the Secret, when not specified an implementation-specific
1615 default key is used.
1616 type: string
1617 name:
1618 description: Name of the Secret.
1619 type: string
1620 required:
1621 - name
1622 type: object
1623 required:
1624 - secretRef
1625 type: object
1626 maxHistory:
1627 description: |-
1628 MaxHistory is the number of revisions saved by Helm for this HelmRelease.
1629 Use '0' for an unlimited number of revisions; defaults to '10'.
1630 type: integer
1631 persistentClient:
1632 description: |-
1633 PersistentClient tells the controller to use a persistent Kubernetes
1634 client for this release. When enabled, the client will be reused for the
1635 duration of the reconciliation, instead of being created and destroyed
1636 for each (step of a) Helm action.
1637
1638 This can improve performance, but may cause issues with some Helm charts
1639 that for example do create Custom Resource Definitions during installation
1640 outside Helm's CRD lifecycle hooks, which are then not observed to be
1641 available by e.g. post-install hooks.
1642
1643 If not set, it defaults to true.
1644 type: boolean
1645 postRenderers:
1646 description: |-
1647 PostRenderers holds an array of Helm PostRenderers, which will be applied in order
1648 of their definition.
1649 items:
1650 description: PostRenderer contains a Helm PostRenderer specification.
1651 properties:
1652 kustomize:
1653 description: Kustomization to apply as PostRenderer.
1654 properties:
1655 images:
1656 description: |-
1657 Images is a list of (image name, new name, new tag or digest)
1658 for changing image names, tags or digests. This can also be achieved with a
1659 patch, but this operator is simpler to specify.
1660 items:
1661 description: Image contains an image name, a new name,
1662 a new tag or digest, which will replace the original
1663 name and tag.
1664 properties:
1665 digest:
1666 description: |-
1667 Digest is the value used to replace the original image tag.
1668 If digest is present NewTag value is ignored.
1669 type: string
1670 name:
1671 description: Name is a tag-less image name.
1672 type: string
1673 newName:
1674 description: NewName is the value used to replace
1675 the original name.
1676 type: string
1677 newTag:
1678 description: NewTag is the value used to replace the
1679 original tag.
1680 type: string
1681 required:
1682 - name
1683 type: object
1684 type: array
1685 patches:
1686 description: |-
1687 Strategic merge and JSON patches, defined as inline YAML objects,
1688 capable of targeting objects based on kind, label and annotation selectors.
1689 items:
1690 description: |-
1691 Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should
1692 be applied to.
1693 properties:
1694 patch:
1695 description: |-
1696 Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with
1697 an array of operation objects.
1698 type: string
1699 target:
1700 description: Target points to the resources that the
1701 patch document should be applied to.
1702 properties:
1703 annotationSelector:
1704 description: |-
1705 AnnotationSelector is a string that follows the label selection expression
1706 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1707 It matches with the resource annotations.
1708 type: string
1709 group:
1710 description: |-
1711 Group is the API group to select resources from.
1712 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
1713 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1714 type: string
1715 kind:
1716 description: |-
1717 Kind of the API Group to select resources from.
1718 Together with Group and Version it is capable of unambiguously
1719 identifying and/or selecting resources.
1720 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1721 type: string
1722 labelSelector:
1723 description: |-
1724 LabelSelector is a string that follows the label selection expression
1725 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1726 It matches with the resource labels.
1727 type: string
1728 name:
1729 description: Name to match resources with.
1730 type: string
1731 namespace:
1732 description: Namespace to select resources from.
1733 type: string
1734 version:
1735 description: |-
1736 Version of the API Group to select resources from.
1737 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
1738 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1739 type: string
1740 type: object
1741 required:
1742 - patch
1743 type: object
1744 type: array
1745 patchesJson6902:
1746 description: JSON 6902 patches, defined as inline YAML objects.
1747 items:
1748 description: JSON6902Patch contains a JSON6902 patch and
1749 the target the patch should be applied to.
1750 properties:
1751 patch:
1752 description: Patch contains the JSON6902 patch document
1753 with an array of operation objects.
1754 items:
1755 description: |-
1756 JSON6902 is a JSON6902 operation object.
1757 https://datatracker.ietf.org/doc/html/rfc6902#section-4
1758 properties:
1759 from:
1760 description: |-
1761 From contains a JSON-pointer value that references a location within the target document where the operation is
1762 performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations.
1763 type: string
1764 op:
1765 description: |-
1766 Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or
1767 "test".
1768 https://datatracker.ietf.org/doc/html/rfc6902#section-4
1769 enum:
1770 - test
1771 - remove
1772 - add
1773 - replace
1774 - move
1775 - copy
1776 type: string
1777 path:
1778 description: |-
1779 Path contains the JSON-pointer value that references a location within the target document where the operation
1780 is performed. The meaning of the value depends on the value of Op.
1781 type: string
1782 value:
1783 description: |-
1784 Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into
1785 account by all operations.
1786 x-kubernetes-preserve-unknown-fields: true
1787 required:
1788 - op
1789 - path
1790 type: object
1791 type: array
1792 target:
1793 description: Target points to the resources that the
1794 patch document should be applied to.
1795 properties:
1796 annotationSelector:
1797 description: |-
1798 AnnotationSelector is a string that follows the label selection expression
1799 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1800 It matches with the resource annotations.
1801 type: string
1802 group:
1803 description: |-
1804 Group is the API group to select resources from.
1805 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
1806 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1807 type: string
1808 kind:
1809 description: |-
1810 Kind of the API Group to select resources from.
1811 Together with Group and Version it is capable of unambiguously
1812 identifying and/or selecting resources.
1813 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1814 type: string
1815 labelSelector:
1816 description: |-
1817 LabelSelector is a string that follows the label selection expression
1818 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
1819 It matches with the resource labels.
1820 type: string
1821 name:
1822 description: Name to match resources with.
1823 type: string
1824 namespace:
1825 description: Namespace to select resources from.
1826 type: string
1827 version:
1828 description: |-
1829 Version of the API Group to select resources from.
1830 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
1831 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
1832 type: string
1833 type: object
1834 required:
1835 - patch
1836 - target
1837 type: object
1838 type: array
1839 patchesStrategicMerge:
1840 description: Strategic merge patches, defined as inline
1841 YAML objects.
1842 items:
1843 x-kubernetes-preserve-unknown-fields: true
1844 type: array
1845 type: object
1846 type: object
1847 type: array
1848 releaseName:
1849 description: |-
1850 ReleaseName used for the Helm release. Defaults to a composition of
1851 '[TargetNamespace-]Name'.
1852 maxLength: 53
1853 minLength: 1
1854 type: string
1855 rollback:
1856 description: Rollback holds the configuration for Helm rollback actions
1857 for this HelmRelease.
1858 properties:
1859 cleanupOnFail:
1860 description: |-
1861 CleanupOnFail allows deletion of new resources created during the Helm
1862 rollback action when it fails.
1863 type: boolean
1864 disableHooks:
1865 description: DisableHooks prevents hooks from running during the
1866 Helm rollback action.
1867 type: boolean
1868 disableWait:
1869 description: |-
1870 DisableWait disables the waiting for resources to be ready after a Helm
1871 rollback has been performed.
1872 type: boolean
1873 disableWaitForJobs:
1874 description: |-
1875 DisableWaitForJobs disables waiting for jobs to complete after a Helm
1876 rollback has been performed.
1877 type: boolean
1878 force:
1879 description: Force forces resource updates through a replacement
1880 strategy.
1881 type: boolean
1882 recreate:
1883 description: Recreate performs pod restarts for the resource if
1884 applicable.
1885 type: boolean
1886 timeout:
1887 description: |-
1888 Timeout is the time to wait for any individual Kubernetes operation (like
1889 Jobs for hooks) during the performance of a Helm rollback action. Defaults to
1890 'HelmReleaseSpec.Timeout'.
1891 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1892 type: string
1893 type: object
1894 serviceAccountName:
1895 description: |-
1896 The name of the Kubernetes service account to impersonate
1897 when reconciling this HelmRelease.
1898 type: string
1899 storageNamespace:
1900 description: |-
1901 StorageNamespace used for the Helm storage.
1902 Defaults to the namespace of the HelmRelease.
1903 maxLength: 63
1904 minLength: 1
1905 type: string
1906 suspend:
1907 description: |-
1908 Suspend tells the controller to suspend reconciliation for this HelmRelease,
1909 it does not apply to already started reconciliations. Defaults to false.
1910 type: boolean
1911 targetNamespace:
1912 description: |-
1913 TargetNamespace to target when performing operations for the HelmRelease.
1914 Defaults to the namespace of the HelmRelease.
1915 maxLength: 63
1916 minLength: 1
1917 type: string
1918 test:
1919 description: Test holds the configuration for Helm test actions for
1920 this HelmRelease.
1921 properties:
1922 enable:
1923 description: |-
1924 Enable enables Helm test actions for this HelmRelease after an Helm install
1925 or upgrade action has been performed.
1926 type: boolean
1927 ignoreFailures:
1928 description: |-
1929 IgnoreFailures tells the controller to skip remediation when the Helm tests
1930 are run but fail. Can be overwritten for tests run after install or upgrade
1931 actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'.
1932 type: boolean
1933 timeout:
1934 description: |-
1935 Timeout is the time to wait for any individual Kubernetes operation during
1936 the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'.
1937 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1938 type: string
1939 type: object
1940 timeout:
1941 description: |-
1942 Timeout is the time to wait for any individual Kubernetes operation (like Jobs
1943 for hooks) during the performance of a Helm action. Defaults to '5m0s'.
1944 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1945 type: string
1946 uninstall:
1947 description: Uninstall holds the configuration for Helm uninstall
1948 actions for this HelmRelease.
1949 properties:
1950 deletionPropagation:
1951 default: background
1952 description: |-
1953 DeletionPropagation specifies the deletion propagation policy when
1954 a Helm uninstall is performed.
1955 enum:
1956 - background
1957 - foreground
1958 - orphan
1959 type: string
1960 disableHooks:
1961 description: DisableHooks prevents hooks from running during the
1962 Helm rollback action.
1963 type: boolean
1964 disableWait:
1965 description: |-
1966 DisableWait disables waiting for all the resources to be deleted after
1967 a Helm uninstall is performed.
1968 type: boolean
1969 keepHistory:
1970 description: |-
1971 KeepHistory tells Helm to remove all associated resources and mark the
1972 release as deleted, but retain the release history.
1973 type: boolean
1974 timeout:
1975 description: |-
1976 Timeout is the time to wait for any individual Kubernetes operation (like
1977 Jobs for hooks) during the performance of a Helm uninstall action. Defaults
1978 to 'HelmReleaseSpec.Timeout'.
1979 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
1980 type: string
1981 type: object
1982 upgrade:
1983 description: Upgrade holds the configuration for Helm upgrade actions
1984 for this HelmRelease.
1985 properties:
1986 cleanupOnFail:
1987 description: |-
1988 CleanupOnFail allows deletion of new resources created during the Helm
1989 upgrade action when it fails.
1990 type: boolean
1991 crds:
1992 description: |-
1993 CRDs upgrade CRDs from the Helm Chart's crds directory according
1994 to the CRD upgrade policy provided here. Valid values are `Skip`,
1995 `Create` or `CreateReplace`. Default is `Skip` and if omitted
1996 CRDs are neither installed nor upgraded.
1997
1998 Skip: do neither install nor replace (update) any CRDs.
1999
2000 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
2001
2002 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
2003 but not deleted.
2004
2005 By default, CRDs are not applied during Helm upgrade action. With this
2006 option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm.
2007 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
2008 enum:
2009 - Skip
2010 - Create
2011 - CreateReplace
2012 type: string
2013 disableHooks:
2014 description: DisableHooks prevents hooks from running during the
2015 Helm upgrade action.
2016 type: boolean
2017 disableOpenAPIValidation:
2018 description: |-
2019 DisableOpenAPIValidation prevents the Helm upgrade action from validating
2020 rendered templates against the Kubernetes OpenAPI Schema.
2021 type: boolean
2022 disableWait:
2023 description: |-
2024 DisableWait disables the waiting for resources to be ready after a Helm
2025 upgrade has been performed.
2026 type: boolean
2027 disableWaitForJobs:
2028 description: |-
2029 DisableWaitForJobs disables waiting for jobs to complete after a Helm
2030 upgrade has been performed.
2031 type: boolean
2032 force:
2033 description: Force forces resource updates through a replacement
2034 strategy.
2035 type: boolean
2036 preserveValues:
2037 description: |-
2038 PreserveValues will make Helm reuse the last release's values and merge in
2039 overrides from 'Values'. Setting this flag makes the HelmRelease
2040 non-declarative.
2041 type: boolean
2042 remediation:
2043 description: |-
2044 Remediation holds the remediation configuration for when the Helm upgrade
2045 action for the HelmRelease fails. The default is to not perform any action.
2046 properties:
2047 ignoreTestFailures:
2048 description: |-
2049 IgnoreTestFailures tells the controller to skip remediation when the Helm
2050 tests are run after an upgrade action but fail.
2051 Defaults to 'Test.IgnoreFailures'.
2052 type: boolean
2053 remediateLastFailure:
2054 description: |-
2055 RemediateLastFailure tells the controller to remediate the last failure, when
2056 no retries remain. Defaults to 'false' unless 'Retries' is greater than 0.
2057 type: boolean
2058 retries:
2059 description: |-
2060 Retries is the number of retries that should be attempted on failures before
2061 bailing. Remediation, using 'Strategy', is performed between each attempt.
2062 Defaults to '0', a negative integer equals to unlimited retries.
2063 type: integer
2064 strategy:
2065 description: Strategy to use for failure remediation. Defaults
2066 to 'rollback'.
2067 enum:
2068 - rollback
2069 - uninstall
2070 type: string
2071 type: object
2072 timeout:
2073 description: |-
2074 Timeout is the time to wait for any individual Kubernetes operation (like
2075 Jobs for hooks) during the performance of a Helm upgrade action. Defaults to
2076 'HelmReleaseSpec.Timeout'.
2077 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
2078 type: string
2079 type: object
2080 values:
2081 description: Values holds the values for this Helm release.
2082 x-kubernetes-preserve-unknown-fields: true
2083 valuesFrom:
2084 description: |-
2085 ValuesFrom holds references to resources containing Helm values for this HelmRelease,
2086 and information about how they should be merged.
2087 items:
2088 description: |-
2089 ValuesReference contains a reference to a resource containing Helm values,
2090 and optionally the key they can be found at.
2091 properties:
2092 kind:
2093 description: Kind of the values referent, valid values are ('Secret',
2094 'ConfigMap').
2095 enum:
2096 - Secret
2097 - ConfigMap
2098 type: string
2099 name:
2100 description: |-
2101 Name of the values referent. Should reside in the same namespace as the
2102 referring resource.
2103 maxLength: 253
2104 minLength: 1
2105 type: string
2106 optional:
2107 description: |-
2108 Optional marks this ValuesReference as optional. When set, a not found error
2109 for the values reference is ignored, but any ValuesKey, TargetPath or
2110 transient error will still result in a reconciliation failure.
2111 type: boolean
2112 targetPath:
2113 description: |-
2114 TargetPath is the YAML dot notation path the value should be merged at. When
2115 set, the ValuesKey is expected to be a single flat value. Defaults to 'None',
2116 which results in the values getting merged at the root.
2117 maxLength: 250
2118 pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$
2119 type: string
2120 valuesKey:
2121 description: |-
2122 ValuesKey is the data key where the values.yaml or a specific value can be
2123 found at. Defaults to 'values.yaml'.
2124 When set, must be a valid Data Key, consisting of alphanumeric characters,
2125 '-', '_' or '.'.
2126 maxLength: 253
2127 pattern: ^[\-._a-zA-Z0-9]+$
2128 type: string
2129 required:
2130 - kind
2131 - name
2132 type: object
2133 type: array
2134 required:
2135 - chart
2136 - interval
2137 type: object
2138 status:
2139 default:
2140 observedGeneration: -1
2141 description: HelmReleaseStatus defines the observed state of a HelmRelease.
2142 properties:
2143 conditions:
2144 description: Conditions holds the conditions for the HelmRelease.
2145 items:
2146 description: Condition contains details for one aspect of the current
2147 state of this API Resource.
2148 properties:
2149 lastTransitionTime:
2150 description: |-
2151 lastTransitionTime is the last time the condition transitioned from one status to another.
2152 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
2153 format: date-time
2154 type: string
2155 message:
2156 description: |-
2157 message is a human readable message indicating details about the transition.
2158 This may be an empty string.
2159 maxLength: 32768
2160 type: string
2161 observedGeneration:
2162 description: |-
2163 observedGeneration represents the .metadata.generation that the condition was set based upon.
2164 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
2165 with respect to the current state of the instance.
2166 format: int64
2167 minimum: 0
2168 type: integer
2169 reason:
2170 description: |-
2171 reason contains a programmatic identifier indicating the reason for the condition's last transition.
2172 Producers of specific condition types may define expected values and meanings for this field,
2173 and whether the values are considered a guaranteed API.
2174 The value should be a CamelCase string.
2175 This field may not be empty.
2176 maxLength: 1024
2177 minLength: 1
2178 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
2179 type: string
2180 status:
2181 description: status of the condition, one of True, False, Unknown.
2182 enum:
2183 - "True"
2184 - "False"
2185 - Unknown
2186 type: string
2187 type:
2188 description: type of condition in CamelCase or in foo.example.com/CamelCase.
2189 maxLength: 316
2190 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
2191 type: string
2192 required:
2193 - lastTransitionTime
2194 - message
2195 - reason
2196 - status
2197 - type
2198 type: object
2199 type: array
2200 failures:
2201 description: |-
2202 Failures is the reconciliation failure count against the latest desired
2203 state. It is reset after a successful reconciliation.
2204 format: int64
2205 type: integer
2206 helmChart:
2207 description: |-
2208 HelmChart is the namespaced name of the HelmChart resource created by
2209 the controller for the HelmRelease.
2210 type: string
2211 history:
2212 description: |-
2213 History holds the history of Helm releases performed for this HelmRelease
2214 up to the last successfully completed release.
2215
2216 Note: this field is provisional to the v2beta2 API, and not actively used
2217 by v2beta1 HelmReleases.
2218 items:
2219 description: |-
2220 Snapshot captures a point-in-time copy of the status information for a Helm release,
2221 as managed by the controller.
2222 properties:
2223 apiVersion:
2224 description: |-
2225 APIVersion is the API version of the Snapshot.
2226 Provisional: when the calculation method of the Digest field is changed,
2227 this field will be used to distinguish between the old and new methods.
2228 type: string
2229 appVersion:
2230 description: AppVersion is the chart app version of the release
2231 object in storage.
2232 type: string
2233 chartName:
2234 description: ChartName is the chart name of the release object
2235 in storage.
2236 type: string
2237 chartVersion:
2238 description: |-
2239 ChartVersion is the chart version of the release object in
2240 storage.
2241 type: string
2242 configDigest:
2243 description: |-
2244 ConfigDigest is the checksum of the config (better known as
2245 "values") of the release object in storage.
2246 It has the format of `<algo>:<checksum>`.
2247 type: string
2248 deleted:
2249 description: Deleted is when the release was deleted.
2250 format: date-time
2251 type: string
2252 digest:
2253 description: |-
2254 Digest is the checksum of the release object in storage.
2255 It has the format of `<algo>:<checksum>`.
2256 type: string
2257 firstDeployed:
2258 description: FirstDeployed is when the release was first deployed.
2259 format: date-time
2260 type: string
2261 lastDeployed:
2262 description: LastDeployed is when the release was last deployed.
2263 format: date-time
2264 type: string
2265 name:
2266 description: Name is the name of the release.
2267 type: string
2268 namespace:
2269 description: Namespace is the namespace the release is deployed
2270 to.
2271 type: string
2272 ociDigest:
2273 description: OCIDigest is the digest of the OCI artifact associated
2274 with the release.
2275 type: string
2276 status:
2277 description: Status is the current state of the release.
2278 type: string
2279 testHooks:
2280 additionalProperties:
2281 description: |-
2282 TestHookStatus holds the status information for a test hook as observed
2283 to be run by the controller.
2284 properties:
2285 lastCompleted:
2286 description: LastCompleted is the time the test hook last
2287 completed.
2288 format: date-time
2289 type: string
2290 lastStarted:
2291 description: LastStarted is the time the test hook was
2292 last started.
2293 format: date-time
2294 type: string
2295 phase:
2296 description: Phase the test hook was observed to be in.
2297 type: string
2298 type: object
2299 description: |-
2300 TestHooks is the list of test hooks for the release as observed to be
2301 run by the controller.
2302 type: object
2303 version:
2304 description: Version is the version of the release object in
2305 storage.
2306 type: integer
2307 required:
2308 - chartName
2309 - chartVersion
2310 - configDigest
2311 - digest
2312 - firstDeployed
2313 - lastDeployed
2314 - name
2315 - namespace
2316 - status
2317 - version
2318 type: object
2319 type: array
2320 installFailures:
2321 description: |-
2322 InstallFailures is the install failure count against the latest desired
2323 state. It is reset after a successful reconciliation.
2324 format: int64
2325 type: integer
2326 lastAppliedRevision:
2327 description: LastAppliedRevision is the revision of the last successfully
2328 applied source.
2329 type: string
2330 lastAttemptedConfigDigest:
2331 description: |-
2332 LastAttemptedConfigDigest is the digest for the config (better known as
2333 "values") of the last reconciliation attempt.
2334
2335 Note: this field is provisional to the v2beta2 API, and not actively used
2336 by v2beta1 HelmReleases.
2337 type: string
2338 lastAttemptedGeneration:
2339 description: |-
2340 LastAttemptedGeneration is the last generation the controller attempted
2341 to reconcile.
2342
2343 Note: this field is provisional to the v2beta2 API, and not actively used
2344 by v2beta1 HelmReleases.
2345 format: int64
2346 type: integer
2347 lastAttemptedReleaseAction:
2348 description: |-
2349 LastAttemptedReleaseAction is the last release action performed for this
2350 HelmRelease. It is used to determine the active remediation strategy.
2351
2352 Note: this field is provisional to the v2beta2 API, and not actively used
2353 by v2beta1 HelmReleases.
2354 type: string
2355 lastAttemptedRevision:
2356 description: LastAttemptedRevision is the revision of the last reconciliation
2357 attempt.
2358 type: string
2359 lastAttemptedValuesChecksum:
2360 description: |-
2361 LastAttemptedValuesChecksum is the SHA1 checksum of the values of the last
2362 reconciliation attempt.
2363 type: string
2364 lastHandledForceAt:
2365 description: |-
2366 LastHandledForceAt holds the value of the most recent force request
2367 value, so a change of the annotation value can be detected.
2368
2369 Note: this field is provisional to the v2beta2 API, and not actively used
2370 by v2beta1 HelmReleases.
2371 type: string
2372 lastHandledReconcileAt:
2373 description: |-
2374 LastHandledReconcileAt holds the value of the most recent
2375 reconcile request value, so a change of the annotation value
2376 can be detected.
2377 type: string
2378 lastHandledResetAt:
2379 description: |-
2380 LastHandledResetAt holds the value of the most recent reset request
2381 value, so a change of the annotation value can be detected.
2382
2383 Note: this field is provisional to the v2beta2 API, and not actively used
2384 by v2beta1 HelmReleases.
2385 type: string
2386 lastReleaseRevision:
2387 description: LastReleaseRevision is the revision of the last successful
2388 Helm release.
2389 type: integer
2390 observedGeneration:
2391 description: ObservedGeneration is the last observed generation.
2392 format: int64
2393 type: integer
2394 observedPostRenderersDigest:
2395 description: |-
2396 ObservedPostRenderersDigest is the digest for the post-renderers of
2397 the last successful reconciliation attempt.
2398 type: string
2399 storageNamespace:
2400 description: |-
2401 StorageNamespace is the namespace of the Helm release storage for the
2402 current release.
2403
2404 Note: this field is provisional to the v2beta2 API, and not actively used
2405 by v2beta1 HelmReleases.
2406 type: string
2407 upgradeFailures:
2408 description: |-
2409 UpgradeFailures is the upgrade failure count against the latest desired
2410 state. It is reset after a successful reconciliation.
2411 format: int64
2412 type: integer
2413 type: object
2414 type: object
2415 served: true
2416 storage: false
2417 subresources:
2418 status: {}
2419 - additionalPrinterColumns:
2420 - jsonPath: .metadata.creationTimestamp
2421 name: Age
2422 type: date
2423 - jsonPath: .status.conditions[?(@.type=="Ready")].status
2424 name: Ready
2425 type: string
2426 - jsonPath: .status.conditions[?(@.type=="Ready")].message
2427 name: Status
2428 type: string
2429 deprecated: true
2430 deprecationWarning: v2beta2 HelmRelease is deprecated, upgrade to v2
2431 name: v2beta2
2432 schema:
2433 openAPIV3Schema:
2434 description: HelmRelease is the Schema for the helmreleases API
2435 properties:
2436 apiVersion:
2437 description: |-
2438 APIVersion defines the versioned schema of this representation of an object.
2439 Servers should convert recognized schemas to the latest internal value, and
2440 may reject unrecognized values.
2441 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
2442 type: string
2443 kind:
2444 description: |-
2445 Kind is a string value representing the REST resource this object represents.
2446 Servers may infer this from the endpoint the client submits requests to.
2447 Cannot be updated.
2448 In CamelCase.
2449 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
2450 type: string
2451 metadata:
2452 type: object
2453 spec:
2454 description: HelmReleaseSpec defines the desired state of a Helm release.
2455 properties:
2456 chart:
2457 description: |-
2458 Chart defines the template of the v1beta2.HelmChart that should be created
2459 for this HelmRelease.
2460 properties:
2461 metadata:
2462 description: ObjectMeta holds the template for metadata like labels
2463 and annotations.
2464 properties:
2465 annotations:
2466 additionalProperties:
2467 type: string
2468 description: |-
2469 Annotations is an unstructured key value map stored with a resource that may be
2470 set by external tools to store and retrieve arbitrary metadata. They are not
2471 queryable and should be preserved when modifying objects.
2472 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
2473 type: object
2474 labels:
2475 additionalProperties:
2476 type: string
2477 description: |-
2478 Map of string keys and values that can be used to organize and categorize
2479 (scope and select) objects.
2480 More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
2481 type: object
2482 type: object
2483 spec:
2484 description: Spec holds the template for the v1beta2.HelmChartSpec
2485 for this HelmRelease.
2486 properties:
2487 chart:
2488 description: The name or path the Helm chart is available
2489 at in the SourceRef.
2490 maxLength: 2048
2491 minLength: 1
2492 type: string
2493 ignoreMissingValuesFiles:
2494 description: IgnoreMissingValuesFiles controls whether to
2495 silently ignore missing values files rather than failing.
2496 type: boolean
2497 interval:
2498 description: |-
2499 Interval at which to check the v1.Source for updates. Defaults to
2500 'HelmReleaseSpec.Interval'.
2501 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
2502 type: string
2503 reconcileStrategy:
2504 default: ChartVersion
2505 description: |-
2506 Determines what enables the creation of a new artifact. Valid values are
2507 ('ChartVersion', 'Revision').
2508 See the documentation of the values for an explanation on their behavior.
2509 Defaults to ChartVersion when omitted.
2510 enum:
2511 - ChartVersion
2512 - Revision
2513 type: string
2514 sourceRef:
2515 description: The name and namespace of the v1.Source the chart
2516 is available at.
2517 properties:
2518 apiVersion:
2519 description: APIVersion of the referent.
2520 type: string
2521 kind:
2522 description: Kind of the referent.
2523 enum:
2524 - HelmRepository
2525 - GitRepository
2526 - Bucket
2527 type: string
2528 name:
2529 description: Name of the referent.
2530 maxLength: 253
2531 minLength: 1
2532 type: string
2533 namespace:
2534 description: Namespace of the referent.
2535 maxLength: 63
2536 minLength: 1
2537 type: string
2538 required:
2539 - kind
2540 - name
2541 type: object
2542 valuesFile:
2543 description: |-
2544 Alternative values file to use as the default chart values, expected to
2545 be a relative path in the SourceRef. Deprecated in favor of ValuesFiles,
2546 for backwards compatibility the file defined here is merged before the
2547 ValuesFiles items. Ignored when omitted.
2548 type: string
2549 valuesFiles:
2550 description: |-
2551 Alternative list of values files to use as the chart values (values.yaml
2552 is not included by default), expected to be a relative path in the SourceRef.
2553 Values files are merged in the order of this list with the last file overriding
2554 the first. Ignored when omitted.
2555 items:
2556 type: string
2557 type: array
2558 verify:
2559 description: |-
2560 Verify contains the secret name containing the trusted public keys
2561 used to verify the signature and specifies which provider to use to check
2562 whether OCI image is authentic.
2563 This field is only supported for OCI sources.
2564 Chart dependencies, which are not bundled in the umbrella chart artifact,
2565 are not verified.
2566 properties:
2567 provider:
2568 default: cosign
2569 description: Provider specifies the technology used to
2570 sign the OCI Helm chart.
2571 enum:
2572 - cosign
2573 - notation
2574 type: string
2575 secretRef:
2576 description: |-
2577 SecretRef specifies the Kubernetes Secret containing the
2578 trusted public keys.
2579 properties:
2580 name:
2581 description: Name of the referent.
2582 type: string
2583 required:
2584 - name
2585 type: object
2586 required:
2587 - provider
2588 type: object
2589 version:
2590 default: '*'
2591 description: |-
2592 Version semver expression, ignored for charts from v1beta2.GitRepository and
2593 v1beta2.Bucket sources. Defaults to latest when omitted.
2594 type: string
2595 required:
2596 - chart
2597 - sourceRef
2598 type: object
2599 required:
2600 - spec
2601 type: object
2602 chartRef:
2603 description: |-
2604 ChartRef holds a reference to a source controller resource containing the
2605 Helm chart artifact.
2606
2607 Note: this field is provisional to the v2 API, and not actively used
2608 by v2beta2 HelmReleases.
2609 properties:
2610 apiVersion:
2611 description: APIVersion of the referent.
2612 type: string
2613 kind:
2614 description: Kind of the referent.
2615 enum:
2616 - OCIRepository
2617 - HelmChart
2618 type: string
2619 name:
2620 description: Name of the referent.
2621 maxLength: 253
2622 minLength: 1
2623 type: string
2624 namespace:
2625 description: |-
2626 Namespace of the referent, defaults to the namespace of the Kubernetes
2627 resource object that contains the reference.
2628 maxLength: 63
2629 minLength: 1
2630 type: string
2631 required:
2632 - kind
2633 - name
2634 type: object
2635 dependsOn:
2636 description: |-
2637 DependsOn may contain a meta.NamespacedObjectReference slice with
2638 references to HelmRelease resources that must be ready before this HelmRelease
2639 can be reconciled.
2640 items:
2641 description: |-
2642 NamespacedObjectReference contains enough information to locate the referenced Kubernetes resource object in any
2643 namespace.
2644 properties:
2645 name:
2646 description: Name of the referent.
2647 type: string
2648 namespace:
2649 description: Namespace of the referent, when not specified it
2650 acts as LocalObjectReference.
2651 type: string
2652 required:
2653 - name
2654 type: object
2655 type: array
2656 driftDetection:
2657 description: |-
2658 DriftDetection holds the configuration for detecting and handling
2659 differences between the manifest in the Helm storage and the resources
2660 currently existing in the cluster.
2661 properties:
2662 ignore:
2663 description: |-
2664 Ignore contains a list of rules for specifying which changes to ignore
2665 during diffing.
2666 items:
2667 description: |-
2668 IgnoreRule defines a rule to selectively disregard specific changes during
2669 the drift detection process.
2670 properties:
2671 paths:
2672 description: |-
2673 Paths is a list of JSON Pointer (RFC 6901) paths to be excluded from
2674 consideration in a Kubernetes object.
2675 items:
2676 type: string
2677 type: array
2678 target:
2679 description: |-
2680 Target is a selector for specifying Kubernetes objects to which this
2681 rule applies.
2682 If Target is not set, the Paths will be ignored for all Kubernetes
2683 objects within the manifest of the Helm release.
2684 properties:
2685 annotationSelector:
2686 description: |-
2687 AnnotationSelector is a string that follows the label selection expression
2688 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2689 It matches with the resource annotations.
2690 type: string
2691 group:
2692 description: |-
2693 Group is the API group to select resources from.
2694 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
2695 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2696 type: string
2697 kind:
2698 description: |-
2699 Kind of the API Group to select resources from.
2700 Together with Group and Version it is capable of unambiguously
2701 identifying and/or selecting resources.
2702 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2703 type: string
2704 labelSelector:
2705 description: |-
2706 LabelSelector is a string that follows the label selection expression
2707 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2708 It matches with the resource labels.
2709 type: string
2710 name:
2711 description: Name to match resources with.
2712 type: string
2713 namespace:
2714 description: Namespace to select resources from.
2715 type: string
2716 version:
2717 description: |-
2718 Version of the API Group to select resources from.
2719 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
2720 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2721 type: string
2722 type: object
2723 required:
2724 - paths
2725 type: object
2726 type: array
2727 mode:
2728 description: |-
2729 Mode defines how differences should be handled between the Helm manifest
2730 and the manifest currently applied to the cluster.
2731 If not explicitly set, it defaults to DiffModeDisabled.
2732 enum:
2733 - enabled
2734 - warn
2735 - disabled
2736 type: string
2737 type: object
2738 install:
2739 description: Install holds the configuration for Helm install actions
2740 for this HelmRelease.
2741 properties:
2742 crds:
2743 description: |-
2744 CRDs upgrade CRDs from the Helm Chart's crds directory according
2745 to the CRD upgrade policy provided here. Valid values are `Skip`,
2746 `Create` or `CreateReplace`. Default is `Create` and if omitted
2747 CRDs are installed but not updated.
2748
2749 Skip: do neither install nor replace (update) any CRDs.
2750
2751 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
2752
2753 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
2754 but not deleted.
2755
2756 By default, CRDs are applied (installed) during Helm install action.
2757 With this option users can opt in to CRD replace existing CRDs on Helm
2758 install actions, which is not (yet) natively supported by Helm.
2759 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
2760 enum:
2761 - Skip
2762 - Create
2763 - CreateReplace
2764 type: string
2765 createNamespace:
2766 description: |-
2767 CreateNamespace tells the Helm install action to create the
2768 HelmReleaseSpec.TargetNamespace if it does not exist yet.
2769 On uninstall, the namespace will not be garbage collected.
2770 type: boolean
2771 disableHooks:
2772 description: DisableHooks prevents hooks from running during the
2773 Helm install action.
2774 type: boolean
2775 disableOpenAPIValidation:
2776 description: |-
2777 DisableOpenAPIValidation prevents the Helm install action from validating
2778 rendered templates against the Kubernetes OpenAPI Schema.
2779 type: boolean
2780 disableWait:
2781 description: |-
2782 DisableWait disables the waiting for resources to be ready after a Helm
2783 install has been performed.
2784 type: boolean
2785 disableWaitForJobs:
2786 description: |-
2787 DisableWaitForJobs disables waiting for jobs to complete after a Helm
2788 install has been performed.
2789 type: boolean
2790 remediation:
2791 description: |-
2792 Remediation holds the remediation configuration for when the Helm install
2793 action for the HelmRelease fails. The default is to not perform any action.
2794 properties:
2795 ignoreTestFailures:
2796 description: |-
2797 IgnoreTestFailures tells the controller to skip remediation when the Helm
2798 tests are run after an install action but fail. Defaults to
2799 'Test.IgnoreFailures'.
2800 type: boolean
2801 remediateLastFailure:
2802 description: |-
2803 RemediateLastFailure tells the controller to remediate the last failure, when
2804 no retries remain. Defaults to 'false'.
2805 type: boolean
2806 retries:
2807 description: |-
2808 Retries is the number of retries that should be attempted on failures before
2809 bailing. Remediation, using an uninstall, is performed between each attempt.
2810 Defaults to '0', a negative integer equals to unlimited retries.
2811 type: integer
2812 type: object
2813 replace:
2814 description: |-
2815 Replace tells the Helm install action to re-use the 'ReleaseName', but only
2816 if that name is a deleted release which remains in the history.
2817 type: boolean
2818 skipCRDs:
2819 description: |-
2820 SkipCRDs tells the Helm install action to not install any CRDs. By default,
2821 CRDs are installed if not already present.
2822
2823 Deprecated use CRD policy (`crds`) attribute with value `Skip` instead.
2824 type: boolean
2825 timeout:
2826 description: |-
2827 Timeout is the time to wait for any individual Kubernetes operation (like
2828 Jobs for hooks) during the performance of a Helm install action. Defaults to
2829 'HelmReleaseSpec.Timeout'.
2830 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
2831 type: string
2832 type: object
2833 interval:
2834 description: Interval at which to reconcile the Helm release.
2835 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
2836 type: string
2837 kubeConfig:
2838 description: |-
2839 KubeConfig for reconciling the HelmRelease on a remote cluster.
2840 When used in combination with HelmReleaseSpec.ServiceAccountName,
2841 forces the controller to act on behalf of that Service Account at the
2842 target cluster.
2843 If the --default-service-account flag is set, its value will be used as
2844 a controller level fallback for when HelmReleaseSpec.ServiceAccountName
2845 is empty.
2846 properties:
2847 secretRef:
2848 description: |-
2849 SecretRef holds the name of a secret that contains a key with
2850 the kubeconfig file as the value. If no key is set, the key will default
2851 to 'value'.
2852 It is recommended that the kubeconfig is self-contained, and the secret
2853 is regularly updated if credentials such as a cloud-access-token expire.
2854 Cloud specific `cmd-path` auth helpers will not function without adding
2855 binaries and credentials to the Pod that is responsible for reconciling
2856 Kubernetes resources.
2857 properties:
2858 key:
2859 description: Key in the Secret, when not specified an implementation-specific
2860 default key is used.
2861 type: string
2862 name:
2863 description: Name of the Secret.
2864 type: string
2865 required:
2866 - name
2867 type: object
2868 required:
2869 - secretRef
2870 type: object
2871 maxHistory:
2872 description: |-
2873 MaxHistory is the number of revisions saved by Helm for this HelmRelease.
2874 Use '0' for an unlimited number of revisions; defaults to '5'.
2875 type: integer
2876 persistentClient:
2877 description: |-
2878 PersistentClient tells the controller to use a persistent Kubernetes
2879 client for this release. When enabled, the client will be reused for the
2880 duration of the reconciliation, instead of being created and destroyed
2881 for each (step of a) Helm action.
2882
2883 This can improve performance, but may cause issues with some Helm charts
2884 that for example do create Custom Resource Definitions during installation
2885 outside Helm's CRD lifecycle hooks, which are then not observed to be
2886 available by e.g. post-install hooks.
2887
2888 If not set, it defaults to true.
2889 type: boolean
2890 postRenderers:
2891 description: |-
2892 PostRenderers holds an array of Helm PostRenderers, which will be applied in order
2893 of their definition.
2894 items:
2895 description: PostRenderer contains a Helm PostRenderer specification.
2896 properties:
2897 kustomize:
2898 description: Kustomization to apply as PostRenderer.
2899 properties:
2900 images:
2901 description: |-
2902 Images is a list of (image name, new name, new tag or digest)
2903 for changing image names, tags or digests. This can also be achieved with a
2904 patch, but this operator is simpler to specify.
2905 items:
2906 description: Image contains an image name, a new name,
2907 a new tag or digest, which will replace the original
2908 name and tag.
2909 properties:
2910 digest:
2911 description: |-
2912 Digest is the value used to replace the original image tag.
2913 If digest is present NewTag value is ignored.
2914 type: string
2915 name:
2916 description: Name is a tag-less image name.
2917 type: string
2918 newName:
2919 description: NewName is the value used to replace
2920 the original name.
2921 type: string
2922 newTag:
2923 description: NewTag is the value used to replace the
2924 original tag.
2925 type: string
2926 required:
2927 - name
2928 type: object
2929 type: array
2930 patches:
2931 description: |-
2932 Strategic merge and JSON patches, defined as inline YAML objects,
2933 capable of targeting objects based on kind, label and annotation selectors.
2934 items:
2935 description: |-
2936 Patch contains an inline StrategicMerge or JSON6902 patch, and the target the patch should
2937 be applied to.
2938 properties:
2939 patch:
2940 description: |-
2941 Patch contains an inline StrategicMerge patch or an inline JSON6902 patch with
2942 an array of operation objects.
2943 type: string
2944 target:
2945 description: Target points to the resources that the
2946 patch document should be applied to.
2947 properties:
2948 annotationSelector:
2949 description: |-
2950 AnnotationSelector is a string that follows the label selection expression
2951 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2952 It matches with the resource annotations.
2953 type: string
2954 group:
2955 description: |-
2956 Group is the API group to select resources from.
2957 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
2958 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2959 type: string
2960 kind:
2961 description: |-
2962 Kind of the API Group to select resources from.
2963 Together with Group and Version it is capable of unambiguously
2964 identifying and/or selecting resources.
2965 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2966 type: string
2967 labelSelector:
2968 description: |-
2969 LabelSelector is a string that follows the label selection expression
2970 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
2971 It matches with the resource labels.
2972 type: string
2973 name:
2974 description: Name to match resources with.
2975 type: string
2976 namespace:
2977 description: Namespace to select resources from.
2978 type: string
2979 version:
2980 description: |-
2981 Version of the API Group to select resources from.
2982 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
2983 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
2984 type: string
2985 type: object
2986 required:
2987 - patch
2988 type: object
2989 type: array
2990 patchesJson6902:
2991 description: |-
2992 JSON 6902 patches, defined as inline YAML objects.
2993 Deprecated: use Patches instead.
2994 items:
2995 description: JSON6902Patch contains a JSON6902 patch and
2996 the target the patch should be applied to.
2997 properties:
2998 patch:
2999 description: Patch contains the JSON6902 patch document
3000 with an array of operation objects.
3001 items:
3002 description: |-
3003 JSON6902 is a JSON6902 operation object.
3004 https://datatracker.ietf.org/doc/html/rfc6902#section-4
3005 properties:
3006 from:
3007 description: |-
3008 From contains a JSON-pointer value that references a location within the target document where the operation is
3009 performed. The meaning of the value depends on the value of Op, and is NOT taken into account by all operations.
3010 type: string
3011 op:
3012 description: |-
3013 Op indicates the operation to perform. Its value MUST be one of "add", "remove", "replace", "move", "copy", or
3014 "test".
3015 https://datatracker.ietf.org/doc/html/rfc6902#section-4
3016 enum:
3017 - test
3018 - remove
3019 - add
3020 - replace
3021 - move
3022 - copy
3023 type: string
3024 path:
3025 description: |-
3026 Path contains the JSON-pointer value that references a location within the target document where the operation
3027 is performed. The meaning of the value depends on the value of Op.
3028 type: string
3029 value:
3030 description: |-
3031 Value contains a valid JSON structure. The meaning of the value depends on the value of Op, and is NOT taken into
3032 account by all operations.
3033 x-kubernetes-preserve-unknown-fields: true
3034 required:
3035 - op
3036 - path
3037 type: object
3038 type: array
3039 target:
3040 description: Target points to the resources that the
3041 patch document should be applied to.
3042 properties:
3043 annotationSelector:
3044 description: |-
3045 AnnotationSelector is a string that follows the label selection expression
3046 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
3047 It matches with the resource annotations.
3048 type: string
3049 group:
3050 description: |-
3051 Group is the API group to select resources from.
3052 Together with Version and Kind it is capable of unambiguously identifying and/or selecting resources.
3053 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
3054 type: string
3055 kind:
3056 description: |-
3057 Kind of the API Group to select resources from.
3058 Together with Group and Version it is capable of unambiguously
3059 identifying and/or selecting resources.
3060 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
3061 type: string
3062 labelSelector:
3063 description: |-
3064 LabelSelector is a string that follows the label selection expression
3065 https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#api
3066 It matches with the resource labels.
3067 type: string
3068 name:
3069 description: Name to match resources with.
3070 type: string
3071 namespace:
3072 description: Namespace to select resources from.
3073 type: string
3074 version:
3075 description: |-
3076 Version of the API Group to select resources from.
3077 Together with Group and Kind it is capable of unambiguously identifying and/or selecting resources.
3078 https://github.com/kubernetes/community/blob/master/contributors/design-proposals/api-machinery/api-group.md
3079 type: string
3080 type: object
3081 required:
3082 - patch
3083 - target
3084 type: object
3085 type: array
3086 patchesStrategicMerge:
3087 description: |-
3088 Strategic merge patches, defined as inline YAML objects.
3089 Deprecated: use Patches instead.
3090 items:
3091 x-kubernetes-preserve-unknown-fields: true
3092 type: array
3093 type: object
3094 type: object
3095 type: array
3096 releaseName:
3097 description: |-
3098 ReleaseName used for the Helm release. Defaults to a composition of
3099 '[TargetNamespace-]Name'.
3100 maxLength: 53
3101 minLength: 1
3102 type: string
3103 rollback:
3104 description: Rollback holds the configuration for Helm rollback actions
3105 for this HelmRelease.
3106 properties:
3107 cleanupOnFail:
3108 description: |-
3109 CleanupOnFail allows deletion of new resources created during the Helm
3110 rollback action when it fails.
3111 type: boolean
3112 disableHooks:
3113 description: DisableHooks prevents hooks from running during the
3114 Helm rollback action.
3115 type: boolean
3116 disableWait:
3117 description: |-
3118 DisableWait disables the waiting for resources to be ready after a Helm
3119 rollback has been performed.
3120 type: boolean
3121 disableWaitForJobs:
3122 description: |-
3123 DisableWaitForJobs disables waiting for jobs to complete after a Helm
3124 rollback has been performed.
3125 type: boolean
3126 force:
3127 description: Force forces resource updates through a replacement
3128 strategy.
3129 type: boolean
3130 recreate:
3131 description: Recreate performs pod restarts for the resource if
3132 applicable.
3133 type: boolean
3134 timeout:
3135 description: |-
3136 Timeout is the time to wait for any individual Kubernetes operation (like
3137 Jobs for hooks) during the performance of a Helm rollback action. Defaults to
3138 'HelmReleaseSpec.Timeout'.
3139 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
3140 type: string
3141 type: object
3142 serviceAccountName:
3143 description: |-
3144 The name of the Kubernetes service account to impersonate
3145 when reconciling this HelmRelease.
3146 maxLength: 253
3147 minLength: 1
3148 type: string
3149 storageNamespace:
3150 description: |-
3151 StorageNamespace used for the Helm storage.
3152 Defaults to the namespace of the HelmRelease.
3153 maxLength: 63
3154 minLength: 1
3155 type: string
3156 suspend:
3157 description: |-
3158 Suspend tells the controller to suspend reconciliation for this HelmRelease,
3159 it does not apply to already started reconciliations. Defaults to false.
3160 type: boolean
3161 targetNamespace:
3162 description: |-
3163 TargetNamespace to target when performing operations for the HelmRelease.
3164 Defaults to the namespace of the HelmRelease.
3165 maxLength: 63
3166 minLength: 1
3167 type: string
3168 test:
3169 description: Test holds the configuration for Helm test actions for
3170 this HelmRelease.
3171 properties:
3172 enable:
3173 description: |-
3174 Enable enables Helm test actions for this HelmRelease after an Helm install
3175 or upgrade action has been performed.
3176 type: boolean
3177 filters:
3178 description: Filters is a list of tests to run or exclude from
3179 running.
3180 items:
3181 description: Filter holds the configuration for individual Helm
3182 test filters.
3183 properties:
3184 exclude:
3185 description: Exclude specifies whether the named test should
3186 be excluded.
3187 type: boolean
3188 name:
3189 description: Name is the name of the test.
3190 maxLength: 253
3191 minLength: 1
3192 type: string
3193 required:
3194 - name
3195 type: object
3196 type: array
3197 ignoreFailures:
3198 description: |-
3199 IgnoreFailures tells the controller to skip remediation when the Helm tests
3200 are run but fail. Can be overwritten for tests run after install or upgrade
3201 actions in 'Install.IgnoreTestFailures' and 'Upgrade.IgnoreTestFailures'.
3202 type: boolean
3203 timeout:
3204 description: |-
3205 Timeout is the time to wait for any individual Kubernetes operation during
3206 the performance of a Helm test action. Defaults to 'HelmReleaseSpec.Timeout'.
3207 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
3208 type: string
3209 type: object
3210 timeout:
3211 description: |-
3212 Timeout is the time to wait for any individual Kubernetes operation (like Jobs
3213 for hooks) during the performance of a Helm action. Defaults to '5m0s'.
3214 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
3215 type: string
3216 uninstall:
3217 description: Uninstall holds the configuration for Helm uninstall
3218 actions for this HelmRelease.
3219 properties:
3220 deletionPropagation:
3221 default: background
3222 description: |-
3223 DeletionPropagation specifies the deletion propagation policy when
3224 a Helm uninstall is performed.
3225 enum:
3226 - background
3227 - foreground
3228 - orphan
3229 type: string
3230 disableHooks:
3231 description: DisableHooks prevents hooks from running during the
3232 Helm rollback action.
3233 type: boolean
3234 disableWait:
3235 description: |-
3236 DisableWait disables waiting for all the resources to be deleted after
3237 a Helm uninstall is performed.
3238 type: boolean
3239 keepHistory:
3240 description: |-
3241 KeepHistory tells Helm to remove all associated resources and mark the
3242 release as deleted, but retain the release history.
3243 type: boolean
3244 timeout:
3245 description: |-
3246 Timeout is the time to wait for any individual Kubernetes operation (like
3247 Jobs for hooks) during the performance of a Helm uninstall action. Defaults
3248 to 'HelmReleaseSpec.Timeout'.
3249 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
3250 type: string
3251 type: object
3252 upgrade:
3253 description: Upgrade holds the configuration for Helm upgrade actions
3254 for this HelmRelease.
3255 properties:
3256 cleanupOnFail:
3257 description: |-
3258 CleanupOnFail allows deletion of new resources created during the Helm
3259 upgrade action when it fails.
3260 type: boolean
3261 crds:
3262 description: |-
3263 CRDs upgrade CRDs from the Helm Chart's crds directory according
3264 to the CRD upgrade policy provided here. Valid values are `Skip`,
3265 `Create` or `CreateReplace`. Default is `Skip` and if omitted
3266 CRDs are neither installed nor upgraded.
3267
3268 Skip: do neither install nor replace (update) any CRDs.
3269
3270 Create: new CRDs are created, existing CRDs are neither updated nor deleted.
3271
3272 CreateReplace: new CRDs are created, existing CRDs are updated (replaced)
3273 but not deleted.
3274
3275 By default, CRDs are not applied during Helm upgrade action. With this
3276 option users can opt-in to CRD upgrade, which is not (yet) natively supported by Helm.
3277 https://helm.sh/docs/chart_best_practices/custom_resource_definitions.
3278 enum:
3279 - Skip
3280 - Create
3281 - CreateReplace
3282 type: string
3283 disableHooks:
3284 description: DisableHooks prevents hooks from running during the
3285 Helm upgrade action.
3286 type: boolean
3287 disableOpenAPIValidation:
3288 description: |-
3289 DisableOpenAPIValidation prevents the Helm upgrade action from validating
3290 rendered templates against the Kubernetes OpenAPI Schema.
3291 type: boolean
3292 disableWait:
3293 description: |-
3294 DisableWait disables the waiting for resources to be ready after a Helm
3295 upgrade has been performed.
3296 type: boolean
3297 disableWaitForJobs:
3298 description: |-
3299 DisableWaitForJobs disables waiting for jobs to complete after a Helm
3300 upgrade has been performed.
3301 type: boolean
3302 force:
3303 description: Force forces resource updates through a replacement
3304 strategy.
3305 type: boolean
3306 preserveValues:
3307 description: |-
3308 PreserveValues will make Helm reuse the last release's values and merge in
3309 overrides from 'Values'. Setting this flag makes the HelmRelease
3310 non-declarative.
3311 type: boolean
3312 remediation:
3313 description: |-
3314 Remediation holds the remediation configuration for when the Helm upgrade
3315 action for the HelmRelease fails. The default is to not perform any action.
3316 properties:
3317 ignoreTestFailures:
3318 description: |-
3319 IgnoreTestFailures tells the controller to skip remediation when the Helm
3320 tests are run after an upgrade action but fail.
3321 Defaults to 'Test.IgnoreFailures'.
3322 type: boolean
3323 remediateLastFailure:
3324 description: |-
3325 RemediateLastFailure tells the controller to remediate the last failure, when
3326 no retries remain. Defaults to 'false' unless 'Retries' is greater than 0.
3327 type: boolean
3328 retries:
3329 description: |-
3330 Retries is the number of retries that should be attempted on failures before
3331 bailing. Remediation, using 'Strategy', is performed between each attempt.
3332 Defaults to '0', a negative integer equals to unlimited retries.
3333 type: integer
3334 strategy:
3335 description: Strategy to use for failure remediation. Defaults
3336 to 'rollback'.
3337 enum:
3338 - rollback
3339 - uninstall
3340 type: string
3341 type: object
3342 timeout:
3343 description: |-
3344 Timeout is the time to wait for any individual Kubernetes operation (like
3345 Jobs for hooks) during the performance of a Helm upgrade action. Defaults to
3346 'HelmReleaseSpec.Timeout'.
3347 pattern: ^([0-9]+(\.[0-9]+)?(ms|s|m|h))+$
3348 type: string
3349 type: object
3350 values:
3351 description: Values holds the values for this Helm release.
3352 x-kubernetes-preserve-unknown-fields: true
3353 valuesFrom:
3354 description: |-
3355 ValuesFrom holds references to resources containing Helm values for this HelmRelease,
3356 and information about how they should be merged.
3357 items:
3358 description: |-
3359 ValuesReference contains a reference to a resource containing Helm values,
3360 and optionally the key they can be found at.
3361 properties:
3362 kind:
3363 description: Kind of the values referent, valid values are ('Secret',
3364 'ConfigMap').
3365 enum:
3366 - Secret
3367 - ConfigMap
3368 type: string
3369 name:
3370 description: |-
3371 Name of the values referent. Should reside in the same namespace as the
3372 referring resource.
3373 maxLength: 253
3374 minLength: 1
3375 type: string
3376 optional:
3377 description: |-
3378 Optional marks this ValuesReference as optional. When set, a not found error
3379 for the values reference is ignored, but any ValuesKey, TargetPath or
3380 transient error will still result in a reconciliation failure.
3381 type: boolean
3382 targetPath:
3383 description: |-
3384 TargetPath is the YAML dot notation path the value should be merged at. When
3385 set, the ValuesKey is expected to be a single flat value. Defaults to 'None',
3386 which results in the values getting merged at the root.
3387 maxLength: 250
3388 pattern: ^([a-zA-Z0-9_\-.\\\/]|\[[0-9]{1,5}\])+$
3389 type: string
3390 valuesKey:
3391 description: |-
3392 ValuesKey is the data key where the values.yaml or a specific value can be
3393 found at. Defaults to 'values.yaml'.
3394 maxLength: 253
3395 pattern: ^[\-._a-zA-Z0-9]+$
3396 type: string
3397 required:
3398 - kind
3399 - name
3400 type: object
3401 type: array
3402 required:
3403 - interval
3404 type: object
3405 x-kubernetes-validations:
3406 - message: either chart or chartRef must be set
3407 rule: (has(self.chart) && !has(self.chartRef)) || (!has(self.chart)
3408 && has(self.chartRef))
3409 status:
3410 default:
3411 observedGeneration: -1
3412 description: HelmReleaseStatus defines the observed state of a HelmRelease.
3413 properties:
3414 conditions:
3415 description: Conditions holds the conditions for the HelmRelease.
3416 items:
3417 description: Condition contains details for one aspect of the current
3418 state of this API Resource.
3419 properties:
3420 lastTransitionTime:
3421 description: |-
3422 lastTransitionTime is the last time the condition transitioned from one status to another.
3423 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
3424 format: date-time
3425 type: string
3426 message:
3427 description: |-
3428 message is a human readable message indicating details about the transition.
3429 This may be an empty string.
3430 maxLength: 32768
3431 type: string
3432 observedGeneration:
3433 description: |-
3434 observedGeneration represents the .metadata.generation that the condition was set based upon.
3435 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
3436 with respect to the current state of the instance.
3437 format: int64
3438 minimum: 0
3439 type: integer
3440 reason:
3441 description: |-
3442 reason contains a programmatic identifier indicating the reason for the condition's last transition.
3443 Producers of specific condition types may define expected values and meanings for this field,
3444 and whether the values are considered a guaranteed API.
3445 The value should be a CamelCase string.
3446 This field may not be empty.
3447 maxLength: 1024
3448 minLength: 1
3449 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
3450 type: string
3451 status:
3452 description: status of the condition, one of True, False, Unknown.
3453 enum:
3454 - "True"
3455 - "False"
3456 - Unknown
3457 type: string
3458 type:
3459 description: type of condition in CamelCase or in foo.example.com/CamelCase.
3460 maxLength: 316
3461 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
3462 type: string
3463 required:
3464 - lastTransitionTime
3465 - message
3466 - reason
3467 - status
3468 - type
3469 type: object
3470 type: array
3471 failures:
3472 description: |-
3473 Failures is the reconciliation failure count against the latest desired
3474 state. It is reset after a successful reconciliation.
3475 format: int64
3476 type: integer
3477 helmChart:
3478 description: |-
3479 HelmChart is the namespaced name of the HelmChart resource created by
3480 the controller for the HelmRelease.
3481 type: string
3482 history:
3483 description: |-
3484 History holds the history of Helm releases performed for this HelmRelease
3485 up to the last successfully completed release.
3486 items:
3487 description: |-
3488 Snapshot captures a point-in-time copy of the status information for a Helm release,
3489 as managed by the controller.
3490 properties:
3491 apiVersion:
3492 description: |-
3493 APIVersion is the API version of the Snapshot.
3494 Provisional: when the calculation method of the Digest field is changed,
3495 this field will be used to distinguish between the old and new methods.
3496 type: string
3497 appVersion:
3498 description: AppVersion is the chart app version of the release
3499 object in storage.
3500 type: string
3501 chartName:
3502 description: ChartName is the chart name of the release object
3503 in storage.
3504 type: string
3505 chartVersion:
3506 description: |-
3507 ChartVersion is the chart version of the release object in
3508 storage.
3509 type: string
3510 configDigest:
3511 description: |-
3512 ConfigDigest is the checksum of the config (better known as
3513 "values") of the release object in storage.
3514 It has the format of `<algo>:<checksum>`.
3515 type: string
3516 deleted:
3517 description: Deleted is when the release was deleted.
3518 format: date-time
3519 type: string
3520 digest:
3521 description: |-
3522 Digest is the checksum of the release object in storage.
3523 It has the format of `<algo>:<checksum>`.
3524 type: string
3525 firstDeployed:
3526 description: FirstDeployed is when the release was first deployed.
3527 format: date-time
3528 type: string
3529 lastDeployed:
3530 description: LastDeployed is when the release was last deployed.
3531 format: date-time
3532 type: string
3533 name:
3534 description: Name is the name of the release.
3535 type: string
3536 namespace:
3537 description: Namespace is the namespace the release is deployed
3538 to.
3539 type: string
3540 ociDigest:
3541 description: OCIDigest is the digest of the OCI artifact associated
3542 with the release.
3543 type: string
3544 status:
3545 description: Status is the current state of the release.
3546 type: string
3547 testHooks:
3548 additionalProperties:
3549 description: |-
3550 TestHookStatus holds the status information for a test hook as observed
3551 to be run by the controller.
3552 properties:
3553 lastCompleted:
3554 description: LastCompleted is the time the test hook last
3555 completed.
3556 format: date-time
3557 type: string
3558 lastStarted:
3559 description: LastStarted is the time the test hook was
3560 last started.
3561 format: date-time
3562 type: string
3563 phase:
3564 description: Phase the test hook was observed to be in.
3565 type: string
3566 type: object
3567 description: |-
3568 TestHooks is the list of test hooks for the release as observed to be
3569 run by the controller.
3570 type: object
3571 version:
3572 description: Version is the version of the release object in
3573 storage.
3574 type: integer
3575 required:
3576 - chartName
3577 - chartVersion
3578 - configDigest
3579 - digest
3580 - firstDeployed
3581 - lastDeployed
3582 - name
3583 - namespace
3584 - status
3585 - version
3586 type: object
3587 type: array
3588 installFailures:
3589 description: |-
3590 InstallFailures is the install failure count against the latest desired
3591 state. It is reset after a successful reconciliation.
3592 format: int64
3593 type: integer
3594 lastAppliedRevision:
3595 description: |-
3596 LastAppliedRevision is the revision of the last successfully applied
3597 source.
3598 Deprecated: the revision can now be found in the History.
3599 type: string
3600 lastAttemptedConfigDigest:
3601 description: |-
3602 LastAttemptedConfigDigest is the digest for the config (better known as
3603 "values") of the last reconciliation attempt.
3604 type: string
3605 lastAttemptedGeneration:
3606 description: |-
3607 LastAttemptedGeneration is the last generation the controller attempted
3608 to reconcile.
3609 format: int64
3610 type: integer
3611 lastAttemptedReleaseAction:
3612 description: |-
3613 LastAttemptedReleaseAction is the last release action performed for this
3614 HelmRelease. It is used to determine the active remediation strategy.
3615 enum:
3616 - install
3617 - upgrade
3618 type: string
3619 lastAttemptedRevision:
3620 description: |-
3621 LastAttemptedRevision is the Source revision of the last reconciliation
3622 attempt. For OCIRepository sources, the 12 first characters of the digest are
3623 appended to the chart version e.g. "1.2.3+1234567890ab".
3624 type: string
3625 lastAttemptedRevisionDigest:
3626 description: |-
3627 LastAttemptedRevisionDigest is the digest of the last reconciliation attempt.
3628 This is only set for OCIRepository sources.
3629 type: string
3630 lastAttemptedValuesChecksum:
3631 description: |-
3632 LastAttemptedValuesChecksum is the SHA1 checksum for the values of the last
3633 reconciliation attempt.
3634 Deprecated: Use LastAttemptedConfigDigest instead.
3635 type: string
3636 lastHandledForceAt:
3637 description: |-
3638 LastHandledForceAt holds the value of the most recent force request
3639 value, so a change of the annotation value can be detected.
3640 type: string
3641 lastHandledReconcileAt:
3642 description: |-
3643 LastHandledReconcileAt holds the value of the most recent
3644 reconcile request value, so a change of the annotation value
3645 can be detected.
3646 type: string
3647 lastHandledResetAt:
3648 description: |-
3649 LastHandledResetAt holds the value of the most recent reset request
3650 value, so a change of the annotation value can be detected.
3651 type: string
3652 lastReleaseRevision:
3653 description: |-
3654 LastReleaseRevision is the revision of the last successful Helm release.
3655 Deprecated: Use History instead.
3656 type: integer
3657 observedGeneration:
3658 description: ObservedGeneration is the last observed generation.
3659 format: int64
3660 type: integer
3661 observedPostRenderersDigest:
3662 description: |-
3663 ObservedPostRenderersDigest is the digest for the post-renderers of
3664 the last successful reconciliation attempt.
3665 type: string
3666 storageNamespace:
3667 description: |-
3668 StorageNamespace is the namespace of the Helm release storage for the
3669 current release.
3670 maxLength: 63
3671 minLength: 1
3672 type: string
3673 upgradeFailures:
3674 description: |-
3675 UpgradeFailures is the upgrade failure count against the latest desired
3676 state. It is reset after a successful reconciliation.
3677 format: int64
3678 type: integer
3679 type: object
3680 type: object
3681 served: true
3682 storage: false
3683 subresources:
3684 status: {}
3685---
3686apiVersion: v1
3687kind: ServiceAccount
3688metadata:
3689 labels:
3690 app.kubernetes.io/component: helm-controller
3691 app.kubernetes.io/part-of: flux
3692 name: helm-controller
3693---
3694apiVersion: apps/v1
3695kind: Deployment
3696metadata:
3697 labels:
3698 app.kubernetes.io/component: helm-controller
3699 app.kubernetes.io/part-of: flux
3700 control-plane: controller
3701 name: helm-controller
3702spec:
3703 replicas: 1
3704 selector:
3705 matchLabels:
3706 app: helm-controller
3707 template:
3708 metadata:
3709 annotations:
3710 prometheus.io/port: "8080"
3711 prometheus.io/scrape: "true"
3712 labels:
3713 app: helm-controller
3714 spec:
3715 containers:
3716 - args:
3717 - --events-addr=http://notification-controller.flux-system.svc.cluster.local./
3718 - --watch-all-namespaces
3719 - --log-level=info
3720 - --log-encoding=json
3721 - --enable-leader-election
3722 env:
3723 - name: RUNTIME_NAMESPACE
3724 valueFrom:
3725 fieldRef:
3726 fieldPath: metadata.namespace
3727 - name: GOMAXPROCS
3728 valueFrom:
3729 resourceFieldRef:
3730 containerName: manager
3731 resource: limits.cpu
3732 - name: GOMEMLIMIT
3733 valueFrom:
3734 resourceFieldRef:
3735 containerName: manager
3736 resource: limits.memory
3737 image: fluxcd/helm-controller:v1.1.0
3738 imagePullPolicy: IfNotPresent
3739 livenessProbe:
3740 httpGet:
3741 path: /healthz
3742 port: healthz
3743 name: manager
3744 ports:
3745 - containerPort: 8080
3746 name: http-prom
3747 protocol: TCP
3748 - containerPort: 9440
3749 name: healthz
3750 protocol: TCP
3751 readinessProbe:
3752 httpGet:
3753 path: /readyz
3754 port: healthz
3755 resources:
3756 limits:
3757 cpu: 1000m
3758 memory: 1Gi
3759 requests:
3760 cpu: 50m
3761 memory: 64Mi
3762 securityContext:
3763 allowPrivilegeEscalation: false
3764 capabilities:
3765 drop:
3766 - ALL
3767 readOnlyRootFilesystem: true
3768 runAsNonRoot: true
3769 seccompProfile:
3770 type: RuntimeDefault
3771 volumeMounts:
3772 - mountPath: /tmp
3773 name: temp
3774 priorityClassName: system-cluster-critical
3775 securityContext:
3776 fsGroup: 1337
3777 serviceAccountName: helm-controller
3778 terminationGracePeriodSeconds: 600
3779 volumes:
3780 - emptyDir: {}
3781 name: temp
View as plain text