You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Inject helm.sh/resource-policy: keep into each templated CRD via a
fromYaml/toYaml round-trip so the CRDs (and their custom resources) survive
helm uninstall and installCrds true->false, without touching the canonical
crd/ files. Document the pre-2.8 -> 2.8 adoption path (--take-ownership or
label/annotate) and the installCrds:false out-of-band option in the v2.8.1
release notes, and correct the v2.8.0 uninstall caveat.
Copy file name to clipboardExpand all lines: release-notes/v2.8.1.md
+41-2Lines changed: 41 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,10 +6,49 @@ This is a bug fix release, see [v2.8.0 release notes](https://github.com/restate
6
6
7
7
-**Fix: the release build now works with the Rust 1.95.0 toolchain** — the release Docker base image is bumped from `ghcr.io/restatedev/dev-tools:1.16.1` to `1.17.0`, which bakes the Rust 1.95.0 toolchain and its musl standard library needed by the musl cross-compile.
8
8
9
-
## Upgrading
9
+
-**Fix: templated CRDs are now retained on uninstall** — with the default `installCrds: true`, the chart's CRDs (`RestateCluster`, `RestateDeployment`, `RestateCloudEnvironment`) now carry the `helm.sh/resource-policy: keep` annotation. They are no longer deleted on `helm uninstall` or when switching to `installCrds: false`, so your custom resources are not cascade-deleted. This corrects the uninstall caveat noted in v2.8.0.
10
10
11
-
No CRD or functional changes in this release. Upgrade the operator via Helm:
11
+
## Upgrading an existing (<= 2.7) install
12
+
13
+
CRDs now retain across uninstall, but adopting a pre-2.8 install into the new templated CRDs needs one manual step the first time.
14
+
15
+
Chart versions <= 2.7 installed the CRDs via Helm's special `crds/` directory, which leaves no Helm ownership metadata on them. On the first upgrade to 2.8 with the default `installCrds: true`, Helm tries to take over those CRDs and aborts with an `invalid ownership metadata` error. Pick one of the following before (or during) the upgrade.
16
+
17
+
Option A — take ownership during the upgrade (requires Helm >= 3.17):
Once adopted, the CRDs update on every `helm upgrade` and, thanks to the retain policy, survive uninstall.
37
+
38
+
### Managing CRDs outside the chart
39
+
40
+
If you manage CRDs out-of-band (GitOps/ArgoCD, or as nuon-byoc vendors them), set `installCrds: false` instead. The chart then never touches the CRDs, so there is nothing to adopt. Apply the CRD manifests published as GitHub release artifacts yourself (`crd/restateclusters.yaml`, `crd/restatedeployments.yaml`, `crd/restatecloudenvironments.yaml`). This is the recommended path for external CRD management.
41
+
42
+
```yaml
43
+
installCrds: false
44
+
```
45
+
46
+
## Upgrading (new install or already on 2.8.0)
47
+
48
+
No CRD schema or functional changes since 2.8.0. Upgrade the operator via Helm:
With the default `installCrds: true`, the CRDs are applied as part of the upgrade. If you manage CRDs outside this chart, set `installCrds: false` and apply them yourself.
0 commit comments