You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: implement CAPI failure domain contract for zones
Map existing CAPMOX zones to CAPI failure domains so that
KubeadmControlPlane automatically distributes control plane
nodes across Proxmox zones.
API changes:
- Add Nodes []string to ZoneConfigSpec for per-zone node lists
- Add ControlPlane *bool to ZoneConfigSpec (defaults to true)
- Add FailureDomains to ProxmoxClusterStatus (CAPI v1beta2 contract)
- Add spec.failureDomain to ProxmoxMachineSpec (InfraMachine contract)
- Add GetZoneNodes() helper on ProxmoxCluster
- Add FailureDomainNotReady condition reason
Controller changes:
- Add reconcileFailureDomains in cluster controller (sorted by name)
- Read Machine.Spec.FailureDomain in machine controller with
retryable FailureDomainNotReady condition
- Use effectiveZone/effectiveAllowedNodes on MachineScope to avoid
spec mutation from the controller
- Pass zone override to GetInClusterPools for IPAM pool selection
- Set Zone on NodeLocation in createVM
- Update scheduler to use GetEffectiveAllowedNodes()
Conversion:
- Restore Status.FailureDomains and Spec.FailureDomain in v1alpha1
conversion webhook
- Add manual conversion stub for ProxmoxMachineSpec.FailureDomain
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
0 commit comments