This document provides an overview over relevant changes between Cluster API v1.2 and v1.3 for maintainers of providers and consumers of our Go API.
- The Go version used by Cluster API is Go 1.19.x
Note: Only the most relevant dependencies are listed,
in Cluster API are kept in sync with the versions used by
- sigs.k8s.io/controller-runtime: v0.12.x => v0.13.x
- sigs.k8s.io/controller-tools: v0.9.x => v0.10.x
- sigs.k8s.io/kind: v0.14.x => v0.16.x
- k8s.io/*: v0.24.x => v0.25.x (derived from controller-runtime)
- github.com/onsi/ginkgo: v1.x => v2.x (derived from controller-runtime)
- k8s.io/kubectl: v0.24.x => 0.25.x
sigs.k8s.io/cluster-api/controllers/external.CloneTemplatehas been deprecated and will be removed in a future release. Please use
clusterctl init --list-imageshas been deprecated and will be removed in a future release. Please use
clusterctl init list-imagesinstead.
clusterctl backuphas been deprecated. Please use
clusterctl move --to-directoryinstead.
clusterctl restorehas been deprecated. Please use
clusterctl move --from-directoryinstead.
Restore. Please use
Restore. Adds replacements functions
MachinesByCreationTimestamptype has been removed.
ClusterCacheReconciler.Loghas been removed. Use the logger from the context instead.
- A new timeout
nodeVolumeDetachTimeouthas been introduced that defines how long the controller will spend on waiting for all volumes to be detached. The default value is 0, meaning that the volume can be detached without any time limitations.
- A new annotation
machine.cluster.x-k8s.io/exclude-wait-for-node-volume-detachhas been introduced that allows explicitly skip the waiting for node volume detaching.
- e2e tests are upgraded to use Ginkgo v2 (v2.1.4) and Gomega v1.20.0. Providers who use the test framework from this release will also need to upgrade, because Ginkgo v2 can’t be imported alongside v1. Please see the Ginkgo upgrade guide, and note:
- Custer API introduced new logging guidelines. All reconcilers in the core repository were updated to log the entire object hierarchy. It would be great if providers would be adjusted as well to make it possible to cross-reference log entries across providers (please see CAPD for an infra provider reference implementation).
CreateLogFileInputstruct in the E2E test framework for clusterctl has been renamed to
OpenLogFileInputbecause the function will now append to the logfile instead of truncating the content.
Movefunction in E2E test framework for clusterctl has been modified to:
- print the
clusterctl movecommand including the arguments similar to
- log the output to the a
clusterctl-move.logfile at the subdirectory
- print the