Commit Graph

164 Commits

Author SHA1 Message Date
Soule BA 4b6febf48c
Add test cases for Summarize() and DetermineReleaseState()
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-05-07 23:13:47 +02:00
Soule BA 4069ad47e9
A better implementation for observing Postrenderers
This implementation update `.status.ObervedPostRenderersDigest` after a
successful reconciliation if `spec.postRenderers` is not nil.

Changes to `spec.postRenderers` are detected for `deployed` releases.
`Failed` and `Uninstalled` releases are detected earlier in the
reconciliation process.

Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-05-07 14:17:17 +02:00
Soule BA e58a102de9
document lastAttemptedPostRenderersDigest behavior
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-05-07 11:59:23 +02:00
Soule BA aa70ac2b31
fix: detect changes in spec.postRenderers
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-05-07 11:57:52 +02:00
Stefan Prodan 863d3115f3
Add app version to CRD manifests
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-07 12:18:20 +03:00
Stefan Prodan 17633702fa
Add event example to API docs
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-07 08:23:22 +03:00
Stefan Prodan 7f78cdc368
Add the chart app version to events metadata
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-07 00:14:55 +03:00
Stefan Prodan 92ec780c98
Update API version in comments and docs
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-06 11:46:16 +03:00
Stefan Prodan f04e393645
docs: Add `layerSelector` to OCIRepository example
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-04 19:38:14 +03:00
Stefan Prodan 42fe4a39c1
Remove deprecated `patchesStrategicMerge` and `patchesJson6902` from v2 API
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-04 12:41:24 +03:00
Stefan Prodan 64d1236c17
Remove deprecated `.status.lastAppliedRevision` from v2 API
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-04 12:24:33 +03:00
Stefan Prodan 2cbd2bd944
Remove deprecated `.spec.valuesFile` from v2 API
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-04 12:24:32 +03:00
Stefan Prodan 23f2ebe86d
Update copyright year (GA API)
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-03 17:35:01 +03:00
Stefan Prodan f76d6fe026
Update samples to GA APIs
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-03 17:12:22 +03:00
Stefan Prodan c9c0beb261
Add API docs for `HelmRelease` v2
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-03 16:30:58 +03:00
Stefan Prodan 00785fbfa3
Promote `HelmRelease` API to v2 (GA)
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2024-05-03 16:25:14 +03:00
Robin Breathe bca7983d77
feat(HelmChartTemplateSpec): optionally ignore missing valuesFiles
Signed-off-by: Robin Breathe <robin@isometry.net>
2024-05-03 14:01:20 +02:00
souleb 8b95f3509c
Update docs/spec/v2beta2/helmreleases.md
Co-authored-by: Stefan Prodan <stefan.prodan@gmail.com>
Signed-off-by: souleb <bah.soule@gmail.com>
2024-04-22 12:19:35 +02:00
Soule BA 1b5a62f5c9
document helmchart chart reference
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-22 11:26:57 +02:00
Soule BA 65a02c8c6c
Add a test when switching from chart template to chartRef
The test case successfully upgrade with the same chart because version
is not computed the same way (12 digits of digest appended for
OCIRepository source).

Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:07:41 +02:00
Soule BA edec322a3d
Take into account the oci-digest
This commit add the oci artifact digest into the release observed
snapshot. This is used to later to add that value as an annotation.

Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:07:41 +02:00
Soule BA 49b47d4c44
adding a section for chartRef in the doc
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:07:41 +02:00
Soule BA aeac55dba9
Adding 12 first character of digest to chart version
This is needed for an OCIRepository source in order to detect change for
mutable tags.

Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:07:41 +02:00
Soule BA d1d2d0002e
adding an upgrade from ocirepo test
Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:07:40 +02:00
Soule BA 20e14fe304
This commit enable reusing an existing OCIRepo as chartRef.
It takes into account switching from a chart
template to a referenced source (garbage collection).

Signed-off-by: Soule BA <bah.soule@gmail.com>
2024-04-18 13:05:04 +02:00
Hidde Beydals 504b268be8
docs/spec: address typo
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-13 08:52:04 +01:00
Hidde Beydals bb5a03bbfb
docs: various doc nits
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:51:58 +01:00
Hidde Beydals d8966cd8de
docs/spec: refer to v2beta2 doc for design details
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:57 +01:00
Hidde Beydals 344bd829ca
docs/spec/v2beta2: address review comment
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:56 +01:00
Hidde Beydals 302978f1b2
docs/spec/v2beta2: add Ready characteristics
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:55 +01:00
Hidde Beydals 9eefbf7e1a
docs/spec/v2beta2: address review comments
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:53 +01:00
Hidde Beydals 2b80e30560
docs: add notes about drift detection support
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:52 +01:00
Hidde Beydals 015eba09ed
docs/spec/v2beta2: add README
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:51 +01:00
Hidde Beydals 0075f20efb
docs/spec/v2beta2: rewrite intro
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:51 +01:00
Hidde Beydals 8a9acd6ce7
docs/spec/v2beta2: document Status Conditions
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:50 +01:00
Hidde Beydals 875e605ea9
docs/spec/v2beta2: explain example
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:50 +01:00
Hidde Beydals 04600fe15a
docs/spec/v2beta2: document most Status fields
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:50 +01:00
Hidde Beydals 99303f3e19
docs/spec/v2beta2: document debugging section
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:49 +01:00
Hidde Beydals 1b0e5d71f8
docs/spec/v2beta2: make note of release triggers
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:49 +01:00
Hidde Beydals aeef72abbf
docs/spec/v2beta2: add uninstall warnings
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:48 +01:00
Hidde Beydals d741525b2f
docs/spec/v2beta2: document remote clusters
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:48 +01:00
Hidde Beydals 2c48cf280f
docs/spec/v2beta2: document failure handling
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:47 +01:00
Hidde Beydals eca86919be
doc/spec/v2beta2: document CRD lifecycle
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:47 +01:00
Hidde Beydals f26749231e
docs/spec/v2beta2: document RBAC
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:47 +01:00
Hidde Beydals 436860f061
docs/spec: start documenting v2beta2
Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-11 18:28:46 +01:00
Hidde Beydals 35e914d159
api: deprecate stragic merge and JSON 6902 patches
They have been deprecated for a long time, and should be scheduled for
removal to ensure they can be removed in the final `v2` release.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-12-07 17:37:00 +01:00
Hidde Beydals 7a15000b4c
api: introduce `forceAt` and `resetAt` annotations
This introduces two new annotations:

- `reconcile.fluxcd.io/resetAt`: to reset the failure counts for a
  `HelmRelease` object.
- `reconcile.fluxcd.io/forceAt`: to allow a one-off Helm install or
  upgrade when the controller would otherwise do nothing (e.g. due to
  being out of retries, in-sync, in a failed state, etc.)

Both annotations require the `reconcile.fluxcd.io/requestedAt`
annotation to be set at the same time, with the same token value.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-11-30 10:22:48 +01:00
Hidde Beydals a5db99a88c
api: allow configuration of drift detection
This adds the option to enable drift detection for a specific
`HelmRelease` instance using `.spec.driftDetection.mode`.

Supported configurations are `enabled` (detect and correct), `warn`
(detect) and `disabled`.

In addition to this, it allows defining a set of ignore rules using
`.spec.driftDetection.ignore`. Which can be used to ignore (portions
of) a resource using JSON pointers and target selectors.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-11-24 13:33:32 +01:00
Hidde Beydals 580c72cd09
controller: adopt release based on v2beta1 state
This allows the controller to be updated from `v2beta1` to `v2beta2`
without triggering a release to settle state.

It does this by looking at the previous successful release as recorded
for the `v2beta1` object, and if found, recording a snapshot for it in
the new `History` field of the status.

This feature can be disabled by setting the `AdoptLegacyReleases`
feature flag to `false`.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-11-22 23:14:17 +01:00
Hidde Beydals 9bb8f02495
api: continue to record `LastAppliedRevision`
This ensures that certain UIs can continue to display information to
their users while they work on making better use of the new data
available in `v2beta2`.

Signed-off-by: Hidde Beydals <hidde@hhh.computer>
2023-11-21 15:31:30 +01:00