From 1a8798a5d43657977b553091976d03b58dea9046 Mon Sep 17 00:00:00 2001 From: Stefan Prodan Date: Mon, 3 Jul 2023 14:58:01 +0300 Subject: [PATCH] Link to release cadence from minor section Signed-off-by: Stefan Prodan --- docs/release/controllers.md | 23 ++++++++++++----------- docs/release/flux.md | 12 ++++++++---- docs/release/procedure.md | 9 ++++----- 3 files changed, 24 insertions(+), 20 deletions(-) diff --git a/docs/release/controllers.md b/docs/release/controllers.md index cfcccf18..1459fa22 100644 --- a/docs/release/controllers.md +++ b/docs/release/controllers.md @@ -99,14 +99,9 @@ Note that breaking changes may occur if required by a security vulnerability fix In addition, minor releases are used when updating Kubernetes dependencies such as `k8s.io/api` from one minor version to another. -In effect, this means a new minor version will at least be released for all Flux -controllers approximately every four months, following each Kubernetes minor version release. -To properly validate the controllers against the latest Kubernetes version, -we typically allocate a time window of around two weeks for end-to-end testing of Flux controllers. - -It is worth noting that in certain scenarios where project dependencies are not in sync with -the Kubernetes version or conflicts arise, this two-week timeframe may prove insufficient, -requiring additional time to address the issues appropriately. +In effect, this means a controller minor version will be released at least every four months, after each +Kubernetes minor version release. For in-depth information about this, please refer to the +[release cadence](#release-cadence) section of this document. ### Major releases @@ -117,11 +112,17 @@ and a support window of one year will be provided for the previous major version ## Release cadence -Flux controllers are at least released at the same rate as Kubernetes, following their cadence of three -minor releases per year. After each Kubernetes minor release, all controllers are tested against the latest -Kubernetes version and then released approximately two weeks after Kubernetes. +Flux controllers are _at least_ released at the same rate as Kubernetes, following their cadence of three +minor releases per year. + +To properly validate the controllers against the latest Kubernetes version, +we typically allocate a time window of around two weeks for end-to-end testing of Flux controllers. The newly released controllers offer support for Kubernetes N-2 minor versions. +It is worth noting that in certain scenarios where project dependencies are not in sync with +the Kubernetes version or conflicts arise, this two-week timeframe may prove insufficient, +requiring additional time to address the issues appropriately. + A Flux controller may have more than three minor releases per year, if maintainers decide to ship a new feature or optimisation ahead of schedule. diff --git a/docs/release/flux.md b/docs/release/flux.md index 508f75a5..c030392d 100644 --- a/docs/release/flux.md +++ b/docs/release/flux.md @@ -42,9 +42,9 @@ Note that breaking changes may occur if required by a security vulnerability fix Minor releases are used when updating the Flux controllers or Kubernetes dependencies from one minor version to another. -In effect, this means a Flux minor version will be released at least every four months after each -Kubernetes minor version release. To properly validate the Flux CLI and controllers against -the latest Kubernetes version, we reserve a time window of at least two weeks for end-to-end testing. +In effect, this means a Flux minor version will be released at least every four months, after each +Kubernetes minor version release. For in-depth information about this, please refer to the +[release cadence](#release-cadence) section of this document. ### Major releases @@ -55,11 +55,15 @@ and a support window of one year will be provided for the previous major version ## Release cadence -Flux is at least released at the same rate as Kubernetes, following their cadence of three +Flux is _at least_ released at the same rate as Kubernetes, following their cadence of three minor releases per year. After each Kubernetes minor release, the CLI and all controllers are tested against the latest Kubernetes version and are released approximately two weeks after Kubernetes. The newly released Flux version offers support for Kubernetes N-2 minor versions. +It is worth noting that in certain scenarios where project dependencies are not in sync with +the Kubernetes version or conflicts arise, this two-week timeframe may prove insufficient, +requiring additional time to address the issues appropriately. + Flux may have more than three minor releases per year if maintainers decide to ship a new feature or optimization ahead of schedule. diff --git a/docs/release/procedure.md b/docs/release/procedure.md index b9b2f07b..084340e6 100644 --- a/docs/release/procedure.md +++ b/docs/release/procedure.md @@ -216,12 +216,12 @@ In some cases, it may be necessary to release a [release candidate](controllers.md#release-candidates) of a controller. To create a first release candidate, follow the steps to create a [minor -release](#controller-minor-releases), but use the `rc.X` suffix for SemVer +release](#controllers-minor-releases), but use the `rc.X` suffix for SemVer version to release (e.g., `v1.2.0-rc.1`). Once the release series branch is created, subsequent release candidates and the final (non-RC) release should follow the procedure for [patch controller -releases](#controller-patch-releases). +releases](#controllers-patch-releases). #### Controllers: preview releases @@ -331,13 +331,12 @@ release](#distribution-minor-releases), but use the `rc.X` suffix for SemVer version to release (e.g., `v2.2.0-rc.1`). Once the release series branch is created, subsequent release candidates and -the final (non-RC) release should follow the procedure for [patch controller -releases](#controller-patch-releases). +the final (non-RC) release should follow the procedure for [patch releases](#distribution-patch-releases). #### Distribution: release notes The release notes template for Flux distributions is available in the -[release-notes-template.md](release-notes-template.md) file. +[release-notes-template.md](https://github.com/fluxcd/flux2/blob/main/docs/release/release-notes-template.md) file. ## Backport changes for patch releases