@@ -418,6 +418,46 @@ spec:
418418 - disabled
419419 type : string
420420 type : object
421+ healthCheckExprs :
422+ description : |-
423+ HealthCheckExprs is a list of healthcheck expressions for evaluating the
424+ health of custom resources using Common Expression Language (CEL).
425+ The expressions are evaluated only when the specific Helm action
426+ taking place has wait enabled, i.e. DisableWait is false, and the
427+ 'poller' WaitStrategy is used.
428+ items :
429+ description : CustomHealthCheck defines the health
430+ check for custom resources.
431+ properties :
432+ apiVersion :
433+ description : APIVersion of the custom resource
434+ under evaluation.
435+ type : string
436+ current :
437+ description : |-
438+ Current is the CEL expression that determines if the status
439+ of the custom resource has reached the desired state.
440+ type : string
441+ failed :
442+ description : |-
443+ Failed is the CEL expression that determines if the status
444+ of the custom resource has failed to reach the desired state.
445+ type : string
446+ inProgress :
447+ description : |-
448+ InProgress is the CEL expression that determines if the status
449+ of the custom resource has not yet reached the desired state.
450+ type : string
451+ kind :
452+ description : Kind of the custom resource under
453+ evaluation.
454+ type : string
455+ required :
456+ - apiVersion
457+ - current
458+ - kind
459+ type : object
460+ type : array
421461 install :
422462 description : Install holds the configuration for Helm
423463 install actions for this HelmRelease.
@@ -508,6 +548,11 @@ spec:
508548 Replace tells the Helm install action to re-use the 'ReleaseName', but only
509549 if that name is a deleted release which remains in the history.
510550 type : boolean
551+ serverSideApply :
552+ description : |-
553+ ServerSideApply enables server-side apply for resources during install.
554+ Defaults to true (or false when UseHelm3Defaults feature gate is enabled).
555+ type : boolean
511556 skipCRDs :
512557 description : |-
513558 SkipCRDs tells the Helm install action to not install any CRDs. By default,
@@ -518,7 +563,8 @@ spec:
518563 strategy :
519564 description : |-
520565 Strategy defines the install strategy to use for this HelmRelease.
521- Defaults to 'RemediateOnFailure'.
566+ Defaults to 'RemediateOnFailure', or 'RetryOnFailure' when the
567+ DefaultToRetryOnFailure feature gate is enabled.
522568 properties :
523569 name :
524570 description : Name of the install strategy.
@@ -790,13 +836,35 @@ spec:
790836 rollback has been performed.
791837 type : boolean
792838 force :
793- description : Force forces resource updates through
794- a replacement strategy.
839+ description : |-
840+ Force forces resource updates through a replacement strategy
841+ that avoids 3-way merge conflicts on client-side apply.
842+ This field is ignored for server-side apply (which always
843+ forces conflicts with other field managers).
795844 type : boolean
796845 recreate :
797- description : Recreate performs pod restarts for
798- the resource if applicable.
846+ description : |-
847+ Recreate performs pod restarts for any managed workloads.
848+
849+ Deprecated: This behavior was deprecated in Helm 3:
850+ - Deprecation: https://github.com/helm/helm/pull/6463
851+ - Removal: https://github.com/helm/helm/pull/31023
852+ After helm-controller was upgraded to the Helm 4 SDK,
853+ this field is no longer functional and will print a
854+ warning if set to true. It will also be removed in a
855+ future release.
799856 type : boolean
857+ serverSideApply :
858+ description : |-
859+ ServerSideApply enables server-side apply for resources during rollback.
860+ Can be "enabled", "disabled", or "auto".
861+ When "auto", server-side apply usage will be based on the release's previous usage.
862+ Defaults to "auto".
863+ enum :
864+ - enabled
865+ - disabled
866+ - auto
867+ type : string
800868 timeout :
801869 description : |-
802870 Timeout is the time to wait for any individual Kubernetes operation (like
@@ -976,8 +1044,11 @@ spec:
9761044 upgrade has been performed.
9771045 type : boolean
9781046 force :
979- description : Force forces resource updates through
980- a replacement strategy.
1047+ description : |-
1048+ Force forces resource updates through a replacement strategy
1049+ that avoids 3-way merge conflicts on client-side apply.
1050+ This field is ignored for server-side apply (which always
1051+ forces conflicts with other field managers).
9811052 type : boolean
9821053 preserveValues :
9831054 description : |-
@@ -1015,10 +1086,22 @@ spec:
10151086 - uninstall
10161087 type : string
10171088 type : object
1089+ serverSideApply :
1090+ description : |-
1091+ ServerSideApply enables server-side apply for resources during upgrade.
1092+ Can be "enabled", "disabled", or "auto".
1093+ When "auto", server-side apply usage will be based on the release's previous usage.
1094+ Defaults to "auto".
1095+ enum :
1096+ - enabled
1097+ - disabled
1098+ - auto
1099+ type : string
10181100 strategy :
10191101 description : |-
10201102 Strategy defines the upgrade strategy to use for this HelmRelease.
1021- Defaults to 'RemediateOnFailure'.
1103+ Defaults to 'RemediateOnFailure', or 'RetryOnFailure' when the
1104+ DefaultToRetryOnFailure feature gate is enabled.
10221105 properties :
10231106 name :
10241107 description : Name of the upgrade strategy.
@@ -1101,6 +1184,26 @@ spec:
11011184 - name
11021185 type : object
11031186 type : array
1187+ waitStrategy :
1188+ description : |-
1189+ WaitStrategy defines Helm's wait strategy for waiting for applied
1190+ resources to become ready.
1191+ properties :
1192+ name :
1193+ description : |-
1194+ Name is Helm's wait strategy for waiting for applied resources to
1195+ become ready. One of 'poller' or 'legacy'. The 'poller' strategy uses
1196+ kstatus to poll resource statuses, while the 'legacy' strategy uses
1197+ Helm v3's waiting logic.
1198+ Defaults to 'poller', or to 'legacy' when UseHelm3Defaults feature
1199+ gate is enabled.
1200+ enum :
1201+ - poller
1202+ - legacy
1203+ type : string
1204+ required :
1205+ - name
1206+ type : object
11041207 required :
11051208 - interval
11061209 type : object
@@ -1194,11 +1297,15 @@ spec:
11941297 Snapshot captures a point-in-time copy of the status information for a Helm release,
11951298 as managed by the controller.
11961299 properties :
1300+ action :
1301+ description : Action is the action that resulted
1302+ in this snapshot being created.
1303+ type : string
11971304 apiVersion :
11981305 description : |-
11991306 APIVersion is the API version of the Snapshot.
1200- Provisional: when the calculation method of the Digest field is changed,
1201- this field will be used to distinguish between the old and new methods.
1307+ When the calculation method of the Digest field is changed, this
1308+ field will be used to distinguish between the old and new methods.
12021309 type : string
12031310 appVersion :
12041311 description : AppVersion is the chart app version
@@ -1301,6 +1408,35 @@ spec:
13011408 state. It is reset after a successful reconciliation.
13021409 format : int64
13031410 type : integer
1411+ inventory :
1412+ description : |-
1413+ Inventory contains the list of Kubernetes resource object references
1414+ that have been applied for this release.
1415+ properties :
1416+ entries :
1417+ description : Entries of Kubernetes resource object
1418+ references.
1419+ items :
1420+ description : ResourceRef contains the information
1421+ necessary to locate a resource within a cluster.
1422+ properties :
1423+ id :
1424+ description : |-
1425+ ID is the string representation of the Kubernetes resource object's metadata,
1426+ in the format '<namespace>_<name>_<group>_<kind>'.
1427+ type : string
1428+ v :
1429+ description : Version is the API version of
1430+ the Kubernetes resource object's kind.
1431+ type : string
1432+ required :
1433+ - id
1434+ - v
1435+ type : object
1436+ type : array
1437+ required :
1438+ - entries
1439+ type : object
13041440 lastAttemptedConfigDigest :
13051441 description : |-
13061442 LastAttemptedConfigDigest is the digest for the config (better known as
0 commit comments