diff --git a/k8s/helm/durable-workflow/Chart.yaml b/k8s/helm/durable-workflow/Chart.yaml index 26b2bd45f..d6b34b225 100644 --- a/k8s/helm/durable-workflow/Chart.yaml +++ b/k8s/helm/durable-workflow/Chart.yaml @@ -5,11 +5,11 @@ type: application # The chart's own semver version. Bumped on every chart release; treated as # independent of the server image version (appVersion). Breaking-change rules # for this version live in docs/UPGRADING.md alongside the chart. -version: 1.2.0 +version: 1.3.0 # The immutable native Durable Workflow Server this chart release packages. # The onboarding default in values.yaml and appVersion are generated from the # checked-in source release record (helm_chart.app_version). -appVersion: "3.4.0" +appVersion: "3.5.0" kubeVersion: ">=1.27.0-0" home: https://durable-workflow.github.io/docs/2.0/deployment sources: @@ -30,12 +30,12 @@ annotations: # exact commit that most recently changed the packaged chart. org.opencontainers.image.source: https://github.com/durable-workflow/server dev.durable-workflow.source-revision: "unreleased" - dev.durable-workflow.image-reference: "docker.io/durableworkflow/server:3.4.0" + dev.durable-workflow.image-reference: "docker.io/durableworkflow/server:3.5.0" artifacthub.io/license: MIT artifacthub.io/category: integration-delivery # Free-form changelog for the current chart release shown by Artifact Hub. artifacthub.io/changes: | - - kind: added - description: "Native pods sleep native.preStopSleepSeconds (default 5, 0 disables) in a preStop hook before SIGTERM, so a rolling update drops no requests (server#608). native.terminationGracePeriodSeconds now defaults to 70 so worker polls still drain after the sleep; the chart refuses a grace period at or below the sleep plus DW_WORKER_POLL_TIMEOUT." - kind: changed - description: "Default image changes from native Server 3.3.2 to 3.4.0, which adds opt-in activity/workflow continuations. No schema upgrade from 3.3.x: MySQL, MariaDB and PostgreSQL stay at native schema 11. https://github.com/durable-workflow/server/releases/tag/3.4.0" + description: "Default image changes from native Server 3.4.0 to 3.5.0. Upgrading needs an explicit native schema upgrade: MySQL, MariaDB and PostgreSQL move from native schema 11 to 12 (a new native-only table, no row rewrites). Scale the Server to zero, back up the database, then run schema-upgrade with native.schemaUpgrade.enabled=true during helm upgrade or with the manual Job. Rolling back to 3.4.x means restoring the backup. See docs/UPGRADING.md." + - kind: added + description: "Server 3.5.0: updates for runs started before their worker registered now bind the worker's contract (server#962); sticky execution with history suffixes (server#1017); expired runs pruned every minute from the maintenance loop (server#633). https://github.com/durable-workflow/server/releases/tag/3.5.0" diff --git a/k8s/helm/durable-workflow/README.md b/k8s/helm/durable-workflow/README.md index 7354cbeb4..d8f83aeee 100644 --- a/k8s/helm/durable-workflow/README.md +++ b/k8s/helm/durable-workflow/README.md @@ -77,7 +77,7 @@ helm install durable-workflow ./k8s/helm/durable-workflow \ ```yaml image: - tag: "3.4.0" + tag: "3.5.0" # Pin a digest in production: # digest: "sha256:abc123..." diff --git a/k8s/helm/durable-workflow/docs/UPGRADING.md b/k8s/helm/durable-workflow/docs/UPGRADING.md index 52b9385da..47baaccce 100644 --- a/k8s/helm/durable-workflow/docs/UPGRADING.md +++ b/k8s/helm/durable-workflow/docs/UPGRADING.md @@ -69,6 +69,25 @@ chart MINOR bump and an entry below. ## Per-version migration notes +### Chart 1.3.0 / Server 3.5.0 (native) + +**This upgrade needs an explicit native schema upgrade.** Server 3.5.0 adds one +native-only table, so MySQL, MariaDB and PostgreSQL move from native schema 11 +to 12. The upgrade creates the table and its index and rewrites no rows. A +3.5.0 server refuses a schema-11 database with `native_schema_upgrade_required`. + +1. Scale the Server to zero. +2. Back up the database. +3. Run `helm upgrade` with `native.schemaUpgrade.enabled=true` (or the manual + schema-upgrade Job in the chart README) so the 3.5.0 image runs + `schema-upgrade` once. +4. Scale the Server back up. + +From Server 3.2.x or earlier, the same command also applies the earlier steps; +see Chart 1.1.0 below for those versions' notes. Rolling back to 3.4.x requires +restoring the backup taken in step 2. See the +[3.5.0 release notes](https://github.com/durable-workflow/server/releases/tag/3.5.0). + ### Chart 1.2.0 / Server 3.4.0 (native) No schema upgrade from Server 3.3.x: MySQL, MariaDB and PostgreSQL stay at diff --git a/k8s/helm/durable-workflow/values.yaml b/k8s/helm/durable-workflow/values.yaml index be43af34b..622c796f4 100644 --- a/k8s/helm/durable-workflow/values.yaml +++ b/k8s/helm/durable-workflow/values.yaml @@ -42,7 +42,7 @@ image: # scripts/ci/sync-source-release.mjs. Do not edit this default. # A tag must match the runtime: 3.x (or latest) for native, 2.x for php. # The chart refuses a mismatch at render time. - tag: "3.4.0" + tag: "3.5.0" # Optional digest pin. When set, takes precedence over tag for change control. # Example: "sha256:abc123..." # The chart cannot see which runtime a digest names. Pin a native digest diff --git a/resources/release/source-release.json b/resources/release/source-release.json index 7f308fb67..3124d2197 100644 --- a/resources/release/source-release.json +++ b/resources/release/source-release.json @@ -4,7 +4,7 @@ "version": "2.11.8" }, "helm_chart": { - "version": "1.2.0", - "app_version": "3.4.0" + "version": "1.3.0", + "app_version": "3.5.0" } }