|
10 | 10 | - [APIs](#apis)
|
11 | 11 | - [CLIs](#clis)
|
12 | 12 | - [Branches](#branches)
|
13 |
| - - [Support and guarantees](#support-and-guarantees) |
14 |
| - - [Removal of v1alpha3 & v1alpha4 apiVersions](#removal-of-v1alpha3--v1alpha4-apiversions) |
15 | 13 | - [Contributing a Patch](#contributing-a-patch)
|
16 | 14 | - [Documentation changes](#documentation-changes)
|
17 | 15 | - [Releases](#releases)
|
@@ -92,8 +90,9 @@ Any backport MUST NOT be breaking for API or behavioral changes.
|
92 | 90 |
|
93 | 91 | We usually backport critical bugs or security fixes, changes to support new Kubernetes minor versions (see [supported Kubernetes versions](https://cluster-api.sigs.k8s.io/reference/versions.html#supported-kubernetes-versions)), documentation and test signal improvements. Everything else is considered case by case.
|
94 | 92 |
|
95 |
| -[Out of support](https://github.com/kubernetes-sigs/cluster-api/blob/main/CONTRIBUTING.md#support-and-guarantees) release branches are usually frozen, |
96 |
| -although maintainers may allow backports in specific situations like CVEs, security, and other critical bug fixes. |
| 93 | +Release branches outside of the [standard support period](https://github.com/kubernetes-sigs/cluster-api/blob/main/CONTRIBUTING.md#cluster-api-release-support) are usually frozen, |
| 94 | +although maintainers may allow backports to releases in [maintenance mode](https://github.com/kubernetes-sigs/cluster-api/blob/main/CONTRIBUTING.md#cluster-api-release-support) in specific situations |
| 95 | +like CVEs, security, and other critical bug fixes. |
97 | 96 |
|
98 | 97 | ### APIs
|
99 | 98 |
|
@@ -121,56 +120,6 @@ branches that minor and patch releases are tagged. In some cases, it may
|
121 | 120 | be necessary to open PRs for bugfixes directly against stable branches, but
|
122 | 121 | this should generally not be the case.
|
123 | 122 |
|
124 |
| -### Support and guarantees |
125 |
| - |
126 |
| -Cluster API maintains the most recent release/releases for all supported API and contract versions. Support for this section refers to the ability to backport and release patch versions; |
127 |
| -[backport policy](#backporting-a-patch) is defined above. |
128 |
| - |
129 |
| -- The API version is determined from the GroupVersion defined in the top-level `api/` package. |
130 |
| -- The EOL date of each API Version is determined from the last release available once a new API version is published. |
131 |
| - |
132 |
| -| API Version | Supported Until | |
133 |
| -|--------------|-----------------------------------------------------------------------------------------| |
134 |
| -| **v1beta1** | TBD (current stable) | |
135 |
| - |
136 |
| -- For the current stable API version (v1beta1) we support the two most recent minor releases; older minor releases are immediately unsupported when a new major/minor release is available. |
137 |
| -- For older API versions we only support the most recent minor release until the API version reaches EOL. |
138 |
| -- We will maintain test coverage for all supported minor releases and for one additional release for the current stable API version in case we have to do an emergency patch release. |
139 |
| - For example, if v1.6 and v1.7 are currently supported, we will also maintain test coverage for v1.5 for one additional release cycle. When v1.8 is released, tests for v1.5 will be removed. |
140 |
| - - If there is a need for an emergency patch (e.g. to fix a critical security issue), please bring this up to maintainers and it will be considered on a case-by-case basis. |
141 |
| - |
142 |
| -| Minor Release | API Version | Supported Until | |
143 |
| -|---------------|--------------|--------------------------------------------------| |
144 |
| -| v1.10.x | **v1beta1** | when v1.12.0 will be released | |
145 |
| -| v1.9.x | **v1beta1** | when v1.11.0 will be released | |
146 |
| -| v1.8.x | **v1beta1** | when v1.10.0 will be released | |
147 |
| -| v1.7.x | **v1beta1** | EOL since 2024-12-10 - v1.9.0 release date | |
148 |
| -| v1.6.x | **v1beta1** | EOL since 2024-08-12 - v1.8.0 release date | |
149 |
| -| v1.5.x | **v1beta1** | EOL since 2024-04-16 - v1.7.0 release date | |
150 |
| -| v1.4.x | **v1beta1** | EOL since 2023-12-05 - v1.6.0 release date | |
151 |
| -| v1.3.x | **v1beta1** | EOL since 2023-07-25 - v1.5.0 release date | |
152 |
| -| v1.2.x | **v1beta1** | EOL since 2023-03-28 - v1.4.0 release date | |
153 |
| -| v1.1.x | **v1beta1** | EOL since 2022-07-18 - v1.2.0 release date (*) | |
154 |
| -| v1.0.x | **v1beta1** | EOL since 2022-02-02 - v1.1.0 release date (*) | |
155 |
| -| v0.4.x | **v1alpha4** | EOL since 2022-04-06 - API version EOL | |
156 |
| -| v0.3.x | **v1alpha3** | EOL since 2022-02-23 - API version EOL | |
157 |
| - |
158 |
| -(*) Previous support policy applies, older minor releases were immediately unsupported when a new major/minor release was available |
159 |
| - |
160 |
| -- Exceptions can be filed with maintainers and taken into consideration on a case-by-case basis. |
161 |
| - |
162 |
| -### Removal of v1alpha3 & v1alpha4 apiVersions |
163 |
| - |
164 |
| -Cluster API stopped to serve v1alpha3 API types from the v1.5 release and v1alpha4 types starting from the v1.6 release. |
165 |
| -Those types still exist in Cluster API while we work to a fix (or a workaround) for https://github.com/kubernetes-sigs/cluster-api/issues/10051. |
166 |
| -IMPORTANT! v1alpha3 and v1alpha4 types only exist for conversion and cannot be used by clients anymore. |
167 |
| - |
168 |
| -Note: Removal of a deprecated APIVersion in Kubernetes [can cause issues with garbage collection by the kube-controller-manager](https://github.com/kubernetes/kubernetes/issues/102641) |
169 |
| -This means that some objects which rely on garbage collection for cleanup - e.g. MachineSets and their descendent objects, like Machines and InfrastructureMachines, may not be cleaned up properly if those |
170 |
| -objects were created with an APIVersion which is no longer served. |
171 |
| -To avoid these issues it's advised to ensure a restart to the kube-controller-manager is done after upgrading to a version of Cluster API which drops support for an APIVersion - e.g. v1.5 and v1.6. |
172 |
| -This can be accomplished with any Kubernetes control-plane rollout, including a Kubernetes version upgrade, or by manually stopping and restarting the kube-controller-manager. |
173 |
| - |
174 | 123 | ## Contributing a Patch
|
175 | 124 |
|
176 | 125 | 1. If you haven't already done so, sign a Contributor License Agreement (see details above).
|
|
0 commit comments