Releases: kubernetes-sigs/cluster-api-provider-vsphere
Release list
v1.17.0-rc.2
π¨ This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Cluster API provider VSphere is now using Golang 1.26, CR v0.24, CT v0.21, Cluster API v1.14
Changes for CAPV Supervisor mode
- Introduce vm-operator v1alpha6 API - not ready for production - (#4020)
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
Changes for CAPV govmomi mode
- Allow to configure crypto (#3749)
Misc
- Introduce separate API module (#4054)
- Tune controller concurrency and cache timeout for scale (#3893)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Add chained upgrade e2e test (#4014)
- Enable in-place updates e2e test (#4019)
- Add KCP adoption e2e test (#4023)
Deprecation Warning
Important:
- The v1beta1 API version is on track to be unserved in CAPV v1.21. All the consumers of this API version should migrate to v1beta2 ASAP.
Changes since v1.17.0-rc.1
π Overview
- 6 new commits merged
- 2 bugs fixed π
π Bug Fixes
- Apply VM-wide static routes per-device in cloud-init metadata (#4133)
- Scope policies immutability CEL to VSphereMachine (#4146)
π± Others
- Bump gcb-docker-gcloud to a prod image (#4141)
- Bump to CAPI v1.14.0 (#4144)
- Bump to CPI v1.37.0-rc.0 (#4135)
- Start testing with Kubernetes v1.37.0-rc.0 (#4132)
Dependencies
Added
Nothing has changed.
Changed
- sigs.k8s.io/cluster-api/api: v1.14.0-rc.1 β v1.14.0
- sigs.k8s.io/cluster-api: v1.14.0-rc.1 β v1.14.0
Removed
Nothing has changed.
More details about the release
Highlights
- REPLACE ME
Changes since v1.16.0
π Overview
- 132 new commits merged
- 1 breaking change
β οΈ - 15 feature additions β¨
- 15 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Omit apiVersion from PolicyRef (#4127)
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Add conversion webhook wiring for VSphereClusterIdentity CRD (#4106)
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Apply VM-wide static routes per-device in cloud-init metadata (#4133)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fetch zone info from already-placed VM condition message (#3892)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fix image loading for KCP adoption e2e test (#4092)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
- Fix vcsim VirtualMachine reconciler (#4116)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
- Scope policies immutability CEL to VSphereMachine (#4146)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump actions for v1.17 (#4119)
- Bump autoscaler version used for testing (#4095)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPI v1.14.0-rc.0 (#4120)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump dependencies to fix CVEs (#4114)
- Bump envtest to v1.36.0 (#3993)
- Bump gcb-docker-gcloud to a prod image (#4141)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to CAPI v1.14.0 (#4144)
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to CAPI v1.14.0-beta.1 (#4101)
- Bump to CAPI v1.14.0-rc.1 (#4126)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to CPI v1.37.0-beta.0 (#4103)
- Bump to CPI v1.37.0-rc.0 (#4135)
- Bump to Go 1.26.4 (#4044)
- Bump to Go v1.26.5 (#4089)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Migrate from import boss to depguard (#4079)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start testing with Kubernetes v1.37.0-beta.0 (#4111)
- Start testing with Kubernetes v1.37.0-rc.0 (#4132)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use pkgerrors as alias for github.com/pkg/errors & no alias for errors (#4107)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: v0.10.0
- github.com/clipperhouse/uax29/v2: v2.6.0
- github.com/go-openapi/swag/cmdutils: v0.26.0
- github.com/go-openapi/swag/conv: v0.26.0
- github.com/go-openapi/swag/fileutils: v0.26.0
- github.com/go-openapi/swag/jsonname: v0.26.0
- github.com/go-openapi/swag/jsonutils/fixtures_test: v0.26.0
- github.com/go-openapi/swag/jsonutils: v0.26.0
- github.com/go-openapi/swag/loading: v0.26.0
- github.com/go-openapi/swag/mangling: v0.26.0
- github.com/go-openapi/swag/netutils: v0.26.0
- github.com/go-openapi/swag/stringutils: v0.26.0
- github.com/go-openapi/swag/typeutils: v0.26.0
- github.com/go-openapi/swag/yamlutils: v0.26.0
- github.com/go-openapi/testify/enable/yaml/v2: v2.4.2
- github.com/go-openapi/testify/v2: v2.4.2
- github.com/vmware-tanzu/vm-operator/external/tanzu-topology: 46d6f2c
- k8s.io/streaming: v0.36.3
- sigs.k8s.io/cluster-api/api: v1.14.0
Changed
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.31.0 β v1.32.0
- github.com/alecthomas/units: b94a6e3 β 0f3dac3
- github.com/antlr4-go/antlr/v4: [v4...
v1.17.0-rc.1
π¨ This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- Cluster API provider VSphere is now using Golang 1.26, CR v0.24, CT v0.21, Cluster API v1.14
Changes for CAPV Supervisor mode
- Introduce vm-operator v1alpha6 API - not ready for production - (#4020)
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
Changes for CAPV govmomi mode
- Allow to configure crypto (#3749)
Misc
- Introduce separate API module (#4054)
- Tune controller concurrency and cache timeout for scale (#3893)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Add chained upgrade e2e test (#4014)
- Enable in-place updates e2e test (#4019)
- Add KCP adoption e2e test (#4023)
Deprecation Warning
Important:
- The v1beta1 API version is on track to be unserved in CAPV v1.21. All the consumers of this API version should migrate to v1beta2 ASAP.
Changes since v1.17.0-rc.0
π Overview
- 2 new commits merged
- 1 feature addition β¨
β¨ New Features
- Omit apiVersion from PolicyRef (#4127)
π± Others
- Bump to CAPI v1.14.0-rc.1 (#4126)
Dependencies
Added
Nothing has changed.
Changed
- sigs.k8s.io/cluster-api/api: v1.14.0-rc.0 β v1.14.0-rc.1
- sigs.k8s.io/cluster-api: v1.14.0-rc.0 β v1.14.0-rc.1
Removed
Nothing has changed.
More details about the release
Highlights
- REPLACE ME
Changes since v1.16.0
π Overview
- 126 new commits merged
- 1 breaking change
β οΈ - 15 feature additions β¨
- 13 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Omit apiVersion from PolicyRef (#4127)
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Add conversion webhook wiring for VSphereClusterIdentity CRD (#4106)
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fetch zone info from already-placed VM condition message (#3892)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fix image loading for KCP adoption e2e test (#4092)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
- Fix vcsim VirtualMachine reconciler (#4116)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump actions for v1.17 (#4119)
- Bump autoscaler version used for testing (#4095)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPI v1.14.0-rc.0 (#4120)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump dependencies to fix CVEs (#4114)
- Bump envtest to v1.36.0 (#3993)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to CAPI v1.14.0-beta.1 (#4101)
- Bump to CAPI v1.14.0-rc.1 (#4126)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to CPI v1.37.0-beta.0 (#4103)
- Bump to Go 1.26.4 (#4044)
- Bump to Go v1.26.5 (#4089)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Migrate from import boss to depguard (#4079)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start testing with Kubernetes v1.37.0-beta.0 (#4111)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use pkgerrors as alias for github.com/pkg/errors & no alias for errors (#4107)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: v0.10.0
- github.com/clipperhouse/uax29/v2: v2.6.0
- github.com/go-openapi/swag/cmdutils: v0.26.0
- github.com/go-openapi/swag/conv: v0.26.0
- github.com/go-openapi/swag/fileutils: v0.26.0
- github.com/go-openapi/swag/jsonname: v0.26.0
- github.com/go-openapi/swag/jsonutils/fixtures_test: v0.26.0
- github.com/go-openapi/swag/jsonutils: v0.26.0
- github.com/go-openapi/swag/loading: v0.26.0
- github.com/go-openapi/swag/mangling: v0.26.0
- github.com/go-openapi/swag/netutils: v0.26.0
- github.com/go-openapi/swag/stringutils: v0.26.0
- github.com/go-openapi/swag/typeutils: v0.26.0
- github.com/go-openapi/swag/yamlutils: v0.26.0
- github.com/go-openapi/testify/enable/yaml/v2: v2.4.2
- github.com/go-openapi/testify/v2: v2.4.2
- github.com/vmware-tanzu/vm-operator/external/tanzu-topology: 46d6f2c
- k8s.io/streaming: v0.36.3
- sigs.k8s.io/cluster-api/api: v1.14.0-rc.1
Changed
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.31.0 β v1.32.0
- github.com/alecthomas/units: b94a6e3 β 0f3dac3
- github.com/antlr4-go/antlr/v4: v4.13.0 β v4.13.1
- github.com/cncf/xds/go: ee656c7 β dba9d58
- github.com/coredns/corefile-migration: v1.0.31 β v1.0.34
- github.com/coreos/go-oidc: v2.3.0+incompatible β v2.5.0+incompatible
- github.com/coreos/go-systemd/v22: [v22.5.0 β v22.7.0...
v1.17.0-rc.0
π¨ This is a RELEASE CANDIDATE. Use it only for testing purposes. If you find any bugs, file an issue.
Please use the following for release highlights
Highlights
- Cluster API provider VSphere is now using Golang 1.26, CR v0.24, CT v0.21, Cluster API v1.14
Changes for CAPV Supervisor mode
- Introduce vm-operator v1alpha6 API - not ready for production - (#4020)
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
Changes for CAPV govmomi mode
- Allow to configure crypto (#3749)
misc
- Introduce separate API module (#4054)
- Tune controller concurrency and cache timeout for scale (#3893)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Add chained upgrade e2e test (#4014)
- Enable in-place updates e2e test (#4019)
- Add KCP adoption e2e test (#4023)
Deprecation Warning
Important:
- The v1beta1 API version is on track to be unserved in CAPV v1.21. All the consumers of this API version should migrate to v1beta2 ASAP.
Changes since v1.17.0-beta.1
π Overview
- 9 new commits merged
- 2 bugs fixed π
π Bug Fixes
- Add conversion webhook wiring for VSphereClusterIdentity CRD (#4106)
- Fix vcsim VirtualMachine reconciler (#4116)
π± Others
- Bump actions for v1.17 (#4119)
- Bump CAPI v1.14.0-rc.0 (#4120)
- Bump dependencies to fix CVEs (#4114)
- Bump to CPI v1.37.0-beta.0 (#4103)
- Start testing with Kubernetes v1.37.0-beta.0 (#4111)
- Use pkgerrors as alias for github.com/pkg/errors & no alias for errors (#4107)
Dependencies
Added
Nothing has changed.
Changed
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.31.0 β v1.32.0
- github.com/antlr4-go/antlr/v4: v4.13.0 β v4.13.1
- github.com/cncf/xds/go: ee656c7 β dba9d58
- github.com/envoyproxy/go-control-plane/envoy: v1.36.0 β v1.37.0
- github.com/envoyproxy/protoc-gen-validate: v1.3.0 β v1.3.3
- github.com/go-jose/go-jose/v4: v4.1.3 β v4.1.4
- github.com/google/cel-go: v0.26.0 β v0.29.0
- go.etcd.io/etcd/api/v3: v3.6.13 β v3.6.14
- go.etcd.io/etcd/client/pkg/v3: v3.6.13 β v3.6.14
- go.etcd.io/etcd/client/v3: v3.6.13 β v3.6.14
- go.opentelemetry.io/contrib/detectors/gcp: v1.39.0 β v1.43.0
- google.golang.org/genproto/googleapis/api: 9d38bb4 β afd174a
- google.golang.org/genproto/googleapis/rpc: 9d38bb4 β afd174a
- google.golang.org/grpc: v1.80.0 β v1.82.1
- k8s.io/api: v0.36.2 β v0.36.3
- k8s.io/apiextensions-apiserver: v0.36.2 β v0.36.3
- k8s.io/apimachinery: v0.36.2 β v0.36.3
- k8s.io/apiserver: v0.36.2 β v0.36.3
- k8s.io/client-go: v0.36.2 β v0.36.3
- k8s.io/cluster-bootstrap: v0.36.2 β v0.36.3
- k8s.io/code-generator: v0.36.2 β v0.36.3
- k8s.io/component-base: v0.36.2 β v0.36.3
- k8s.io/kms: v0.36.2 β v0.36.3
- k8s.io/streaming: v0.36.2 β v0.36.3
- sigs.k8s.io/cluster-api/api: v1.14.0-beta.1 β v1.14.0-rc.0
- sigs.k8s.io/cluster-api: v1.14.0-beta.1 β v1.14.0-rc.0
Removed
Nothing has changed.
More details about the release
Highlights
- REPLACE ME
Changes since v1.16.0
π Overview
- 124 new commits merged
- 1 breaking change
β οΈ - 14 feature additions β¨
- 13 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Add conversion webhook wiring for VSphereClusterIdentity CRD (#4106)
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fetch zone info from already-placed VM condition message (#3892)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fix image loading for KCP adoption e2e test (#4092)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
- Fix vcsim VirtualMachine reconciler (#4116)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump actions for v1.17 (#4119)
- Bump autoscaler version used for testing (#4095)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPI v1.14.0-rc.0 (#4120)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump dependencies to fix CVEs (#4114)
- Bump envtest to v1.36.0 (#3993)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to CAPI v1.14.0-beta.1 (#4101)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to CPI v1.37.0-beta.0 (#4103)
- Bump to Go 1.26.4 (#4044)
- Bump to Go v1.26.5 (#4089)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Migrate from import boss to depguard (#4079)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start testing with Kubernetes v1.37.0-beta.0 (#4111)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use pkgerrors as alias for github.com/pkg/errors & no alias for errors (#4107)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: v0.10.0
- github.com/clipperhouse/uax29/v2: v2.6.0
- github.com/go-openapi/swag/cmdutils: v0.26.0
- github.com/go-openapi/swag/conv: v0.26.0
- github.com/go-openapi/swag/fileutils: v0.26.0
- github.com/go-openapi/swag/jsonname: v0.26.0
- github.com/go-openapi/swag/jsonutils/fixtures_test: v0.26.0
- github.com/go-openapi/swag/jsonutils: [v0.26.0](https://github.com/go-...
v1.17.0-beta.1
π¨ This is a BETA RELEASE. Use it only for testing purposes. If you find any bugs, file an issue.
Highlights
- REPLACE ME
Changes since v1.17.0-beta.0
π Overview
- 5 new commits merged
- 1 bug fixed π
π Bug Fixes
- Fix image loading for KCP adoption e2e test (#4092)
π± Others
Dependencies
Added
Nothing has changed.
Changed
- github.com/coredns/corefile-migration: v1.0.33 β v1.0.34
- github.com/go-logr/logr: v1.4.3 β v1.4.4
- sigs.k8s.io/cluster-api/api: v1.14.0-beta.0 β v1.14.0-beta.1
- sigs.k8s.io/cluster-api: v1.14.0-beta.0 β v1.14.0-beta.1
Removed
Nothing has changed.
More details about the release
Highlights
- REPLACE ME
Changes since v1.16.0
π Overview
- 115 new commits merged
- 1 breaking change
β οΈ - 14 feature additions β¨
- 11 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fetch zone info from already-placed VM condition message (#3892)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fix image loading for KCP adoption e2e test (#4092)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump autoscaler version used for testing (#4095)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump envtest to v1.36.0 (#3993)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to CAPI v1.14.0-beta.1 (#4101)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to Go 1.26.4 (#4044)
- Bump to Go v1.26.5 (#4089)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Migrate from import boss to depguard (#4079)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: v0.10.0
- github.com/clipperhouse/uax29/v2: v2.6.0
- github.com/go-openapi/swag/cmdutils: v0.26.0
- github.com/go-openapi/swag/conv: v0.26.0
- github.com/go-openapi/swag/fileutils: v0.26.0
- github.com/go-openapi/swag/jsonname: v0.26.0
- github.com/go-openapi/swag/jsonutils/fixtures_test: v0.26.0
- github.com/go-openapi/swag/jsonutils: v0.26.0
- github.com/go-openapi/swag/loading: v0.26.0
- github.com/go-openapi/swag/mangling: v0.26.0
- github.com/go-openapi/swag/netutils: v0.26.0
- github.com/go-openapi/swag/stringutils: v0.26.0
- github.com/go-openapi/swag/typeutils: v0.26.0
- github.com/go-openapi/swag/yamlutils: v0.26.0
- github.com/go-openapi/testify/enable/yaml/v2: v2.4.2
- github.com/go-openapi/testify/v2: v2.4.2
- github.com/vmware-tanzu/vm-operator/external/tanzu-topology: 46d6f2c
- k8s.io/streaming: v0.36.2
- sigs.k8s.io/cluster-api/api: v1.14.0-beta.1
Changed
- github.com/alecthomas/units: b94a6e3 β 0f3dac3
- github.com/coredns/corefile-migration: v1.0.31 β v1.0.34
- github.com/coreos/go-oidc: v2.3.0+incompatible β v2.5.0+incompatible
- github.com/coreos/go-systemd/v22: v22.5.0 β v22.7.0
- github.com/fxamacker/cbor/v2: v2.9.0 β v2.9.1
- github.com/go-logr/logr: v1.4.3 β v1.4.4
- github.com/go-openapi/jsonpointer: v0.21.0 β v0.23.1
- github.com/go-openapi/jsonreference: v0.20.2 β v0.21.5
- github.com/go-openapi/swag: v0.23.0 β v0.26.0
- github.com/golang-jwt/jwt/v5: v5.2.2 β v5.3.0
- github.com/google/pprof: 294ebfa β 545e8a4
- github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus: v1.0.1 β v1.1.0
- github.com/grpc-ecosystem/go-grpc-middleware/v2: v2.3.0 β v2.3.3
- github.com/mattn/go-runewidth: v0.0.16 β v0.0.19
- github.com/olekukonko/errors: v1.1.0 β v1.2.0
- github.com/olekukonko/ll: v0.1.1 β v0.1.6
- github.com/olekukonko/tablewriter: [v1.0.9 β v1.1.4](olekukonko/tablewriter@v1.0.9...v1.1.4...
v1.17.0-beta.0
π¨ This is a BETA RELEASE. Use it only for testing purposes. If you find any bugs, file an issue.
Changes since v1.17.0-alpha.0
π Overview
- 20 new commits merged
- 3 feature additions β¨
- 6 bugs fixed π
β¨ New Features
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
π Bug Fixes
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
π± Others
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to Go v1.26.5 (#4089)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Migrate from import boss to depguard (#4079)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
Dependencies
Added
- github.com/go-openapi/swag/cmdutils: v0.26.0
- github.com/go-openapi/swag/conv: v0.26.0
- github.com/go-openapi/swag/fileutils: v0.26.0
- github.com/go-openapi/swag/jsonname: v0.26.0
- github.com/go-openapi/swag/jsonutils/fixtures_test: v0.26.0
- github.com/go-openapi/swag/jsonutils: v0.26.0
- github.com/go-openapi/swag/loading: v0.26.0
- github.com/go-openapi/swag/mangling: v0.26.0
- github.com/go-openapi/swag/netutils: v0.26.0
- github.com/go-openapi/swag/stringutils: v0.26.0
- github.com/go-openapi/swag/typeutils: v0.26.0
- github.com/go-openapi/swag/yamlutils: v0.26.0
- github.com/go-openapi/testify/enable/yaml/v2: v2.4.2
- github.com/go-openapi/testify/v2: v2.4.2
Changed
- github.com/fxamacker/cbor/v2: v2.9.0 β v2.9.1
- github.com/go-openapi/jsonpointer: v0.21.0 β v0.23.1
- github.com/go-openapi/jsonreference: v0.20.2 β v0.21.5
- github.com/go-openapi/swag: v0.23.0 β v0.26.0
- github.com/onsi/gomega: v1.42.0 β v1.42.1
- github.com/prometheus/procfs: v0.19.2 β v0.20.1
- github.com/vmware-tanzu/nsx-operator/pkg/apis: 288a237 β a0f2f0b
- github.com/vmware-tanzu/vm-operator/api: 46e3104 β 46d6f2c
- github.com/vmware-tanzu/vm-operator/external/ncp: 46e3104 β 46d6f2c
- github.com/vmware-tanzu/vm-operator/external/tanzu-topology: 46e3104 β 46d6f2c
- github.com/vmware/govmomi: v0.54.1 β v0.55.1
- go.etcd.io/etcd/api/v3: v3.6.12 β v3.6.13
- go.etcd.io/etcd/client/pkg/v3: v3.6.12 β v3.6.13
- go.etcd.io/etcd/client/v3: v3.6.12 β v3.6.13
- go.yaml.in/yaml/v2: v2.4.3 β v2.4.4
- golang.org/x/crypto: v0.53.0 β v0.54.0
- golang.org/x/mod: v0.37.0 β v0.38.0
- golang.org/x/net: v0.56.0 β v0.57.0
- golang.org/x/sync: v0.21.0 β v0.22.0
- golang.org/x/sys: v0.46.0 β v0.47.0
- golang.org/x/telemetry: fb80ec8 β 49f421f
- golang.org/x/term: v0.44.0 β v0.45.0
- golang.org/x/text: v0.38.0 β v0.40.0
- golang.org/x/tools: v0.46.0 β v0.48.0
- sigs.k8s.io/cluster-api/api: v1.14.0-alpha.0 β v1.14.0-beta.0
- sigs.k8s.io/cluster-api: v1.14.0-alpha.0 β v1.14.0-beta.0
- sigs.k8s.io/structured-merge-diff/v6: v6.4.0 β v6.4.2
Removed
More details about the release
Highlights
- REPLACE ME
Changes since v1.16.0
π Overview
- 110 new commits merged
- 1 breaking change
β οΈ - 14 feature additions β¨
- 10 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Remove YEAR from copyright header boilerplate (#4083)
- Support IPv6 and DualStack for NSX-VPC Network Provider (#4057)
- Support VLAN sub-interface configuration for supervisor VSphereMachine (#3956)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Align VM interface IPAMModes configuration with capability gating (#4085)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fetch zone info from already-placed VM condition message (#3892)
- Fix CAPV e2e test pod CIDRs (#4073)
- Fix clusterctl upgrade resource version stable check (#4074)
- Fix duplicate prometheus port name in generated CSI cluster-template manifests (#4070)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
- Fixup e2e tests (#4071)
- Keep IPAddressClaim in the KCP infra adoption e2e test (#4075)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump envtest to v1.36.0 (#3993)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to CAPI v1.14.0-beta.0 (#4094)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to Go 1.26.4 (#4044)
- Bump to Go v1.26.5 (#4089)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Cleanup unused hack/boilerplate.go.txt (#4086)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Migrate from import boss to depguard (#4079)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Set nodeDeletionTimeoutSeconds: 0 in cluster templates and e2e tests (#4077)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: [v0.10.0](https://github.com/...
v1.17.0-alpha.0
π¨ This is a ALPHA RELEASE. Use it only for testing purposes. If you find any bugs, file an issue.
More details about the release
Changes since v1.16.0
π Overview
- 87 new commits merged
- 1 breaking change
β οΈ - 11 feature additions β¨
- 3 bugs fixed π
β οΈ Breaking Changes
- Bump to CAPI main, Go 1.26, CR v0.24, CT v0.21 (#3992)
β¨ New Features
- Add control plane zone selection support (#4003)
- Add policies support to supervisor VSphereMachine (#3987)
- Add validation on control plane failure domain selector (#4022)
- Allow to configure crypto (#3749)
- Bump to CAPI main 18.06 (incl. new api Go module) (#4062)
- Bump to CAPI main 26.05.2026 & enable store and fifo informer metrics (#4017)
- Bump vm-operator latest version to introducing v1alpha6 API (#3969)
- Enable in-place updates e2e test (#4019)
- Introduce separate API module (#4054)
- Introduce vm-operator v1alpha6 API (#4020)
- Tune controller concurrency and cache timeout for scale (#3893)
π Bug Fixes
- Fetch zone info from already-placed VM condition message (#3892)
- Create VMG when VSphereMachine count greater than MD replicas (#3928)
- Fix immutability validation of VSphereMachineTemplate (#4041)
- Fix release notes for first pre-release (#4021)
π± Others
- Add chained upgrade e2e test (#4014)
- Add finalizer only after we got owner/cluster (#4018)
- Add KCP adoption test (#4023)
- Bump actions for v1.16 (#3888)
- Bump CAPI to v1.13.0-beta.1 (#3911)
- Bump CAPI v1.13.0+ (#3957)
- Bump CAPI v1.13.0-rc.0 (#3924)
- Bump CAPI v1.13.0-rc.1 (#3945)
- Bump CAPI v1.13.1 (#3974)
- Bump CAPV to CAPI main (2026.05.05) (#3982)
- Bump CPI to v1.36.0 (#3965)
- Bump CPI to v1.36.0-beta.0 (#3903)
- Bump CPI to v1.36.0-rc.0 (#3938)
- Bump dependencies (#3943)
- Bump envtest to v1.36.0 (#3993)
- Bump go v1.25.9 (#3920)
- Bump google.golang.org/grpc to fix CVE (#3899)
- Bump to CAPI main 15.05.2026 (#4007)
- Bump to Cluster API v1.14.0-alpha.0 (#4068)
- Bump to Go 1.26.4 (#4044)
- Bump to kind v0.32.0 (#4032)
- Bump vm-operator to latest vc-9.1.0 (#3984)
- Complete bump to CAPI v1.13.0-beta.1 (#3912)
- Declare contents: read permissions for pr-verify action (#4005)
- Drop local copy of topologyv1 (#4010)
- Fix CVE-2026-39883 (#3932)
- Fix link in cloudbuild.yaml's (#4048)
- Fix workflows (#4013)
- Improve image pre-loading via DaemonSet (#4058)
- Improve vm-operator versioning semantic (#3918)
- Make it possible to exclude CVEs with govulncheck (#3995)
- Migrate away from custom GitHub action approval workflow (#3917)
- Only add finalizer after VSphereMachine has owner (#4008)
- Prepare main for 1.17 (#3979)
- Remove kube-rbac-proxy from vm-op 9.2 deployment (#4043)
- Revert "Migrate away from custom GitHub action approval workflow" (#4055)
- Skip 9.2 e2e tests (#3986)
- Split supervisor and govmomi feature gates, add support for gates depending on vm-operator-version (#4009)
- Start testing against Kubernetes v1.37 (#3964)
- Start testing with Kubernetes v1.36.0 (#3959)
- Start testing with Kubernetes v1.36.0-beta.0 (#3904)
- Start testing with Kubernetes v1.36.0-rc.0 (#3929)
- Start testing with Kubernetes v1.36.0-rc.1 (#3947)
- Start using 1.36 OVA (#3970)
- Stop running make lint-api multiple times in GitHub action + align to CAPI (#4061)
- Stop using Cluster API v1beta1 APIs in test/ (#4056)
- Sync ci-e2e-lib.sh (#4037)
- Sync vm-op conversion code (#4052)
- Update naming template for CP / VSphereCluster / MD in supervisor e2e tests (#4069)
- Update readme for release-1.16 (#3968)
- Use v1.13 release artifacts instead of staging (#3976)
- Validate supervisor endpoint host is IP in service discovery (#4024)
π Additionally, there has been 1 contribution to our documentation and book. (#3953)
Dependencies
Added
- github.com/clipperhouse/displaywidth: v0.10.0
- github.com/clipperhouse/uax29/v2: v2.6.0
- github.com/vmware-tanzu/vm-operator/external/tanzu-topology: 46e3104
- k8s.io/streaming: v0.36.2
- sigs.k8s.io/cluster-api/api: v1.14.0-alpha.0
Changed
- github.com/alecthomas/units: b94a6e3 β 0f3dac3
- github.com/coredns/corefile-migration: v1.0.31 β v1.0.33
- github.com/coreos/go-oidc: v2.3.0+incompatible β v2.5.0+incompatible
- github.com/coreos/go-systemd/v22: v22.5.0 β v22.7.0
- github.com/golang-jwt/jwt/v5: v5.2.2 β v5.3.0
- github.com/google/pprof: 294ebfa β 545e8a4
- github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus: v1.0.1 β v1.1.0
- github.com/grpc-ecosystem/go-grpc-middleware/v2: v2.3.0 β v2.3.3
- github.com/mattn/go-runewidth: v0.0.16 β v0.0.19
- github.com/olekukonko/errors: v1.1.0 β v1.2.0
- github.com/olekukonko/ll: v0.1.1 β v0.1.6
- github.com/olekukonko/tablewriter: v1.0.9 β v1.1.4
- github.com/onsi/ginkgo/v2: v2.28.1 β v2.32.0
- github.com/onsi/gomega: v1.39.1 β v1.42.0
- github.com/prometheus/common: v0.66.1 β v0.67.5
- github.com/prometheus/procfs: v0.16.1 β v0.19.2
- github.com/vmware-tanzu/vm-operator/api: 93918c5 β 46e3104
- github.com/vmware-tanzu/vm-operator/external/ncp: 93918c5 β 46e3104
- github.com/vmware/govmomi: v0.53.0 β v0.54.1
- go.etcd.io/etcd/api/v3: v3.6.10 β v3.6.12
- go.etcd.io/etcd/client/pkg/v3: v3.6.10 β v3.6.12
- go.etcd.io/etcd/client/v3: v3.6.10 β v3.6.12
- go.etcd.io/etcd/pkg/v3: v3.6.5 β v3.6.8
- go.etcd.io/etcd/server/v3: v3.6.5 β v3.6.8
- go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc: v0.60.0 β v0.65.0
- go.uber.org/zap: v1.27.1 β v1.28.0
- golang.org/x/crypto: v0.50.0 β v0.53.0
- golang.org/x/exp: 8a7402a β 944ab1f
- golang.org/x/mod: v0.35.0 β v0.37.0
- golang.org/x/net: v0.53.0 β v0.56.0
- golang.org/x/sync: v0.20.0 β v0.21.0
- golang.org/x/sys: v0.43.0 β v0.46.0
- golang.org/x/telemetry: be6f6cb β fb80ec8
- golang.org/x/term: v0.42.0 β v0.44.0
- golang.org/x/text: v0.36.0 β v0.38.0
- golang.org/x/time: v0.9.0 β v0.14.0
- golang.org/x/tools/go/expect: v0.1.0-deprecated β v0.1.1-deprecated
- golang.org/x/tools: v0.44.0 β v0.46.0
- google.golang.org/protobuf: v1.36.11 β f2248ac
- k8s.io/api: v0.35.4 β v0.36.2
- k8s.io/apiextensions-apiserver: v0.35.4 β v0.36.2
- k8s.io/apimachinery: v0.35.4 β v0.36.2
- k8s.io/apiserver: v0.35.4 β v0.36.2
- k8s.io/client-go: v0.35.4 β v0.36.2
- k8s.io/cluster-bootstrap: v0.35.4 β v0.36.2
- k8s.io/code-generator: v0.35.4 β v0.36.2
- k8s.io/component-base: v0.35.4 β v0.36.2
- k8s.io/klog/v2: v2.130.1 β v2.140.0
- k8s.io/kms: v0.35.4 β v0.36.2
- k8s.io/kube-openapi: 589584f β 43fb72c
- k8s.io/utils: bc988d5 β b8788ab
- sigs.k8s.io/apiserver-network-proxy/konnectivity-client: v0.31.2 β v0.34.0
- sigs.k8s.io/cluster-api: v1.13.1 β v1.14.0-alpha.0
- sigs.k8s.io/controller-runtime: v0.23.3 β v0.24.1
Removed
_Thanks to all our contributors!_ π
v1.16.1
Changes since v1.16.0
π Overview
- 4 new commits merged
π± Others
- Bump vm-op to latest vc-9.1.0 (#3985)
- Improve vm-operator versioning semantic (#3983)
- Start testing K8s 1.37 (#3978)
- Use v1.13 release artifacts instead of staging (#3977)
Dependencies
Added
Nothing has changed.
Changed
- github.com/vmware-tanzu/vm-operator/api: 93918c5 β 7700558
- github.com/vmware-tanzu/vm-operator/external/ncp: 93918c5 β 7700558
Removed
Nothing has changed.
Thanks to all our contributors! π
v1.15.3
Changes since v1.15.2
π Overview
- 24 new commits merged
- 6 bugs fixed π
π Bug Fixes
- Bump trivy to v0.69.2 to fix CI (#3854)
- Create VMG when VSphereMachine count greater than MD replicas (#3952)
- Set VM.spec.affinity only on create (#3836)
- Stop patching VSphereMachine on every reconcile (#3858)
- Use latest CAPI release YAMLs instead of v1.12.1 from staging bucket (#3843)
- Fetch zone info from already-placed VM condition message (#3895)
π± Others
- Bump autoscaler version used for testing to v1.35.0 (#3845)
- Bump CAPI v1.12.5 (#3926)
- Bump CPI to v1.36.0 (#3967)
- Bump CPI to v1.36.0-rc.0 (#3940)
- Bump Go to 1.24.12 (#3774)
- Bump go v1.25.8 and other deps to fix CVE (#3867)
- Bump go v1.25.9 (#3922)
- Bump google.golang.org/grpc to fix CVE (#3900)
- Bump otel to fix CVE (#3848)
- Bump to Go v1.24.13 (#3832)
- Bump-gcb-docker-gcloud (#3962)
- Change rbac proxy image (#3870)
- Extend janitor to consider keep-at-least-until (#3824)
- Release 1.15 ignore CVE 2026 39883 (#3936)
- Start testing with Kubernetes v1.36.0 (#3961)
- Start testing with Kubernetes v1.36.0-beta.0 (#3910)
- Start testing with Kubernetes v1.36.0-rc.0 (#3931)
- Start testing with Kubernetes v1.36.0-rc.1 (#3949)
- Start using 1.36 OVA (#3972)
Dependencies
Added
- github.com/cenkalti/backoff/v5: v5.0.3
- gonum.org/v1/gonum: v0.16.0
Changed
- cel.dev/expr: v0.24.0 β v0.25.1
- cloud.google.com/go/compute/metadata: v0.6.0 β v0.9.0
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.26.0 β v1.30.0
- github.com/cloudflare/circl: v1.6.1 β v1.6.3
- github.com/cncf/xds/go: 2f00578 β ee656c7
- github.com/coredns/corefile-migration: v1.0.29 β v1.0.31
- github.com/envoyproxy/go-control-plane/envoy: v1.32.4 β v1.36.0
- github.com/envoyproxy/go-control-plane: v0.13.4 β v0.14.0
- github.com/envoyproxy/protoc-gen-validate: v1.2.1 β v1.3.0
- github.com/go-jose/go-jose/v4: v4.0.4 β v4.1.3
- github.com/golang/glog: v1.2.4 β v1.2.5
- github.com/grpc-ecosystem/grpc-gateway/v2: v2.26.3 β v2.27.7
- github.com/spiffe/go-spiffe/v2: v2.5.0 β v2.6.0
- go.opentelemetry.io/auto/sdk: v1.1.0 β v1.2.1
- go.opentelemetry.io/contrib/detectors/gcp: v1.34.0 β v1.39.0
- go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp: v0.58.0 β v0.65.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc: v1.34.0 β v1.40.0
- go.opentelemetry.io/otel/exporters/otlp/otlptrace: v1.34.0 β v1.40.0
- go.opentelemetry.io/otel/metric: v1.35.0 β v1.40.0
- go.opentelemetry.io/otel/sdk/metric: v1.34.0 β v1.40.0
- go.opentelemetry.io/otel/sdk: v1.34.0 β v1.40.0
- go.opentelemetry.io/otel/trace: v1.35.0 β v1.40.0
- go.opentelemetry.io/otel: v1.35.0 β v1.40.0
- go.opentelemetry.io/proto/otlp: v1.5.0 β v1.9.0
- golang.org/x/crypto: v0.46.0 β v0.47.0
- golang.org/x/net: v0.48.0 β v0.49.0
- golang.org/x/oauth2: v0.33.0 β v0.34.0
- golang.org/x/sys: v0.39.0 β v0.40.0
- golang.org/x/term: v0.38.0 β v0.39.0
- golang.org/x/text: v0.32.0 β v0.33.0
- google.golang.org/genproto/googleapis/api: a0af3ef β 8636f87
- google.golang.org/genproto/googleapis/rpc: a0af3ef β 8636f87
- google.golang.org/grpc: v1.72.3 β v1.79.3
- google.golang.org/protobuf: v1.36.7 β v1.36.11
- sigs.k8s.io/cluster-api: v1.12.1 β v1.12.5
- sigs.k8s.io/controller-runtime: v0.22.4 β v0.22.5
- sigs.k8s.io/structured-merge-diff/v6: v6.3.0 β d9cc664
Removed
- github.com/zeebo/errs: v1.4.0
Thanks to all our contributors! π
Process finished with the exit code 0
v1.16.0
Highlights
CAPI v1.16 is a release focused on api version management and improvements for performances at scale:
- Bumped to Go 1.25, Cluster API v1.13, controller-runtime v0.23, k8s.io/* v0.35, controller-gen v0.20
- The new v1beta2 apiVersion has been added and it is implementing the v1beta2 version of the Cluster API contract
- Introduced rate limiting, and priority queue enable by default on all the controllers
- Improvements in cache configurations and and several improvements in performance related settings.
- The v1beta1 apiVersion is now deprecated; removal will happen after 1yr from deprecation
- v1alpha3 + v1alpha4 apiVersions has been removed
Supervisor
- Add support for multiple supervisor/vm-operator versions
- Current supported versions: v1alpha5 (default), v1alpha2
- Add operating system and architecture information to VSphereMachineTemplate status (for autoscaling from zero)
- ProviderServiceAccount CRD is now deprecated and will be removed in a future release
- The field VSphereCluster.status.resourcePolicyName has been removed
govmomi
- Allow to set NestedHV, FtEncryptionMode and MigrateEncryption
- The deprecated field VSphereFailureDomain.spec.zone.autoConfigure has been removed
- The deprecated field VSphereMachine.spec.network.PreferredAPIServerCIDR has been removed
Changes since v1.15.0
π Overview
- 123 new commits merged
- 16 breaking changes
β οΈ - 27 feature additions β¨
- 6 bugs fixed π
β οΈ Breaking Changes
- Adjust v1beta2 APIs to use correct ref types (govmomi) (#3792)
- Adjust VSphereMachineStatus to API conventions (supervisor) (#3798)
- Align ./apis package names with conventions (#3802)
- Align failureDomain fields to CAPI contract (#3805)
- Align NumCPUs & NumCoresPerSocket to API conventions (#3803)
- Bump to Cluster API, controller-runtime main & controller-tools v0.20 (#3733)
- Deprecate ProviderServiceAccount CRD (#3799)
- Drop deprecated AutoConfigure field (#3762)
- Drop deprecated PreferredAPIServerCIDR field (#3761)
- Drop VSphereCluster.status.resourcePolicyName (supervisor) (#3809)
- Remove DefaulterRemoveUnknownOrOmitableFields mutating webhook option (#3763)
- Remove pointer from NamingStrategy field (#3765)
- Remove v1alpha3 + v1alpha4 apiVersions (#3741)
- Rename condition & reason constants for v1beta2 (#3800)
- Rename namingStrategy fields to naming (supervisor+govmomi) (#3810)
- Rename VSphereMachine Network field to NetworkRef (#3793)
β¨ New Features
- Add CAPV v1beta2 API types (govmomi) (#3744)
- Add CAPV v1beta2 API types (supervisor) (#3771)
- Add e2e test for v1beta1 (#3811)
- Add operating system and architecture information to VSphereMachineTemplate status (#3788)
- Add support for multiple supervisor versions (#3767)
- Allow to configure crypto (#3907)
- Allow to set NestedHV, FtEncryptionMode and MigrateEncryption (#3740)
- Bump to Go 1.25.5 (#3732)
- Deprecate v1beta1 API packages (#3783)
- Disable DWARF and symbol table to decrease binary/image size (#3875)
- Dynamically choose API version for vm-operator (#3812)
- Enable PriorityQueue feature gate per default (#3730)
- Fix KAL findings in supervisor v1beta2 API & add metadata to templates (#3785)
- Fix KAL findings in v1beta2 API (govmomi) (#3748)
- Implement ReconcilerRateLimiting (#3846)
- Implement v1beta2 contract (govmomi) (#3746)
- Implement v1beta2 contract (supervisor) (#3778)
- Improve scale testing machinery (#3878)
- Improve v1beta2 CRD columns (govmomi+supervisor) (#3794)
- Migrate E2E tests to v1beta2 (govmomi) (#3747)
- Migrate E2E tests to v1beta2 (supervisor) (#3781)
- Optimize cache configuration for supervisor mode (#3861)
- Prepare main branch for v1.16 (#3735)
- Promote v1beta2 conditions on VSphereCluster, VSphereClusterIdentity, VSphereDeploymentZone + minor v1beta2 field migrations (#3745)
- Promote v1beta2 conditions on VSphereVM, VSphereMachine, VSphereCluster (#3772)
- Support Node Auto Placement and Node AF/AAF (#3655)
- Switch from vm-operator v1alpha2 API to v1alpha5 (#3784)
π Bug Fixes
- Bump trivy to v0.69.2 to fix CI (#3851)
- Create VMG when VSphereMachine count greater than MD replicas (#3950)
- Fetch zone info from already-placed VM condition message (#3894)
- Fix contract label for supervisor infrastructure components (#3877)
- Fix issue to use a legacy VMS using the same name (#3881)
- Set VM.spec.affinity only on create (#3835)
- Stop patching VSphereMachine on every reconcile (#3857)
π± Others
- Add 1.15 to support matrix (#3729)
- Add spec.template.metadata to VSphereClusterTemplate (govmomi) (#3768)
- Add support for vm-operator sim mode in vcsim (#3821)
- Add test coverage for apiVersion bump on VMG (#3815)
- Block direct usage of vm-operator APIs in prod code (#3796)
- Bump AdmissionReview and ConversionReview APIVersions (#3759)
- Bump autoscaler version used for testing to v1.35.0 (#3841)
- Bump CAPI to v1.13.0-beta.0 (#3886)
- Bump CAPI v1.13.0-beta.1 (#3915)
- Bump CAPI v1.13.0-rc.0 (#3925)
- Bump CAPI v1.13.0-rc.1 (#3946)
- Bump CAPI v1.13.0+ (#3958)
- Bump CAPI v1.13.1 (#3975)
- Bump cpi to v1.35.0 (#3736)
- Bump CPI to v1.36.0-beta.0 (#3905)
- Bump CPI to v1.36.0-rc.0 (#3939)
- Bump CPI to v1.36.0 (#3966)
- Bump dependencies (#3944)
- Bump Go to 1.25.6 (#3773)
- Bump go v1.25.8 (#3865)
- Bump go v1.25.9 (#3921)
- Bump golang.org/x/net to v0.51 to fix CVE (#3855)
- Bump google.golang.org/grpc to fix CVE (#3902)
- Bump govmomi v0.53.0 (#3844)
- Bump otel to fix CVE (#3847)
- Bump to CAPI main & use MarshalDataUnsafeNoCopy (#3874)
- Bump to CAPI main 2026.01.12 (#3754)
- Bump to CAPI main 2026.01.15 (#3770)
- Bump to CAPI main 2026.01.27 (#3814)
- Bump to CAPI main, fixes for scale tests (#3827)
- Bump to controller-runtime v0.23 & CAPI main 2026.01.19 (#3777)
- Bump to Go v1.25.7 (#3831)
- Change rbac proxy image (#3869)
- Cleanup KAL config (#3817)
- Cleanup RuntimeExtension provider e2e test setup (#3786)
- Drop defaulting from PowerOffMode API fields (govmomi) (#3760)
- Drop or reduce verbosity for noisy logs (#3876)
- Drop security scan on 1.13 (#3883)
- Drop usage of v1beta1 conditions (#3795)
- Extend govmomi test runtime extension, change quickstart to use runtime extension (#3820)
- Extend ownerRef tests to cover VirtualMachineSetResourcePolicy (#3813)
- Fix commentstart linter findings in supervisor v1beta1 API (#3769)
- Fix CRD columns (govmomi) (#3766)
- Fix CVE-2026-39883 (#3933)
- Implement type check for hub types (#3801)
- Improve godoc fo cloneMode field (#3838)
- Increase default kube-api qps/burst (#3828)
- Inline incorrect APIEndpoint.IsZero() func (#3764)
- Log flags on controller startup (#3879)
- Move VSphereVM failureReason/failureMessage fields to deprecated (#3789)
- Remove some occurrences of v1beta1 (#3804)
- Scale e2e tests: drop ValidateTopology RX, add MHC, add metrics for tilt (#3842)
- Set WithOwnedV1Beta1Conditions patchHelper option consistently (#3806)
- Simplify patch for external CRDs (#3742)
- Start testing with Kubernetes v1.36.0-beta.0 (#3906)
- Start testing with Kubernetes v1.36.0-rc.0 (#3930)
- Start testing with Kubernetes v1.36.0-rc.1 (#3948)
- Start testing with Kubernetes v1.36.0 (#3960)
- Start testing with VM operator v1.9 (#3756)
- Start using 1.36 OVA (#3971)
- Stop using v1beta1 status in controllers (#3787)
- Supervisor: adjust cache configuration to only cache CAPV VirtualMachine objects (#3752)
- Update metrics config for v1vbeta2 (#3791)
π Additionally, there have been 2 contributions to our documentation and book. (#3790, #3840)
Dependencies
Added
- github.com/cenkalti/backoff/v5: v5.0.3
- github.com/google/go-github/v82: v82.0.0
- golang.org/x/tools/go/expect: v0.1.0-deprecated
- golang.org/x/tools/go/packages/packagestest: v0.1.1-deprecated
- gonum.org/v1/gonum: v0.17.0
Changed
- cel.dev/expr: v0.24.0 β v0.25.1
- cloud.google.com/go/compute/metadata: v0.6.0 β v0.9.0
- github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp: v1.26.0 β v1.31.0
- github.com/cncf/xds/go: 2f00578 β ee656c7
- github.com/coredns/corefile-migration: v1.0.29 β v1.0.31
- github.com/envoyproxy/go-control-plane/envoy: v1.32.4 β v1.36.0
- github.com/envoyproxy/go-control-plane: v0.13.4 β v0.14.0
- github.com/envoyproxy/protoc-gen-validate: v1.2.1 β v1.3.0
- github.com/fatih/color: v1.18.0 β v1.19.0
- github.com/go-jose/go-jose/v4: v4.0.4 β v4.1.3
- github.com/golang/glog: v1.2.4 β v1.2.5
- github.com/google/go-querystring: v1.1.0 β v1.2.0
- github.com/google/pprof: f64d9cf β 294ebfa
- github.com/grpc-ecosystem/grpc-gateway/v2: v2.26.3 β v2.28.0
- github.com/moby/spdystream: v0.5.0 β v0.5.1
- github.com/onsi/ginkgo/v2: [v2.27.3 β v2.28.1](onsi/ginkgo@v2.27.3...v2.28....
templates/v1.36.0
VM templates for Kubernetes v1.36.0\n\nIf an OVA image consists of multiple parts, use cat <image>-parts* > <image>.ova to join them back.