Releases: kubernetes-sigs/cluster-api
v1.5.8
👌 Kubernetes version support
- Management Cluster: v1.24.x -> v1.28.x
- Workload Cluster: v1.22.x -> v1.28.x
More information about version support can be found here
Changes since v1.5.7
📈 Overview
- 11 new commits merged
- 5 bugs fixed 🐛
🐛 Bug Fixes
- CI: Fix for TestServerSideApplyWithDefaulting (#10344)
- ClusterClass: Improve handling of topology orphaned objects (#10347)
- e2e: fix kubetest to allow parallel execution on different clusters (#10432)
- KCP: Skip checking
clusterConfiguration.dns
fields when KCP checking MachineNeedRollout (#10304) - MachineSet: deletion priority to avoid deleting too many machines (#10429)
🌱 Others
- CI: Added go directive test (#10349)
- clusterctl: Bump cert-manager to 1.14.4 (#10273)
- Dependency: Bump docker to address CVE (#10316)
- Dependency: Bump golang to v1.21.9 and golang.org/x/net to mitigate CVE-2023-45288 (#10377)
📖 Additionally, there have been 2 contributions to our documentation and book. (#10296, #10339)
Dependencies
Added
Nothing has changed.
Changed
- golang.org/x/crypto: v0.17.0 → v0.21.0
- golang.org/x/net: v0.17.0 → v0.23.0
- golang.org/x/sys: v0.15.0 → v0.18.0
- golang.org/x/term: v0.15.0 → v0.18.0
Removed
Nothing has changed.
Thanks to all our contributors! 😊
v1.7.0-rc.1
🚨 This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Enable kubeadm feature gates mutation
- Add public function to create new CRD migrator
- Add MachineSetReady condition to MachineDeployment
- Set MachinePool feature flag default to true + Beta
Changes since v1.7.0-rc.0
📈 Overview
- 8 new commits merged
- 2 bugs fixed 🐛
🐛 Bug Fixes
- util: Checking cert's keypair for nil before accessing to avoid panics (#10368)
- util: recover gvk after scheme.Convert (#10409)
🌱 Others
- CI: Add more templating func to prowjob-gen (#10403)
- CI: Change base branch for link checker (#10365)
- Dependency: Bump golang to v1.21.9 and golang.org/x/net to mitigate CVE-2023-45288 (#10378)
- Dependency: Bump sigs.k8s.io/controller-runtime from 0.17.2 to 0.17.3 (#10406)
- Release: also detect alpha releases as pre releases (#10379)
Dependencies
Added
Nothing has changed.
Changed
- golang.org/x/net: v0.22.0 → v0.23.0
- sigs.k8s.io/controller-runtime: v0.17.2 → v0.17.3
Removed
Nothing has changed.
More details about the release
👌 Kubernetes version support
- Management Cluster: v1.26.x -> v1.29.x
- Workload Cluster: v1.24.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.0
📈 Overview
- 333 new commits merged
- 5 breaking changes
⚠️ - 12 feature additions ✨
- 44 bugs fixed 🐛
📝 Proposals
- MachinePool: Update MachinePool Machines proposal with diagrams (#9664)
⚠️ Breaking Changes
- API: Remove v1alpha4 API Version (#9939)
- Dependency: Bump to controller-runtime v0.17.0 & k8s.io v0.29 (#9964)
- Logging: Make event recorder names consistent for KCP and topology controller (#9862)
- MachinePool: Set MachinePool feature flag default to true + Beta (#10141)
- KCP/MachineSet: Objects generated by KCP, MachineSets and MachinePools will now consistently use machine name (#9833)
✨ New Features
- API: Enable kubeadm feature gates mutation (#10154)
- clusterctl: Add k0smotron provider (#9991)
- clusterctl: Add public function to create new CRD migrator (#10075)
- Control-plane: Allow mutation of all fields that should be mutable (#9871)
- MachineDeployment: Add MachineSetReady condition to MachineDeployment (#9262)
- MachineDeployment: Taint nodes with PreferNoSchedule during rollouts (#10223)
- MachineHealthCheck: implement annotation to manually mark machines for remediation (#10202)
- Release: Add dependencies section to release notes tool (#10043)
- Release: Add release notes expander functionality (#10091)
- Release: Add utility to create git issues on provider repo (#9110)
- Testing: Resolve release markers (#9265)
- Testing: Prepare quickstart, capd and tests for the new release including kind bump (#9872)
🐛 Bug Fixes
- API: Use ptr instead of own implementation (#10276)
- API/e2e: Restore v1alpha3/v1alpha4 conversion to fix SSA issue & add e2e test coverage (#10147)
- CABPK: Only refresh bootstrap token if needed, requeue in all cases where node hasn't joined yet (#9229)
- CAPD: Fix ignition to also set the kube-proxy configuration to skip setting sysctls (#9894)
- CAPD: Remove --enable-hostpath-provisioner flag (#10271)
- CAPD: Remove duplicate fix for btrfs/zfs support (#8376)
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#9543)
- ClusterCacheTracker: Use RequeueAfter instead of immediate requeue on ErrClusterLocked to not have exponentially increasing requeue time (#9810)
- ClusterClass: Fix for TestServerSideApplyWithDefaulting (#10307)
- ClusterClass: Improve handling of topology orphaned objects (#10277)
- clusterctl: Move handlePlugins function call out of init to allow debugging tests (#10200)
- clusterctl: Validate no objects exist from CRDs before deleting them (#9808)
- ClusterResourceSet: Requeue after 1 minute if ErrClusterLocked got hit (#9777)
- Control-plane: KCP should defer remediation when a control plane machine is still provisioning (#9734)
- Devtools: Show default cluster-template (#9820)
- e2e: Add wait for MachineList to be available (#10301)
- e2e: fix unset GINKGO_FOCUS variable (#10085)
- e2e: Fix clusterctl upgrade e2e tests (enable CRS) (#10340)
- e2e: Make MachinePools and MachineDeployments optional in ApplyClusterTemplateAndWait (#9960)
- e2e: Re-introduce exclude capi-webhook-system to fix test flake (#10157)
- e2e: Calculate correct worker count in clusterctl upgrade test (#9892)
- e2e: Fix finalizers test to not only rely on namespaced name (#9891)
- e2e: retry GetOwnerGraph in owner references test on certificate errors (#10201)
- IPAM: Fix webhooks using mixed api versions (#9861)
- KCP: Skip checking
clusterConfiguration.dns
fields when KCP checking MachineNeedRollout (#9857) - Logging: Improve log k/v pairs and a improve/drop a few log lines (#9813)
- Machine: Bubble up machine drain condition in
MachinesReadyCondition
(#9355) - Machine: Watch external objects for machine before deleting (#10041)
- MachinePool: Fix TestReconcileMachinePoolScaleToFromZero flakes (#9745)
- Release: Fix Community meeting area formatting in release notes (#9784)
- Release: Fix defaulting logic in release notes tool (#9958)
- Release: Fix documentation area comparison in release notes (#9769)
- Release: Fix kubeadm bootstrap prefix in release notes (#9814)
- Release: Fix wrong branch name display for weekly update script (#9918)
- Runtime SDK: Fix ClusterClass variables status & RuntimeExtension and add test coverage (#10337)
- Runtime SDK: Use keys/values structured log interface (#9998)
- Testing: Fix using corerect testing.T when creating gomega object (#10342)
- Testing: Revert "Watch for Cluster resources in topology MD controller" (#9985)
- Testing: Reverting ginkgo.show-node-events to ginkgo.progress (#10214)
- Testing: fix flaky test TestPatch/Test patch with Machine (#9914)
- Testing: wait for topology to get rolled out before continuing with scaling checks (#9819)
- util: Add tests and update provider_issues.go (#10264)
- util: Checking cert's keypair for nil before accessing to avoid panics (#10368)
- util: recover gvk after scheme.Convert
🌱 Others
- API: Stop relying on GVK being set on regular typed objects (#9956)
- Bootstrap: Add MachinePool test for switching bootstrap config to another ready/non-ready object with different name (#9616)
- CABPK: Add pod metadata to capbk manager (#10208)
- CAPD: make docker machine bootstrap timeout configurable (#9952)
- CAPD: Remove requeues in DockerMachinePool (#9725)
- CAPD: Support configuring ExtraPortMappings for the kind cluster (#10046)
- CAPIM: Add namespaces to the list of resource handled by the in-memory API server (#10297)
- CAPIM: Allow using different resource group and listener name with the in memory server (#10096)
- CAPIM: Make in memory API server more tolerant when starting (#10211)
- CAPIM: Make in memory runtime and server accessible from outside (#9986)
- CAPIM: use port only to identify the wcl to make port-forward… (#10245)
- CI: Add fail fast to DumpResourcesForCluster in case of no route to host (#10204)
- CI: Add more templating func to prowjob-gen (#10403)
- CI: Added go directive test (#10261)
- CI: Bump conversion-gen to v0.29.0 (#10012)
- CI: Bump go-apidiff to v0.8.2 (#10011)
- CI: Bump govulncheck to v1.0.4 (#10274)
- CI: Bump kpromo to v4.0.5 (#10140)
- CI: Bump kubebuilder envtest to 1.29.0 (#10013)
- CI: Change base branch for link checker (#10365)
- CI: DumpResourcesForCluster should fail fast for i/o errors (#10238)
- CI: Ensure build images contains correct binary and for correct architecture (#9932)
- CI: Fix Make target generate-go-openapi (#10161)
- CI: Fix TestPatchNode flake (#10287)
- CI: Hack/prowjob-gen skip creating empty files (#10022)
- CI: implement generator for prowjobs (#9937)
- CI: Makefile: bump dependencies (#10236)
- CI: bump WorkloadKubernetesVersion for v1.6 clusterctl upgrade test (#10017)
- CI: adjust capd dockerfile so the binary exposes the package in the built binraries path variable (#10030)
- CI: Update GH actions to work with new release-1.6 branch (#9708)
- ClusterClass: Add ClusterClass variables metadata (#10308)
- ClusterClass: Add unit tests for MachinePools for webhooks and cc controller (#10055)
- ClusterClass: Add unit tests for MachinePools in topology/scope package (#10052)
- ClusterClass: Implement topology validations for topology kubernetes version upgrades (#10063)
- ClusterClass: use the alias for ClusterCacheTrackerReader instead of the internal reference (#10309)
- clusterctl: Add 0 default to worker-machine-count help (#10203)
- clusterctl: Add completion for fish shell (#9950)
- clusterctl: Add hivelocity infra provider to clusterctl (#10168)
- clusterctl: Add in-cluster ipam provider (#8811)
- clusterctl: Add Proxmox provider quickstart (#9798)
- clusterctl: Better verbose logging on override path (#10180)
- clusterctl: Bump cert-manager to 1.14.2 (#10126)
- clusterctl: Bump cert-manager to 1.14.4 (#10267)
- clusterctl: Bump cert-manager to v1.14.1 (#10113)
- clusterctl: Clarify rules for adding new clusterctl default providers (#9975)
- clusterctl: Deprecate clusterctl alpha topology plan (#10139)
- clusterctl: Replace context.TODO() from clusterctl proxy.go (#9776)
- Community meeting: Move CecileRobertMichon to emeritus (#10042)
- Community meeting: Move ykakarap to emeritus approvers (#10000)
- Community meeting: Promote chrischdi to Cluster API maintainer (#9997)
- Dependency: Bump
github.com/docker/docker
from ...
v1.7.0-rc.0
🚨 This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Enable kubeadm feature gates mutation
- Add public function to create new CRD migrator
- Add MachineSetReady condition to MachineDeployment
Changes since v1.7.0-beta.1
📈 Overview
- 16 new commits merged
- 1 breaking change
⚠️ - 1 feature addition ✨
- 5 bugs fixed 🐛
⚠️ Breaking Changes
- MachinePool: Set MachinePool feature flag default to true + Beta (#10141)
✨ New Features
- Release: Add release notes expander functionality (#10091)
🐛 Bug Fixes
- ClusterClass: Fix for TestServerSideApplyWithDefaulting (#10307)
- ClusterClass: Improve handling of topology orphaned objects (#10277)
- e2e: Fix clusterctl upgrade e2e tests (enable CRS) (#10340)
- Runtime SDK: Fix ClusterClass variables status & RuntimeExtension and add test coverage (#10337)
- Testing: Fix using corerect testing.T when creating gomega object (#10342)
🌱 Others
- Release: Determine release type from tag to also handle beta releases (#10324)
- Runtime SDK: Enable integration tests of RuntimeExtensions (#10330)
Dependencies
Added
Nothing has changed.
Changed
- go.etcd.io/etcd/api/v3: v3.5.12 → v3.5.13
- go.etcd.io/etcd/client/pkg/v3: v3.5.12 → v3.5.13
- go.etcd.io/etcd/client/v3: v3.5.12 → v3.5.13
Removed
Nothing has changed.
More details about the release
👌 Kubernetes version support
- Management Cluster: v1.26.x -> v1.29.x
- Workload Cluster: v1.24.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.0
📈 Overview
- 323 new commits merged
- 5 breaking changes
⚠️ - 12 feature additions ✨
- 42 bugs fixed 🐛
📝 Proposals
- MachinePool: Update MachinePool Machines proposal with diagrams (#9664)
⚠️ Breaking Changes
- API: Remove v1alpha4 API Version (#9939)
- Dependency: Bump to controller-runtime v0.17.0 & k8s.io v0.29 (#9964)
- Logging: Make event recorder names consistent for KCP and topology controller (#9862)
- MachinePool: Set MachinePool feature flag default to true + Beta (#10141)
- KCP/MachineSet: Objects generated by KCP, MachineSets and MachinePools will now consistently use machine name (#9833)
✨ New Features
- API: Enable kubeadm feature gates mutation (#10154)
- clusterctl: Add k0smotron provider (#9991)
- clusterctl: Add public function to create new CRD migrator (#10075)
- Control-plane: Allow mutation of all fields that should be mutable (#9871)
- MachineDeployment: Add MachineSetReady condition to MachineDeployment (#9262)
- MachineDeployment: Taint nodes with PreferNoSchedule during rollouts (#10223)
- MachineHealthCheck: implement annotation to manually mark machines for remediation (#10202)
- Release: Add utility to create git issues on provider repo (#9110)
- Release: Add dependencies section to release notes tool (#10043)
- Release: Add release notes expander functionality (#10091)
- Testing: Resolve release markers (#9265)
- Testing: Prepare quickstart, capd and tests for the new release including kind bump (#9872)
🐛 Bug Fixes
- API: Use ptr instead of own implementation (#10276)
- API/e2e: Restore v1alpha3/v1alpha4 conversion to fix SSA issue & add e2e test coverage (#10147)
- CABPK: Only refresh bootstrap token if needed, requeue in all cases where node hasn't joined yet (#9229)
- CAPD: Fix ignition to also set the kube-proxy configuration to skip setting sysctls (#9894)
- CAPD: Remove --enable-hostpath-provisioner flag (#10271)
- CAPD: Remove duplicate fix for btrfs/zfs support (#8376)
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#9543)
- ClusterCacheTracker: Use RequeueAfter instead of immediate requeue on ErrClusterLocked to not have exponentially increasing requeue time (#9810)
- ClusterClass: Fix for TestServerSideApplyWithDefaulting (#10307)
- ClusterClass: Improve handling of topology orphaned objects (#10277)
- clusterctl: Move handlePlugins function call out of init to allow debugging tests (#10200)
- clusterctl: Validate no objects exist from CRDs before deleting them (#9808)
- ClusterResourceSet: Requeue after 1 minute if ErrClusterLocked got hit (#9777)
- Control-plane: KCP should defer remediation when a control plane machine is still provisioning (#9734)
- Devtools: Show default cluster-template (#9820)
- e2e: Add wait for MachineList to be available (#10301)
- e2e: fix unset GINKGO_FOCUS variable (#10085)
- e2e: Fix clusterctl upgrade e2e tests (enable CRS) (#10340)
- e2e: Make MachinePools and MachineDeployments optional in ApplyClusterTemplateAndWait (#9960)
- e2e: Re-introduce exclude capi-webhook-system to fix test flake (#10157)
- e2e: Calculate correct worker count in clusterctl upgrade test (#9892)
- e2e: Fix finalizers test to not only rely on namespaced name (#9891)
- e2e: retry GetOwnerGraph in owner references test on certificate errors (#10201)
- IPAM: Fix webhooks using mixed api versions (#9861)
- KCP: Skip checking
clusterConfiguration.dns
fields when KCP checking MachineNeedRollout (#9857) - Logging: Improve log k/v pairs and a improve/drop a few log lines (#9813)
- Machine: Bubble up machine drain condition in
MachinesReadyCondition
(#9355) - Machine: Watch external objects for machine before deleting (#10041)
- MachinePool: Fix TestReconcileMachinePoolScaleToFromZero flakes (#9745)
- Release: Fix Community meeting area formatting in release notes (#9784)
- Release: Fix defaulting logic in release notes tool (#9958)
- Release: Fix documentation area comparison in release notes (#9769)
- Release: Fix kubeadm bootstrap prefix in release notes (#9814)
- Release: Fix wrong branch name display for weekly update script (#9918)
- Runtime SDK: Fix ClusterClass variables status & RuntimeExtension and add test coverage (#10337)
- Runtime SDK: Use keys/values structured log interface (#9998)
- Testing: Fix using corerect testing.T when creating gomega object (#10342)
- Testing: Revert "Watch for Cluster resources in topology MD controller" (#9985)
- Testing: Reverting ginkgo.show-node-events to ginkgo.progress (#10214)
- Testing: fix flaky test TestPatch/Test patch with Machine (#9914)
- Testing: wait for topology to get rolled out before continuing with scaling checks (#9819)
- util: Add tests and update provider_issues.go (#10264)
🌱 Others
- API: Stop relying on GVK being set on regular typed objects (#9956)
- Bootstrap: Add MachinePool test for switching bootstrap config to another ready/non-ready object with different name (#9616)
- CABPK: Add pod metadata to capbk manager (#10208)
- CAPD: make docker machine bootstrap timeout configurable (#9952)
- CAPD: Remove requeues in DockerMachinePool (#9725)
- CAPD: Support configuring ExtraPortMappings for the kind cluster (#10046)
- CAPIM: Add namespaces to the list of resource handled by the in-memory API server (#10297)
- CAPIM: Allow using different resource group and listener name with the in memory server (#10096)
- CAPIM: Make in memory API server more tolerant when starting (#10211)
- CAPIM: Make in memory runtime and server accessible from outside (#9986)
- CAPIM: use port only to identify the wcl to make port-forward… (#10245)
- CI: Add fail fast to DumpResourcesForCluster in case of no route to host (#10204)
- CI: Added go directive test (#10261)
- CI: Bump conversion-gen to v0.29.0 (#10012)
- CI: Bump go-apidiff to v0.8.2 (#10011)
- CI: Bump govulncheck to v1.0.4 (#10274)
- CI: Bump kpromo to v4.0.5 (#10140)
- CI: Bump kubebuilder envtest to 1.29.0 (#10013)
- CI: DumpResourcesForCluster should fail fast for i/o errors (#10238)
- CI: Ensure build images contains correct binary and for correct architecture (#9932)
- CI: Fix Make target generate-go-openapi (#10161)
- CI: Fix TestPatchNode flake (#10287)
- CI: Hack/prowjob-gen skip creating empty files (#10022)
- CI: implement generator for prowjobs (#9937)
- CI: bump dependencies (#10236)
- CI: bump WorkloadKubernetesVersion for v1.6 clusterctl upgrade test (#10017)
- CI: adjust capd dockerfile so the binary exposes the package in the built binraries path variable (#10030)
- CI: Update GH actions to work with new release-1.6 branch (#9708)
- ClusterClass: Add ClusterClass variables metadata (#10308)
- ClusterClass: Add unit tests for MachinePools for webhooks and cc controller (#10055)
- ClusterClass: Add unit tests for MachinePools in topology/scope package (#10052)
- ClusterClass: Implement topology validations for topology kubernetes version upgrades (#10063)
- ClusterClass: use the alias for ClusterCacheTrackerReader instead of the internal reference (#10309)
- clusterctl: Add 0 default to worker-machine-count help (#10203)
- clusterctl: Add completion for fish shell (#9950)
- clusterctl: Add hivelocity infra provider to clusterctl (#10168)
- clusterctl: Add in-cluster ipam provider (#8811)
- clusterctl: Add Proxmox provider quickstart (#9798)
- clusterctl: Better verbose logging on override path (#10180)
- clusterctl: Bump cert-manager to 1.14.2 (#10126)
- clusterctl: Bump cert-manager to 1.14.4 (#10267)
- clusterctl: Bump cert-manager to v1.14.1 (#10113)
- clusterctl: Clarify rules for adding new clusterctl default providers (#9975)
- clusterctl: Deprecate clusterctl alpha topology plan (#10139)
- clusterctl: Replace context.TODO() from clusterctl proxy.go (#9776)
- Community meeting: Move CecileRobertMichon to emeritus (#10042)
- Community meeting: Move ykakarap to emeritus approvers (#10000)
- Community meeting: Promote chrischdi to Cluster API maintai...
v1.7.0-beta.1
🚨 This is a BETA RELEASE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Enable kubeadm feature gates mutation
- Add public function to create new CRD migrator
- Add MachineSetReady condition to MachineDeployment
More details about the release
👌 Kubernetes version support
- Management Cluster: v1.26.x -> v1.29.x
- Workload Cluster: v1.24.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.0
📈 Overview
- 306 new commits merged
- 4 breaking changes
⚠️ - 11 feature additions ✨
- 37 bugs fixed 🐛
📝 Proposals
- MachinePool: Update MachinePool Machines proposal with diagrams (#9664)
⚠️ Breaking Changes
- Dependency: Bump to controller-runtime v0.17.0 & k8s.io v0.29 (#9964)
- Logging: Make event recorder names consistent for KCP and topology controller (#9862)
- KCP/MachineSet: Objects generated by KCP, MachineSets and MachinePools will now consistently use machine name (#9833)
✨ New Features
- API: Enable kubeadm feature gates mutation (#10154)
- clusterctl: Add k0smotron provider (#9991)
- clusterctl: Add public function to create new CRD migrator (#10075)
- Control-plane: Allow mutation of all fields that should be mutable (#9871)
- MachineDeployment: Add MachineSetReady condition to MachineDeployment (#9262)
- MachineDeployment: Taint nodes with PreferNoSchedule during rollouts (#10223)
- MachineHealthCheck: implement annotation to manually mark machines for remediation (#10202)
- Release: Add utility to create git issues on provider repo (#9110)
- Release: Add dependencies section to release notes tool (#10043)
- Testing: Resolve release markers (#9265)
- Testing: Prepare quickstart, capd and tests for the new release including kind bump (#9872)
🐛 Bug Fixes
- API: Use ptr instead of own implementation (#10276)
- API/e2e: Restore v1alpha3/v1alpha4 conversion to fix SSA issue & add e2e test coverage (#10147)
- CAPD: Fix ignition to also set the kube-proxy configuration to skip setting sysctls (#9894)
- CAPD: Remove --enable-hostpath-provisioner flag (#10271)
- CAPD: Remove duplicate fix for btrfs/zfs support (#8376)
- CABPK: Only refresh bootstrap token if needed, requeue in all cases where node hasn't joined yet (#9229)
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#9543)
- ClusterCacheTracker: Use RequeueAfter instead of immediate requeue on ErrClusterLocked to not have exponentially increasing requeue time (#9810)
- clusterctl: Move handlePlugins function call out of init to allow debugging tests (#10200)
- clusterctl: Validate no objects exist from CRDs before deleting them (#9808)
- ClusterResourceSet: Requeue after 1 minute if ErrClusterLocked got hit (#9777)
- Control-plane: KCP should defer remediation when a control plane machine is still provisioning (#9734)
- Devtools: Tilt: Show default cluster-template (#9820)
- e2e: Add wait for MachineList to be available (#10301)
- e2e: Ci: fix unset GINKGO_FOCUS variable (#10085)
- e2e: Make MachinePools and MachineDeployments optional in ApplyClusterTemplateAndWait (#9960)
- e2e: Re-introduce exclude capi-webhook-system to fix test flake (#10157)
- e2e: Calculate correct worker count in clusterctl upgrade test (#9892)
- e2e: Fix finalizers test to not only rely on namespaced name (#9891)
- e2e: retry GetOwnerGraph in owner references test on certificate errors (#10201)
- IPAM: Fix webhooks using mixed api versions (#9861)
- KCP: Skip checking
clusterConfiguration.dns
fields when KCP checking MachineNeedRollout (#9857) - Logging: Improve log k/v pairs and a improve/drop a few log lines (#9813)
- Machine: Bubble up machine drain condition in
MachinesReadyCondition
(#9355) - Machine: Watch external objects for machine before deleting (#10041)
- MachinePool: Fix TestReconcileMachinePoolScaleToFromZero flakes (#9745)
- Release: Fix Community meeting area formatting in release notes (#9784)
- Release: Fix defaulting logic in release notes tool (#9958)
- Release: Fix documentation area comparison in release notes (#9769)
- Release: Fix kubeadm bootstrap prefix in release notes (#9814)
- Release: Fix wrong branch name display for weekly update script (#9918)
- Runtime SDK: Use keys/values structured log interface (#9998)
- Testing: Revert "Watch for Cluster resources in topology MD controller" (#9985)
- Testing: Reverting ginkgo.show-node-events to ginkgo.progress (#10214)
- Testing: fix flaky test TestPatch/Test patch with Machine (#9914)
- Testing: wait for topology to get rolled out before continuing with scaling checks (#9819)
- util: Add tests and update provider_issues.go (#10264)
🌱 Others
- API: Stop relying on GVK being set on regular typed objects (#9956)
- Bootstrap: Add MachinePool test for switching bootstrap config to another ready/non-ready object with different name (#9616)
- CABPK: Add pod metadata to capbk manager (#10208)
- CAPD: Feat: make docker machine bootstrap timeout configurable (#9952)
- CAPD: Remove requeues in DockerMachinePool (#9725)
- CAPD: Support configuring ExtraPortMappings for the kind cluster (#10046)
- CAPIM: Add namespaces to the list of resource handled by the in-memory API server (#10297)
- CAPIM: Allow using different resource group and listener name with the in memory server (#10096)
- CAPIM: Make in memory API server more tolerant when starting (#10211)
- CAPIM: Make in memory runtime and server accessible from outside (#9986)
- CAPIM: Test/inmemory: use port only to identify the wcl to make port-forward… (#10245)
- CI: Add fail fast to DumpResourcesForCluster in case of no route to host (#10204)
- CI: Added go directive test (#10261)
- CI: Bump conversion-gen to v0.29.0 (#10012)
- CI: Bump go-apidiff to v0.8.2 (#10011)
- CI: Bump govulncheck to v1.0.4 (#10274)
- CI: Bump kpromo to v4.0.5 (#10140)
- CI: Bump kubebuilder envtest to 1.29.0 (#10013)
- CI: DumpResourcesForCluster should fail fast for i/o errors (#10238)
- CI: Ensure build images contains correct binary and for correct architecture (#9932)
- CI: Fix Make target generate-go-openapi (#10161)
- CI: Fix TestPatchNode flake (#10287)
- CI: Hack/prowjob-gen skip creating empty files (#10022)
- CI: Hack: implement generator for prowjobs (#9937)
- CI: Makefile: bump dependencies (#10236)
- CI: bump WorkloadKubernetesVersion for v1.6 clusterctl upgrade test (#10017)
- CI: adjust capd dockerfile so the binary exposes the package in the built binraries path variable (#10030)
- CI: Update GH actions to work with new release-1.6 branch (#9708)
- ClusterClass: Add ClusterClass variables metadata (#10308)
- ClusterClass: Add unit tests for MachinePools for webhooks and cc controller (#10055)
- ClusterClass: Add unit tests for MachinePools in topology/scope package (#10052)
- ClusterClass: Implement topology validations for topology kubernetes version upgrades (#10063)
- ClusterClass: Webhooks: use the alias for ClusterCacheTrackerReader instead of the internal reference (#10309)
- clusterctl: Add 0 default to worker-machine-count help (#10203)
- clusterctl: Add completion for fish shell (#9950)
- clusterctl: Add hivelocity infra provider to clusterctl (#10168)
- clusterctl: Add in-cluster ipam provider (#8811)
- clusterctl: Add Proxmox provider quickstart (#9798)
- clusterctl: Better verbose logging on override path (#10180)
- clusterctl: Bump cert-manager to 1.14.2 (#10126)
- clusterctl: Bump cert-manager to 1.14.4 (#10267)
- clusterctl: Bump cert-manager to v1.14.1 (#10113)
- clusterctl: Clarify rules for adding new clusterctl default providers (#9975)
- clusterctl: Deprecate clusterctl alpha topology plan (#10139)
- clusterctl: Replace context.TODO() from clusterctl proxy.go (#9776)
- Community meeting: Move CecileRobertMichon to emeritus (#10042)
- Community meeting: Move ykakarap to emeritus approvers (#10000)
- Community meeting: Promote chrischdi to Cluster API maintainer (#9997)
- Dependency: Bump
github.com/docker/docker
from 24.0.7 -> 25.0.0 (#10057) - Dependency: Bump
golangci-lint
to v1.56.1 (#10124) - Dependency: Bump controller-runtime to v0.17.1 (#10131)
- Dependency: Bump controller-runtime to v0.17.2 (#10162)
- Dependency: Bump controller-tools to v0.14 (#9987)
- Dependency: Bump crypto dep version (#9938)
- Dependency: Bump github.com/onsi/ginkgo/v2 from 2.16.0 to 2.17.0 (#10284)
- Dependency: Bump github.com/onsi/gomega from 1.31.1 to 1.32.0 (#10285)
- Dependency: Bump Go to 1.21.5 (#9900)
- Dependency: Bump go version to 1.21.8 (#10235)
- Dependency: Bump kind version to v0.22.0 (#10094)
- Dependency: Bump protobuf to v1.33.0 to address CVEs (#10248)
- Dependency: Bump the kubernetes group to v0.28.5 (#9933)
- Dependency: Bump the kubernetes group with 8 updates (#10286)
- Dependency: Bump to Go 1.20.12 (#9840)
- Dependency: Bump github.com/docker/docker from 25.0.4+incompatible to 25.0.5+incompatible (#10302)
- Dependency: Go.mod: bump github.com/cloudflare/circl to v1.3.7 (#10001)
- Devtools: Add missing folder to clean-tilt make target (#9934)
- Devtools: Allow tilt provider with pre-build images (#10244)
- Devtools: Explicitly set golangci config for sub modules (#9821)
- Devtools: Fix variables names in Tiltfile (#9811)
- Devtools: Implement privileged namespace security policy update for tilt-prepare (#10178)
- Devtools: Simplify testing nightly builds with clusterctl (#10018)
- Devtools: Small improvements to tilt (#9936)
- e2e: Add conformance e2e tests (#10060)
- e2e: Add DeepCopy method for E2EConfig (#9988)
- e2e: Add PostCreateNamespace hook to E2E tests (#10067)
- e2e: Add test util to resolve Kuber...
v1.7.0-beta.0
🚨 This is a BETA RELEASE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Enable kubeadm feature gates mutation
Deprecation Warning
- The API version
v1alpha4
has been completely removed in this release.
More details about the release
👌 Kubernetes version support
- Management Cluster: v1.26.x -> v1.29.x
- Workload Cluster: v1.24.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.0
📈 Overview
- 264 new commits merged
- 4 breaking changes
⚠️ - 9 feature additions ✨
- 33 bugs fixed 🐛
📝 Proposals
- MachinePool: Update MachinePool Machines proposal with diagrams (#9664)
⚠️ Breaking Changes
- API: Remove v1alpha4 API Version (#9939)
- Dependency: Bump to controller-runtime v0.17.0 & k8s.io v0.29 (#9964)
- Logging: Make event recorder names consistent for KCP and topology controller (#9862)
- KCP/MachineSet: Objects generated by KCP, MachineSets and MachinePools will now consistently use machine name (#9833)
✨ New Features
- API: Enable kubeadm feature gates mutation (#10154)
- clusterctl: Add k0smotron provider (#9991)
- clusterctl: Add public function to create new CRD migrator (#10075)
- Control-plane: KCP: Allow mutation of all fields that should be mutable (#9871)
- MachineDeployment: Add MachineSetReady condition to MachineDeployment (#9262)
- Release: Add utility to create git issues on provider repo (#9110)
- Release: Add dependencies section to release notes tool (#10043)
- Testing: Resolve release markers (#9265)
- Testing: V1.29: Prepare quickstart, capd and tests for the new release including kind bump (#9872)
🐛 Bug Fixes
- CAPD: Fix ignition to also set the kube-proxy configuration to skip setting sysctls (#9894)
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#9543)
- ClusterCacheTracker: Use RequeueAfter instead of immediate requeue on ErrClusterLocked to not have exponentially increasing requeue time (#9810)
- clusterctl: Move handlePlugins function call out of init to allow debugging tests (#10200)
- clusterctl: Validate no objects exist from CRDs before deleting them (#9808)
- ClusterResourceSet: Requeue after 1 minute if ErrClusterLocked got hit (#9777)
- Control-plane: KCP should defer remediation when a control plane machine is still provisioning (#9734)
- Devtools: Tilt: Show default cluster-template (#9820)
- e2e: Ci: fix unset GINKGO_FOCUS variable (#10085)
- e2e: Make MachinePools and MachineDeployments optional in ApplyClusterTemplateAndWait (#9960)
- e2e: Re-introduce exclude capi-webhook-system to fix test flake (#10157)
- e2e: Test/e2e: Calculate correct worker count in clusterctl upgrade test (#9892)
- e2e: Test: Fix finalizers test to not only rely on namespaced name (#9891)
- e2e: Test: retry GetOwnerGraph in owner references test on certificate errors (#10201)
- IPAM: Fix webhooks using mixed api versions (#9861)
- KCP: Skip checking
clusterConfiguration.dns
fields when KCP checking MachineNeedRollout (#9857) - Logging: Improve log k/v pairs and a improve/drop a few log lines (#9813)
- Machine: Bubble up machine drain condition in
MachinesReadyCondition
(#9355) - Machine: Watch external objects for machine before deleting (#10041)
- MachinePool: Fix TestReconcileMachinePoolScaleToFromZero flakes (#9745)
- API/e2e: Restore v1alpha3/v1alpha4 conversion to fix SSA issue & add e2e test coverage (#10147)
- CABPK: Only refresh bootstrap token if needed, requeue in all cases where node hasn't joined yet (#9229)
- Release: Fix Community meeting area formatting in release notes (#9784)
- Release: Fix defaulting logic in release notes tool (#9958)
- Release: Fix documentation area comparison in release notes (#9769)
- Release: Fix kubeadm bootstrap prefix in release notes (#9814)
- Release: Fix wrong branch name display for weekly update script (#9918)
- Runtime SDK: Use keys/values structured log interface (#9998)
- Testing: Revert "Watch for Cluster resources in topology MD controller" (#9985)
- Testing: Reverting ginkgo.show-node-events to ginkgo.progress (#10214)
- Testing: Ssa: fix flaky test TestPatch/Test patch with Machine (#9914)
- Testing: Test: wait for topology to get rolled out before continuing with scaling checks (#9819)
🌱 Others
- API: Stop relying on GVK being set on regular typed objects (#9956)
- Bootstrap: Add MachinePool test for switching bootstrap config to another ready/non-ready object with different name (#9616)
- CABPK: Add pod metadata to capbk manager (#10208)
- CAPD: Feat: make docker machine bootstrap timeout configurable (#9952)
- CAPD: Remove requeues in DockerMachinePool (#9725)
- CAPD: Test/e2e: Support configuring ExtraPortMappings for the kind cluster (#10046)
- CAPD: Remove duplicate fix for btrfs/zfs support (#8376)
- CAPIM: Allow using different resource group and listener name with the in memory server (#10096)
- CAPIM: Make in memory API server more tolerant when starting (#10211)
- CAPIM: Make in memory runtime and server accessible from outside (#9986)
- CI: Add fail fast to DumpResourcesForCluster in case of no route to host (#10204)
- CI: Bump conversion-gen to v0.29.0 (#10012)
- CI: Bump go-apidiff to v0.8.2 (#10011)
- CI: Bump kpromo to v4.0.5 (#10140)
- CI: Bump kubebuilder envtest to 1.29.0 (#10013)
- CI: DumpResourcesForCluster should fail fast for i/o errors (#10238)
- CI: Ensure build images contains correct binary and for correct architecture (#9932)
- CI: Fix Make target generate-go-openapi (#10161)
- CI: Hack/prowjob-gen skip creating empty files (#10022)
- CI: Hack: implement generator for prowjobs (#9937)
- CI: Makefile: bump dependencies (#10236)
- CI: Test/e2e: bump WorkloadKubernetesVersion for v1.6 clusterctl upgrade test (#10017)
- CI: Test: adjust capd dockerfile so the binary exposes the package in the built binraries path variable (#10030)
- CI: Update GH actions to work with new release-1.6 branch (#9708)
- ClusterClass: Add unit tests for MachinePools for webhooks and cc controller (#10055)
- ClusterClass: Implement topology validations for topology kubernetes version upgrades (#10063)
- clusterctl: Add 0 default to worker-machine-count help (#10203)
- clusterctl: Add completion for fish shell (#9950)
- clusterctl: Add hivelocity infra provider to clusterctl (#10168)
- clusterctl: Add in-cluster ipam provider (#8811)
- clusterctl: Add Proxmox provider quickstart (#9798)
- clusterctl: Better verbose logging on override path (#10180)
- clusterctl: Bump cert-manager to 1.14.2 (#10126)
- clusterctl: Bump cert-manager to v1.14.1 (#10113)
- clusterctl: Clarify rules for adding new clusterctl default providers (#9975)
- clusterctl: Deprecate clusterctl alpha topology plan (#10139)
- clusterctl: Replace context.TODO() from clusterctl proxy.go (#9776)
- Community meeting: Move CecileRobertMichon to emeritus (#10042)
- Community meeting: Move ykakarap to emeritus approvers (#10000)
- Community meeting: Promote chrischdi to Cluster API maintainer (#9997)
- Dependency: Bump
github.com/docker/docker
from 24.0.7 -> 25.0.0 (#10057) - Dependency: Bump
golangci-lint
to v1.56.1 (#10124) - Dependency: Bump controller-runtime to v0.17.1 (#10131)
- Dependency: Bump controller-runtime to v0.17.2 (#10162)
- Dependency: Bump controller-tools to v0.14 (#9987)
- Dependency: Bump crypto dep version (#9938)
- Dependency: Bump Go to 1.21.5 (#9900)
- Dependency: Bump go version to 1.21.8 (#10235)
- Dependency: Bump kind version to v0.22.0 (#10094)
- Dependency: Bump protobuf to v1.33.0 to address CVEs (#10248)
- Dependency: Bump the kubernetes group to v0.28.5 (#9933)
- Dependency: Bump to Go 1.20.12 (#9840)
- Dependency: Go.mod: bump github.com/cloudflare/circl to v1.3.7 (#10001)
- Devtools: Add missing folder to clean-tilt make target (#9934)
- Devtools: Allow tilt provider with pre-build images (#10244)
- Devtools: Explicitly set golangci config for sub modules (#9821)
- Devtools: Fix variables names in Tiltfile (#9811)
- Devtools: Simplify testing nightly builds with clusterctl (#10018)
- Devtools: Small improvements to tilt (#9936)
- e2e: Add conformance e2e tests (#10060)
- e2e: Add DeepCopy method for E2EConfig (#9988)
- e2e: Add PostCreateNamespace hook to E2E tests (#10067)
- e2e: Add test util to resolve Kubernetes versions (#9995)
- e2e: Allow to specify cluster name for E2E quick-start (#10088)
- e2e: Bump cluster-autoscaler to v1.29.0 (#9942)
- e2e: Drop duplicated scale test (#9968)
- e2e: Fix ci-latest test to actually use ci latest (#10080)
- e2e: Improve output of exec.KubectlApply (#9737)
- e2e: Make etcd and CoreDNS optional in upgrade and self-hosted tests (#9963)
- e2e: Test/framework add WatchDaemonSetLogsByLabelSelector method (#9984)
- e2e: Test/framework: expose CopyAndAmendClusterctlConfig function (#10086)
- e2e: Test: combine Finalizers tests to default quick start tests (#10039)
- e2e: Use --wait-providers in test framework InitWithBinary func (#10149)
- e2e: Use manager in test extension (#10097)
- e2e: Add scale testing for upgrades (#9077)
- Machine: Be more explicit when skipping node deletion (#10137)
- Machine: Mark Machine healthy condition as unknown if we can't list wl nodes (#9864)
- MachineDeployment: Set revision on machinedeployment and patch via defer (#10160)
- MachinePool: Use SSA Patch to create machines in MP controller (#9791)
- MachineSet: MS: improve replica defaulting for autoscaler (#9649)
- KCP/MachineSet: KCP/MS remove hardcoded WithStepCounterIf(false) (#9772)
- Release: Add integration test for release notes tool (#9617)
- Release: Bump kube...
v1.6.3
👌 Kubernetes version support
- Management Cluster: v1.25.x -> v1.29.x
- Workload Cluster: v1.23.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.2
📈 Overview
- 14 new commits merged
- 2 bugs fixed 🐛
🐛 Bug Fixes
- CAPD: Fix(capd): remove hack for btrfs/zfs support (#10192)
- e2e: Test: retry GetOwnerGraph in owner references test on certificate errors (#10217)
🌱 Others
- CABPK: Add pod metadata to capbk manager (#10212)
- clusterctl: Add 0 default to worker-machine-count help (#10205)
- clusterctl: Add hivelocity infra provider to clusterctl (#10168)
- Dependency: Bump go version to 1.21.8 (#10246)
- Dependency: Bump protobuf to v1.33.0 to address CVEs (#10249)
- Release: Improve release-staging build (#10190)
- Release: Read in dockerfiles from stdin (#10209)
📖 Additionally, there have been 4 contributions to our documentation and book. (#10230, #10241, #10243, #10260)
Dependencies
Added
Nothing has changed.
Changed
- google.golang.org/protobuf: v1.31.0 → v1.33.0
Removed
Nothing has changed.
Thanks to all our contributors! 😊
v1.5.7
👌 Kubernetes version support
- Management Cluster: v1.24.x -> v1.28.x
- Workload Cluster: v1.22.x -> v1.28.x
More information about version support can be found here
Changes since v1.5.6
📈 Overview
- 8 new commits merged
- 1 bug fixed 🐛
🐛 Bug Fixes
- e2e: Test: retry GetOwnerGraph when having certificate issues (#10218)
🌱 Others
- CABPK: Add pod metadata to capbk manager (#10213)
- Dependency: Bump go version to 1.21.8 (#10247)
- Dependency: Bump protobuf to v1.33.0 to address CVEs (#10250)
- Release: Improve release-staging build (#10227)
- Release: Read in dockerfiles from stdin (#10210)
📖 Additionally, there have been 2 contributions to our documentation and book. (#10234, #10259)
Dependencies
Added
Nothing has changed.
Changed
- google.golang.org/protobuf: v1.31.0 → v1.33.0
Removed
Nothing has changed.
Thanks to all our contributors! 😊
v1.6.2
Highlights
⚠️ Warning: This release fixes a bug (#10051) that was introduced in v1.6.0, which caused a regression in the conversion of v1alpha3/v1alpha4 objects. It is recommended to upgrade to v1.6.2 to avoid the issue.
👌 Kubernetes version support
- Management Cluster: v1.25.x -> v1.29.x
- Workload Cluster: v1.23.x -> v1.29.x
More information about version support can be found here
Changes since v1.6.1
📈 Overview
- 16 new commits merged
- 3 bugs fixed 🐛
🐛 Bug Fixes
- [API/e2e]: Restore v1alpha3/v1alpha4 conversion to fix SSA issue & add e2e test coverage (#10151)
⚠️ Warning: This change is a fix for the conversion bug that was introduced in v1.6.0.
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#10064)
- Machine: Watch external objects for machine before deleting (#10177)
🌱 Others
- clusterctl: Bump cert-manager to v1.14.2 (#10120) (#10127)
- clusterctl: Clarify rules for adding new clusterctl default providers (#10109)
- Community meeting: Promote chrischdi to Cluster API maintainer (#10089)
- Dependency: Bump controller runtime v0.16.5 (#10163)
- Dependency: Bump Go to 1.21.5 (#10152)
- e2e: Use manager in test extension (#10106)
- Testing: Print conformance image used in kubetest (#10081)
📖 Additionally, there have been 4 contributions to our documentation and book. (#10024, #10047, #10105, #10116)
Thanks to all our contributors! 😊
v1.5.6
👌 Kubernetes version support
- Management Cluster: v1.24.x -> v1.28.x
- Workload Cluster: v1.22.x -> v1.28.x
More information about version support can be found here
Changes since v1.5.5
📈 Overview
- 6 new commits merged
- 1 bug fixed 🐛
🐛 Bug Fixes
- ClusterCacheTracker: Fix ClusterCacheTracker memory leak (#10065)
🌱 Others
- clusterctl: Bump cert-manager to v1.14.2 (#10121) (#10128)
- Community meeting: Promote chrischdi to Cluster API maintainer (#10090)
- Dependency: Bump Go to 1.21.5 (#10153)
📖 Additionally, there has been 1 contribution to our documentation and book. (#10117)
Thanks to all our contributors! 😊
v1.6.1
👌 Kubernetes version support
- Management Cluster: v1.25.x -> v1.29.x
- Workload Cluster: v1.23.x -> v1.29.x
More information about version support can be found here
Highlights
- Kubernetes v1.29 is now supported
Changes since v1.6.0
📈 Overview
- 30 new commits merged
- 1 feature addition ✨
- 9 bugs fixed 🐛
✨ New Features
- Control-plane: KCP: Allow mutation of all fields that should be mutable (#9884)
🐛 Bug Fixes
- CAPD: Fix ignition to also set the kube-proxy configuration to skip setting sysctls (#9895)
- clusterctl: Validate no objects exist from CRDs before deleting them (#9834)
- e2e: Make MachinePools and MachineDeployments optional in ApplyClusterTemplateAndWait (#9962)
- e2e: Test: Fix finalizers test to not only rely on namespaced name (#10004)
- e2e: Test: wait for topology to get rolled out before continuing with scaling checks (#9827)
- IPAM: Fix webhooks using mixed api versions (#9863)
- Logging: Improve log k/v pairs and a improve/drop a few log lines (#9880)
- MachinePool: Fix TestReconcileMachinePoolScaleToFromZero flakes (#9822)
- Testing: SSA: fix flaky test TestPatch/Test patch with Machine (#9915)
🌱 Others
- CI: Bump kubebuilder envtest to 1.29.0 (#10014)
- Dependency: Bump golang.org/x/crypto to v0.17.0 (#9943)
- Dependency: Bump to Go 1.20.12 (#9841)
- Dependency: Go.mod: bump github.com/cloudflare/circl to v1.3.7 (#10002)
- e2e: Add DeepCopy method for E2EConfig (#9989)
- e2e: Add test util to resolve Kubernetes versions (#9996)
- e2e: Bump cluster-autoscaler to v1.29.0 (#9948)
- e2e: Drop duplicated scale test (#9976)
- e2e: Make etcd and CoreDNS optional in upgrade and self-hosted tests (#9965)
- e2e: Test/framework add WatchDaemonSetLogsByLabelSelector method (#9994)
- Testing: add dynamic finalizer assertions for e2e framework (#10003)]
- Testing: v1.29: Prepare quickstart, capd and tests for the new release including kind bump (#9890)
📖 Additionally, there have been 8 contributions to our documentation and book. (#9815, #9816, #9824, #9830, #9878, #9902, #9951, #9979)
Thanks to all our contributors! 😊