Skip to content

Commit 29dce57

Browse files
committed
Add release v1.6.0
1 parent c4327ff commit 29dce57

File tree

1 file changed

+295
-0
lines changed

1 file changed

+295
-0
lines changed

CHANGELOG/v1.6.0.md

Lines changed: 295 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,295 @@
1+
## 👌 Kubernetes version support
2+
3+
- Management Cluster: v1.25.x -> v1.28.x
4+
- Workload Cluster: v1.23.x -> v1.28.x
5+
6+
[More information about version support can be found here](https://cluster-api.sigs.k8s.io/reference/versions.html)
7+
8+
## Highlights
9+
10+
* MachinePools are now supported in ClusterClass Clusters
11+
* Metrics, profiling and other diagnostics are now served securely by default
12+
* Types in `ipam.cluster.x-k8s.io` have graduated to `v1beta1`
13+
14+
## Deprecation Warning
15+
16+
- The API version `v1alpha4` is no longer served in this release.
17+
- [Version migration guide](https://main.cluster-api.sigs.k8s.io/developer/providers/version-migration.html)
18+
- [GitHub issue #8038](https://github.com/kubernetes-sigs/cluster-api/issues/8038)
19+
- [API deprecation details](https://main.cluster-api.sigs.k8s.io/contributing#removal-of-v1alpha3--v1alpha4-apiversions)
20+
- The API version `v1alpha3` has been completely removed in this release.
21+
- Flag `--metrics-bind-addr` is [deprecated](https://github.com/kubernetes-sigs/cluster-api/pull/9264) for all controllers
22+
23+
## Changes since v1.5.0
24+
## :chart_with_upwards_trend: Overview
25+
- 389 new commits merged
26+
- 5 breaking changes :warning:
27+
- 15 feature additions ✨
28+
- 35 bugs fixed 🐛
29+
30+
## :memo: Proposals
31+
- Community meeting: Add proposal for karpenter integration feature group (#9571)
32+
33+
## :warning: Breaking Changes
34+
- API: Remove v1alpha3 API Version (#8997)
35+
- API: Stop serving v1alpha4 API Versions (#8996)
36+
- clusterctl: Improve Context handling in clusterctl (#8939)
37+
- Dependency: Bump to controller-runtime v0.16 (#8999)
38+
- Metrics/Logging: Implement secure diagnostics (metrics, pprof, log level changes) (#9264)
39+
40+
## :sparkles: New Features
41+
- API: Add validation to nested ObjectMeta fields (#8431)
42+
- CAPD: Add config maps to CAPD RBAC (#9528)
43+
- CAPD: Add MachinePool Machine implementation to CAPD components (#8842)
44+
- CAPD: Allow adding custom HA proxy config for CAPD load balancer (#8785)
45+
- CAPD: Initialize configmap object before getting it (#9529)
46+
- ClusterClass: Add topology-owned label to MachineHealthChecks. (#9191)
47+
- ClusterClass: Introduce NamingStrategy and allow generating names using go templates (#9340)
48+
- ClusterClass: Update API with ClusterClass MachinePool support (#8820)
49+
- clusterctl: Add RKE2 bootstrap provider to clusterctl (#9720)
50+
- clusterctl: Block move with annotation (#8690)
51+
- IPAM: Promote IPAM types to v1beta1 (#9525)
52+
- MachinePool: Add MachinePool workers support in ClusterClass (#9016)
53+
- MachineSet: Adjust preflight check to allow kubelet version skew of 3 for clusters running v1.28 and above (#9222)
54+
- Release: Add automation to create release branch and tags (#9111)
55+
- Testing/Documentation: v1.28: Prepare quickstart, capd and tests for the new release including kind bump (#9160)
56+
57+
## :bug: Bug Fixes
58+
- CABPK: Certificate paths in cloud-init scripts should not use a platform-dependent path separator (#9167)
59+
- CAPD: Delete container after failed start to work around port allocation issues (#9125)
60+
- CAPD: Fix DockerMachine panic (#9673)
61+
- CI: Fix reporting bug in verify-container-image script (#9676)
62+
- ClusterClass: Fix ClusterClass enqueue for ExtensionConfig (#9133)
63+
- ClusterClass: Topology: fix namingstrategy webhook to not use uppercase characters for testing the template and align unit test to e2e test (#9425)
64+
- clusterctl: Fix provider namespace secret not included in clusterctl move (#9694)
65+
- ClusterResourceSet: Requeue after 1 minute if ErrClusterLocked got hit (#9788)
66+
- Dependency: Bump golang.org/x/net to v0.13.0 (#9121)
67+
- Dependency: Bump to docker v24.0.5-0.20230714235725-36e9e796c6fc (#9038)
68+
- Devtools: Adding metrics container port in tilt-prepare only if it's missing (#9308)
69+
- Devtools: Allow duplicate objects in Tiltfile (#9302)
70+
- Devtools: Change tilt debug base image to golang (#9070)
71+
- Devtools: Fix tilt-prepare leader-elect setting (#9315)
72+
- Devtools: Pin Plantuml version (#9424)
73+
- Devtools: Tilt: ensure .tiltbuild/bin directory is created early enough, add tilt troubleshooting guide (#9165)
74+
- e2e: Drop MachinePools from Dualstack tests (#9477)
75+
- e2e: Fix autoscaler image repo (#9353)
76+
- e2e: Test: pin conformance image to a version which includes a fix for the dualstack tests (#9252)
77+
- KCP: Allow dropping patches KubeadmControlPlane KubeadmConfig (#9698)
78+
- KCP: Allow to drop useExperimentalRetryJoin field from KubeadmControlPlane.kubeadmConfigSpec (#9170)
79+
- KCP: Fix KCP Controller reconcile always return error when workload cluster is unreachable (#9342)
80+
- KCP: Requeue KCP object if ControlPlaneComponentsHealthyCondition is not yet true (#9032)
81+
- Machine: Retry Node delete when CCT is locked (#9570)
82+
- MachineDeployment: Use regular random suffix for MachineSets, ensure max length 63 (#9298)
83+
- MachineHealthCheck: Fix excessive trace logging in the machine health check controller (#9419)
84+
- MachinePool: Fix bug where MachinePool Machine ownerRefs weren't updating (#9619)
85+
- Release: Alphabetically sorting release tool output (#9055)
86+
- Release: Deduplicating area in pr title in release notes (#9186)
87+
- Release: Fix go install path for kpromo v4.0.4 (#9336)
88+
- Release: Generate warning when release notes can not be generated (#9163)
89+
- Release: Hack/release-notes: ensure relase notes tool can be used for external projects again (#9018)
90+
- Release: Reverts pull request from cahillsf/improve-release-speed (#9465)
91+
- Runtime SDK: Set User Agent for test extension correctly (#9748)
92+
- util: Fix AddAnnotations for unstructured.Unstructured (#9164)
93+
94+
## :seedling: Others
95+
- API: Add ClusterClass column to Cluster CRD (#9120)
96+
- API: Add verify-import-restrictions to enforce import restrictions (#9407)
97+
- API: Enforce import restrictions in all API packages (#9461)
98+
- API: Ensure we generate all webhook manifests.yaml (#9621)
99+
- API: Move API v1beta1 webhooks to a separate package (#9047)
100+
- API: Move docker infrastructure experimental API v1beta1 webhooks to sepa… (#9460)
101+
- API: Move docker infrastructure API v1beta1 webhooks to separate package (#9458)
102+
- API: Move experimental addons API v1beta1 webhooks to separate package (#9438)
103+
- API: Move experimental API v1beta1 webhooks to separate package (#9417)
104+
- API: Move inmemory infrastructure API v1beta1 webhooks to separate package (#9459)
105+
- API: Move Kubeadm API v1beta1 webhooks to separate package (#9410)
106+
- API: Remove files and markers for Kubebuilder (#9344)
107+
- API: Remove reliance on controller-runtime scheme builder (#9045)
108+
- API: Remove reliance on controller-runtime scheme builder for experimental APIs (#9185)
109+
- API: Remove reliance on controller-runtime scheme builder for remaining API groups (#9266)
110+
- API: Remove the dependency on cluster-api/utils from addons API (#9482)
111+
- API: Test and document controller ownerReferences (#9153)
112+
- CABPK: Remove Kubeadm upstream v1beta1 types (#9345)
113+
- CAPD: Fix multi error handling in RunContainer (#9139)
114+
- CAPD: Set Condition, if creating external LB failed. (#9697)
115+
- CI: Add colored-line-number output for golangci-lint action (#9147)
116+
- CI: Add dependabot for test and hack/tools module (#9041)
117+
- CI: Add exclude for Kustomize API to dependabot config (#9059)
118+
- CI: Add licence-scan for pull requests (#9184)
119+
- CI: Add loggercheck linter and fix findings (#9446)
120+
- CI: Add verify-govulncheck and verify-vulnerabilities targets and integrate to scan action (#9144)
121+
- CI: Bump actions/cache from 3.3.1 to 3.3.2 (#9395)
122+
- CI: Bump actions/checkout from 4.1.0 to 4.1.1 (#9611)
123+
- CI: Bump actions/github-script from 7.0.0 to 7.0.1 (#9738)
124+
- CI: Bump actions/setup-go from 4.0.1 to 4.1.0 (#9187)
125+
- CI: Bump apidiff to v0.7.0 (#9472)
126+
- CI: Bump golangci-lint to v1.54.1 (#9174)
127+
- CI: Bump golangci/golangci-lint-action from 3.6.0 to 3.7.0 (#9261)
128+
- CI: Bump tj-actions/changed-files from 40.1.0 to 40.1.1 (#9714)
129+
- CI: Fix .golangci.yml comments (#9499)
130+
- CI: Ginkgolinter: forbid focus container (#9320)
131+
- CI: Github: add edited and reopened as triggers for the GH workflow approval (#9259)
132+
- CI: Github: add workflow to auto-approve golangci-lint if ok-to-test label is set (#9244)
133+
- CI: Go.mod reformat to have only two require blocks (#9192)
134+
- CI: Golangci-lint: replace deprecated local-prefixes setting for gci (#9339)
135+
- CI: Make GO_ARCH explicit in verify_containter script (#9341)
136+
- CI: Update actions for 1.5 and make names consistent (#9115)
137+
- CI: Verify plantuml image generation in CI (#9363)
138+
- ClusterCacheTracker: Add separate concurrency flag for cluster cache tracker (#9116)
139+
- ClusterCacheTracker: Ensure Get/List calls are not getting stuck when apiserver is unreachable (#9028)
140+
- ClusterCacheTracker: Fix accessor deletion on health check failure (#9025)
141+
- ClusterClass: Add additional test cases for nested variable defaulting (#9728)
142+
- ClusterClass: Add ownerRefs to BootstrapConfig/InfraMachinePool in classy Clusters (#9389)
143+
- ClusterClass: Embed ssa.FilterObjectInput into HelperOption to remove duplication (#9512)
144+
- ClusterClass: Fix some nits in Cluster topology engine tests (#9464)
145+
- ClusterClass: Improve Cluster variable defaulting/validation errors (#9452)
146+
- ClusterClass: Improve message for TopologyReconciledCondition (#9400)
147+
- ClusterClass: Make ClusterClass generated object names consistent (#9254)
148+
- ClusterClass: Minor fixes for CC+MP implementation (#9318)
149+
- clusterctl: Add Proxmox provider quickstart (#9812)
150+
- clusterctl: Check resource blocking clusterctl move during discovery (#9246)
151+
- clusterctl: Propagate ctx to retryWithExponentialBackoff in clusterctl (#9437)
152+
- clusterctl: Use goproxy to check version in clusterctl (#9237)
153+
- clusterctl: Use http get to download files from GitHub in clusterctl (#9236)
154+
- Dependency: Bump cert-manager to v1.13.2 (#9653)
155+
- Dependency: Bump cloud.google.com/go/storage from 1.34.1 to 1.35.1 in /hack/tools (#9727)
156+
- Dependency: Bump controller tools to v1.13.0 (#9221)
157+
- Dependency: Bump controller-runtime to v0.16.3 (#9592)
158+
- Dependency: Bump conversion-gen to v0.28 (#9267)
159+
- Dependency: Bump corefile-migration library to v1.0.21 (#9307)
160+
- Dependency: Bump docker to v24.0.5 (#9064)
161+
- Dependency: Bump envtest binaries to 1.28 (#9268)
162+
- Dependency: Bump github.com/blang/semver to v4 (#9189)
163+
- Dependency: Bump github.com/docker/distribution (#9544)
164+
- Dependency: Bump github.com/docker/docker from 24.0.6+incompatible to 24.0.7+incompatible in /test (#9652)
165+
- Dependency: Bump github.com/emicklei/go-restful/v3 from 3.10.2 to 3.11.0 in /test (#9272)
166+
- Dependency: Bump github.com/evanphx/json-patch/v5 from 5.6.0 to 5.7.0 (#9397)
167+
- Dependency: Bump github.com/fatih/color from 1.15.0 to 1.16.0 (#9681)
168+
- Dependency: Bump github.com/go-logr/logr from 1.2.4 to 1.3.0 (#9644)
169+
- Dependency: Bump github.com/google/go-cmp from 0.5.9 to 0.6.0 (#9562)
170+
- Dependency: Bump github.com/onsi/ginkgo/v2 from 2.13.0 to 2.13.1 (#9716)
171+
- Dependency: Bump github.com/onsi/gomega from 1.29.0 to 1.30.0 (#9717)
172+
- Dependency: Bump github.com/prometheus/client_golang from 1.16.0 to 1.17.0 (#9517)
173+
- Dependency: Bump github.com/spf13/cobra from 1.7.0 to 1.8.0 (#9679)
174+
- Dependency: Bump github.com/spf13/viper from 1.16.0 to 1.17.0 (#9561)
175+
- Dependency: Bump Go version to v1.20.11 (#9683)
176+
- Dependency: Bump go-github dependency to version v53 (#8995)
177+
- Dependency: Bump go.etcd.io/etcd/api/v3 from 3.5.9 to 3.5.10 (#9642)
178+
- Dependency: Bump go.etcd.io/etcd/client/v3 from 3.5.9 to 3.5.10 (#9646)
179+
- Dependency: Bump go.opentelemetry.io/* dependencies (#9598)
180+
- Dependency: Bump golang.org/grpc to v1.59.0 (#9626)
181+
- Dependency: Bump golang.org/x/net from 0.15.0 to 0.17.0 in /test (#9537)
182+
- Dependency: Bump golang.org/x/oauth2 from 0.13.0 to 0.14.0 (#9715)
183+
- Dependency: Bump golang.org/x/text from 0.13.0 to 0.14.0 (#9680)
184+
- Dependency: Bump golangci-lint to v1.55.2 (#9740)
185+
- Dependency: Bump gomodules.xyz/jsonpatch/v2 from 2.3.0 to 2.4.0 (#9188)
186+
- Dependency: Bump google.golang.org/api from 0.149.0 to 0.150.0 in /hack/tools (#9691)
187+
- Dependency: Bump google.golang.org/grpc from 1.58.2 to 1.58.3 (#9607)
188+
- Dependency: Bump kpromo to v4.0.4 (#9241)
189+
- Dependency: Bump opentelemetry to fix CVEs (#9709)
190+
- Dependency: Bump sigs.k8s.io/yaml from 1.3.0 to 1.4.0 (#9645)
191+
- Dependency: Bump some dependencies in Makefile (#9549)
192+
- Dependency: Bump the kubernetes group in /hack/tools with 2 updates (#9420)
193+
- Dependency: Bump the kubernetes group in /hack/tools with 2 updates (#9574)
194+
- Dependency: Bump the kubernetes group with 2 updates (#9606)
195+
- Dependency: Bump the kubernetes group with 4 updates (#9326)
196+
- Dependency: Bump the kubernetes group with 4 updates (#9455)
197+
- Dependency: Bump the kubernetes group with 4 updates (#9739)
198+
- Dependency: Bump Trivy to v0.47.0 (#9671)
199+
- Dependency: Replace hashicorp/go-multierror with kerrors (#9175)
200+
- Dependency: Update ensure-kubectl.sh to 1.28 (#9275)
201+
- Devtools: Add .PHONY for doctoc target (#9148)
202+
- Devtools: Allow non-provider Deployments in Tilt (#9404)
203+
- Devtools: Bump CAPI visualizer to v1.2.0 (#9195)
204+
- Devtools: Drop duplicate pprof and unused linter excludes (#9156)
205+
- Devtools: Improve Performance dashboard (#9387)
206+
- Devtools: Make dev cluster networking configurable (#9183)
207+
- Devtools: Makefile: run doctoc only once (#9182)
208+
- Devtools: Move tilt-prepare and log-push to tools/internal (#9020)
209+
- Devtools: Observability: move metrics to config and use sidecar in kube-state-metrics (#9390)
210+
- Devtools: Refactor docker-push* Makefile targets so users can control with ALL_DOCKER_BUILD which images are pushed (#8586)
211+
- Devtools: Tiltfile: rename deploy_kustomizations to additional_kustomizations (#9439)
212+
- e2e: Add back flavor to Waiter interface (#9166)
213+
- e2e: Add CRS re-reconcile to ownerReference test (#9296)
214+
- e2e: Add log level for kube components patch to ClusterClass (#9493)
215+
- e2e: Add MachinePools to Topology Quickstart E2E Templates (#9393)
216+
- e2e: Add MP timeouts to cluster upgrade tests (#9723)
217+
- e2e: Add test for ownerReference apiVersion update (#9269)
218+
- e2e: Add test for scale testing machinery (#9510)
219+
- e2e: Bump autoscaler to v1.28.0 (#9349)
220+
- e2e: Drop PR-Informing test tag and job description (#9362)
221+
- e2e: Dump all pods in e2e test clusters (#9441)
222+
- e2e: Dump all resource information for self-hosted tests (#9547)
223+
- e2e: Ensure finalizers are resilient on reconciliation (#9471)
224+
- e2e: Fail tests if test env version check fails (#9388)
225+
- e2e: Fix broken e2e test clusterclass (#9506)
226+
- e2e: Improve labels/annotations in CAPD test ClusterClass (#9469)
227+
- e2e: Improve logging for self-hosted e2e test (#9637)
228+
- e2e: Improve output of exec.KubectlApply (#9761)
229+
- e2e: Refactor e2e ownerRef test utils (#9313)
230+
- e2e: Test/conformance: add variables to overwrite parralelization of kubetest runs (#9667)
231+
- e2e: Test/e2e: structure resources by namespace/kind again (#9462)
232+
- e2e: Use existing value of `SKIP_RESOURCE_CLEANUP` if set in environment (#9152)
233+
- IPAM: Add age also to v1beta1 IPAM types (#9729)
234+
- IPAM: Add age column to kubectl output (#9521)
235+
- IPAM: Enforce IPAM import alias (#9730)
236+
- KCP: Controlplane: add a test case for syncMachines where the InfraMachine does not exist. (#8992)
237+
- KCP: Remove disableInPlacePropagation field in KCP controller (#9099)
238+
- KCP: Remove redundant GetRESTConfig in KCP Management.GetWorkloadCluster (#9448)
239+
- KCP: Support admin config for Kubeadm v1.29 (#9682)
240+
- Logging: Change default log level to 2 (#9093)
241+
- Logging: Fix patch errors not being logged (#9224)
242+
- Logging: Set controller-runtime logger for clusterctl (#9107)
243+
- MachinePool: Add MachinePool Builders (#9346)
244+
- MachinePool: Add util function to get MachinePool by label (#9219)
245+
- MachinePool: Use SSA Patch to create machines in MP controller (#9802)
246+
- Metrics: Hack/observability: add capi_machine_status_certificatesexpirydate metric (#9084)
247+
- Metrics: Hack: bump kube-state-metrics and prometheus charts (#9352)
248+
- Release: Add additional blocks to release note generation (#9247)
249+
- Release: Add adilGhaffarDev to release-team owner alias (#9718)
250+
- Release: Add Release Team OWNERS file to docs/release folder (#9294)
251+
- Release: Avoid cd'ing into test folders when building Docker images (#9744)
252+
- Release: Bump kubebuilder tools to v0.4.2 (#9665)
253+
- Release: Bump PR title checker github action to v0.4.1 (#9650)
254+
- Release: Capitalize area prefix in release notes by default (#9614)
255+
- Release: Capitalized title in release notes (#9086)
256+
- Release: Clarify release team vs k8s/k8s-SIGs org membership (#9089)
257+
- Release: Exclude release trigger PRs from release notes (#9444)
258+
- Release: Format Community meeting area in release notes (#9648)
259+
- Release: Format MachineHealthCheck area in release notes (#9500)
260+
- Release: Give permissions for release notes tool to release team (#9563)
261+
- Release: Hack: add weekly update script for Slack (#9343)
262+
- Release: Improve multiple areas PRs with user friendly subs (#9071)
263+
- Release: Improve release notes formatting (#9337)
264+
- Release: Improve release speed (#9392)
265+
- Release: Improve release staging build speed (#9536)
266+
- Release: Prepare main branch for v1.6 development (#9097)
267+
- Release: Remove auto-labelling for clusterctl (#8990)
268+
- Release: Remove extra separator after title in release notes (#9605)
269+
- Release: Revert "Improve release staging build speed" (#9753)
270+
- Release: Update instructions checklist to generate release notes (#9443)
271+
- Release: Update kubebuilder-release-tools to v0.4.0 (#9531)
272+
- Release: Update release-notes make target + corresponding doc (#9573)
273+
- Runtime SDK: Improve ClusterClass watch for ExtensionConfigs (#9338)
274+
- Testing: Add MachinePool test cases (#9474)
275+
- Testing: Add MachinePool test cases to engine tests (#9373)
276+
- Testing: Add MachinePool test cases to variables tests (#9372)
277+
- Testing: Add MachinePools to Runtime SDK and Rollout tests (#9703)
278+
- Testing: Add MachinePools to topology upgrade test (#9502)
279+
- Testing: Add test for required properties in clusterclass variables (#9113)
280+
- Testing: Add unit tests for CC MP blueprint, current_state, & desired_state (#9348)
281+
- Testing: Add unit tests for reconcile_state, cluster_controller, & conditions (#9380)
282+
- Testing: Add WaitForMachinePoolToBeUpgraded to self-hosted test (#9540)
283+
- Testing: Extend test/framework to collect workload cluster nodes (#9416)
284+
- Testing: Follow-up fixes: Add MachinePools to Runtime SDK and Rollout tests (#9719)
285+
- Testing: Replacing gomega.Equal with gomega.BeComparableTo (#9015)
286+
- util: Adjust naming in SortForCreate implementation (#9311)
287+
- util: Move `internal.labels` to `format` package for use by providers (#9002)
288+
- util: Refactor SortForCreate to use sort.Slice (#9251)
289+
- util: Remove go-vcs dependency from releaselink tool (#9288)
290+
- util: Remove previously deprecated code (#9136)
291+
292+
:book: Additionally, there have been 55 contributions to our documentation and book. (#8260, #8500, #8678, #8819, #8988, #9001, #9013, #9014, #9024, #9029, #9080, #9081, #9087, #9112, #9119, #9141, #9146, #9150, #9161, #9173, #9208, #9209, #9213, #9214, #9232, #9270, #9286, #9291, #9305, #9328, #9364, #9386, #9403, #9415, #9429, #9433, #9463, #9487, #9488, #9490, #9511, #9513, #9514, #9527, #9550, #9559, #9565, #9572, #9577, #9590, #9593, #9613, #9635, #9654, #9706)
293+
294+
295+
_Thanks to all our contributors!_ 😊

0 commit comments

Comments
 (0)