v1.0.0
v1.0.0, The production ready release
Welcome to v1.0 / v1beta1. This release is the result of growing adoption, feature maturity, and a strong commitment to community and inclusive innovation. We would like to thank all our contributors that made the Cluster API project what it is today.
Read the CNCF blog post announcement to learn more about the experience of companies using Cluster API in production.
⚠️ Breaking Changes
- Introduce
v1beta1
API types (#5248) - Controller Managers leader election has been migrated to Kubernetes
v1.Lease
object instead of configmaps (#5388) — Impact: No impact forclusterctl
users, the CLI automatically scales down older manager deployments before applying the new ones. For users not using clusterctl, you should make sure to manually scale down the older deployment first before applying the new components. - Remove Condition suffix from EtcdClusterHealthyCondition name (#5344) — Impact: Use
EtcdClusterHealthy
. - Remove Machine
status.version
(#5315) — Impact: the field was unused before and never set. - Make
condition.lastTransitionTime
required (#5303) - ClusterToObjectsMapper: replace
runtime.Object
parameter withclient.ObjectList
(#5391) - Move
controllers/mdutil
into an internal package (#5297) - Upgrade to Controller Runtime v0.10, Controller Tools v0.7, Kubernetes v1.22, and dependencies (#5249, #5402, #5382)
🐛 Bug Fixes
- KubeadmControlPlane: should cleanup OwnerRemediated condition if the machine goes back to healthy (#5381)
- Clusterctl: fix Certificate target namespace (#5372)
- Use the watch filter label when watching resources (#5358)
- Propagate MachineSet's
spec.template.annotations
to bootstrap config (#5365) - Fix CAPD v1alpha3 => v1beta1 conversion (#5360)
- Clusterctl upgrade: ensure old controllers are gone before installing the new ones (#5354)
- KubeadmControlPlane status.updated should be calculated appropriately (#5353)
- ClusterClass: Add permission for updating ClusterClass objects to the topology controller (#5343)
- Clusterctl: enforce provider order during init and upgrade (#5321)
- Testing: Fix Kubernetes v1.22 => latest upgrade e2e (#5313)
- Remove duplicated import statements (#5296)
- Change delete behaviour to respect inventory (#5044)
- Release Tooling: Version calculation script should only use annotated tags (#5270)
- Fix
make serve
on MacOS to not rely on coreutils (#5401)
🌱 Others
- Clusterctl: Add support for v1alpha3 to v1beta1 upgrades (#5271)
- Upgrade cert-manager to 1.5.3 (#5299)
- Add version.Compare with CompareOptions (#5364)
- Add organizations to cert-manager certificates (#5387)
- Allow passing in provider contract and clusterctl binary in the clusterctl upgrade spec (#5377)
- Clusterctl upgrade: enforce that --contract or provider flags have to be set (#5386)
- Add required/default case to API conventions (#5362)
- Add cluster name on printer column on non core types (#5334)
- Update main branch book link (#5335)
- Update netlify config after default branch rename (#5331)
- Testing: improve error logging for clusterctl init/upgrade with binary (#5328)
- Add omitempty to +optional fields, drop omitempty for some status fields (#5305)
- Update errors pkg doc to reflect intended usage (#5317)
- Change a few more references from master branch to main branch (#5312)
- Add missing optional tag to omitempty fields (#5301)
- Add conversion-verifier to always verify conversion code (#5293)
- Remove deprecated items from the codebase for v1beta1 (#5288)
- Add script to install Kind for testing with CAPD (#5232)
- Add composable matchers to internal/testtypes (#5259)
- Change all references to master branch in docs to main branch (#5276)
- Rename default branch to main in scripts (#5275)
- Add Machinepool, DockerMachinePool, ClusterResourceSet, and ClusterResourceSetBinding conversion (#5280, #5267, #5286)
- Clusterclass: use live client to list MachineDeployments (#5274)
- CAPD: Add conversion tests for v1alpha3 and v1alpha4 (#5273)
📖 Additionally, there have been 9 contributions to our documentation and book. (#5374, #5384, #5376, #5366, #5304, #5326, #5278, #5310, #5264)
Thanks to all our contributors! 😊