-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Closed
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.priority/critical-urgentHighest priority. Must be actively worked on as someone's top priority right now.Highest priority. Must be actively worked on as someone's top priority right now.triage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.
Milestone
Description
Please see the corresponding sections of the role-handbooks for documentation of individual tasks.
Tasks
Notes:
- Weeks are only specified to give some orientation.
- The following is based on the v1.9 release cycle. Modify according to the tracked release cycle.
Week 1:
- [Release Lead] Finalize release schedule and team
- [Release Lead] Add/remove release team members
- [Release Lead] Prepare main branch for development of the new release
- [Communications Manager] Add docs to collect release notes for users and migration notes for provider implementers
- [Communications Manager] Update supported versions
Week 1 to 4:
- [Release Lead] [Track] Remove previously deprecated code
Week 4:
Week 8:
Week 11 to 12:
- [Release Lead] [Track] Bump dependencies
- 🌱 Bump Go to v1.22.8 version #11357
Week 12:
- [Release Lead] Cut the v1.9.0-beta.0 release
- [Release Lead] Cut the v1.7.8 & v1.8.5 releases
- [Release Lead] Create a new GitHub milestone for the next release
- [Communications Manager] Communicate beta to providers
Week 13:
- KubeCon idle week
Week 14:
- [Release Lead] Cut the v1.9.0-beta.1 release
- [Release Lead] Set a tentative release date for the next minor release
- [Release Lead] Assemble next release team
- [Release Lead] Select release lead for the next release cycle
Week 15:
- [Release Lead] Cut the v1.9.0-rc.0 release
- [Release Lead] Update milestone applier and GitHub Actions
- [CI Manager] Setup jobs and dashboards for the release-1.9 release branch
- [Communications Manager] Ensure the book for the new release is available
Week 16:
- [Release Lead] Cut the v1.9.0-rc.1 release
Week 17:
- [Release Lead] Cut the v1.9.0 release
- [Release Lead] Cut the v1.7.9 & v1.8.6 releases
- [Release Lead] Organize release retrospective
- [Communications Manager] Change production branch in Netlify to the new release branch
- [Communications Manager] Update clusterctl links in the quickstart
Continuously:
- [Release lead] Maintain the GitHub release milestone
- [Release lead] Bump the Go version
- [Communications Manager] Communicate key dates to the community
- [Communications Manager] Improve release process documentation
- [Communications Manager] Maintain and improve user facing documentation about releases, release policy and release calendar
- [CI Manager] Monitor CI signal
- [CI Manager] Reduce the amount of flaky tests
If and when necessary:
- [Release Lead] [Track] Bump the Cluster API apiVersion
- [Release Lead] [Track] Bump the Kubernetes version
- [Release Lead] Track Release and Improvement tasks
/priority critical-urgent
/kind feature
Reminder!
Add to release notes:
Highlights
- Bumped to controller-runtime v0.19, k8s.io/* v0.31, controller-gen v0.16
- Improvements to status fields: (Tracking issue for Improving status in CAPI resources - Phase 1 #11105)
- Proposal: Improving status in CAPI resources
- Just a few highlights:
- Overhaul of our contract documentation: Provider contracts
- Implemented v1beta2 conditions for core Cluster API objects
- Huge improvements to
Deleting
conditions of Cluster, KCP, MD, MS and Machines - Added
Available
conditions to Cluster, KCP and MD - Added
ControlPlaneInitialized
,ControlPlaneAvailable
,WorkersAvailable
,RemoteConnectionProbe
, conditions to Cluster - Added
UpToDate
conditions to KCP and MD Machines - Added
ScalingUp
,ScalingDown
,Remediating
,MachinesReady
,MachinesUpToDate
conditions to Cluster, KCP, MD and MS - Significantly improved
Available
,EtcdClusterHealthy
andControlPlaneComponentsHealthy
conditions on KCP - Added
Paused
conditions - Improved counter fields for Cluster, KCP, MD, MS
- Added utils and extended patch helper for v1beta2 conditions
- ClusterCache supersedes the now deprecated ClusterCacheTracker (Improve ClusterCacheTracker to address fundamental limitations #11272)
- ClusterClass: Support oneOf/anyOf/allOf/not in variable schemas (✨ Add support for oneOf/anyOf/allOf/not ClusterClass variable schema constructs #10637)
- Improved logging in predicates (🌱 Log controller name in predicates #10959 ⚠️ Fix object logging in predicates #11239 ⚠️ Fix object logging in ResourceHasFilterLabel, ResourceNotPaused & ResourceNotPausedAndHasFilterLabel predicates #11188)
- KubeadmControlPlane: Implement pre-terminate hook for clean Machine Deletion (🐛 KCP: remove etcd member in pre-terminate hook #11137)
- KubeadmControlPlane: NamingStrategy for Machines (🌱 Add NamingStrategy to KubeadmControlPlane #11123)
- MachineSetPreflightChecks feature got promoted to beta (✨ MachineSet: Promote MachineSetPreflightChecks to Beta #11228)
- MachineSet/MachineDeployment: Foreground deletion for MachineDeployments and MachineSets (🌱 Foreground deletion for MachineDeployments and MachineSets #11174)
- Machine: Improvements to Node drain:
- Improve Node drain observability (✨ Refactor node drain #11074 📖 Add Node drain documentation #11121): documentation: Machine deletion process
- MachineDrainRules Configurable Machine drain behavior (Configurable Machine drain behavior #11240): Proposal: MachineDrainRules
- Stop waiting for detachment of volumes belonging to Pods ignored during drain (⚠️ Machine: ignore attached Volumes referred by pods ignored during drain #11246 🌱 Add feature gate to consider VolumeAttachments when waiting for volume detach #11386)
- As usual, significantly improved e2e test framework & coverage (e.g. ✨ Detect panics in e2e tests #11066 🌱 Export scale e2e test to make it reusable by providers #11333 🌱 test: add coverage to find issues running on the next kubernetes release as management cluster #10984 🌱 test: improve autoscale tests for to/from zero and running autoscaler in bootstrap cluster #11082 🌱 test: use cluster without worker definition for kcp only test #11212 🌱 Improve node drain e2e test #11127 🌱 Extend Node drain e2e test to cover MachineDrainRules #11362)
- New providers in clusterctl: Canonical (🌱 Add Canonical Kubernetes providers #11337), Nutanix (🌱 clusterctl: add nutanix ipam & runtime extensions providers #11135), Vultr (🌱 Add vultr infrastructure provider #11091)
Deprecation and Removals Warning
- API: Deprecated FailureMessage and FailureReason fields (🌱 api: deprecate FailureMessage and FailureReason #11317)
- The ClusterCacheTracker component has been deprecated (🌱 Deprecate ClusterCacheTracker #11312 🌱 Deprecate CCT ErrClusterLocked #11340), please use the new ClusterCache instead.
- For more context and examples for how to use it, see PR: Introduce new ClusterCache and the corresponding issue
- Please note:
- The DisabledFor option (previously ClientUncachedObjects) is not defaulted to &corev1.ConfigMap & &corev1.Secret anymore, thus it’s now necessary to explicitly set DisabledFor to avoid caching ConfigMaps and Secrets.
- SecretClient and UserAgent are now mandatory options, please take a look at the corresponding godoc.
- The
--clustercachetracker-concurrency
,--clustercachetracker-client-qps
and--clustercachetracker-client-burst
flags on all core CAPI controllers have been renamed to--clustercache-concurrency
,--clustercache-client-qps
and--clustercache-client-burst
- The deprecated
--metrics-bind-addr
flag has been removed (🌱 Remove previously deprecated --metrics-bind-addr flag #11140) - Deprecated obsolete
errors
package (🌱 Deprecate obsolete errors pkg #10798) - Deprecated
ClusterCreateInfraReady
andClusterUnpausedAndInfrastructureReady
predicates (🌱 Deprecate old pausing predicates #11300)
Metadata
Metadata
Assignees
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.priority/critical-urgentHighest priority. Must be actively worked on as someone's top priority right now.Highest priority. Must be actively worked on as someone's top priority right now.triage/acceptedIndicates an issue or PR is ready to be actively worked on.Indicates an issue or PR is ready to be actively worked on.