-
Notifications
You must be signed in to change notification settings - Fork 283
Open
Labels
kind/featureCategorizes issue or PR as related to a new feature.Categorizes issue or PR as related to a new feature.
Description
/kind feature
Describe the solution you'd like
Implement full CAPI v1beta2 contract support by creating a new api/v1beta2 API version with required breaking changes.
Background
CAPO v0.13.2 (?) reverted to v1beta1 contract. v0.15 will properly implement v1beta2.
Tasks
API Changes:
- Create
api/v1beta2/with breaking changes:- Change conditions:
clusterv1.Conditions→[]metav1.Condition - Remove deprecated fields:
status.ready,status.failureReason,status.failureMessage - Update FailureDomains if needed
- Change conditions:
- Update all v1beta1 resources: OpenStackCluster, OpenStackMachine, OpenStackClusterTemplate, OpenStackMachineTemplate
- Run
make generateto generate deepcopy, CRDs, etc.
Conversion & Webhooks:
- Implement conversion webhooks (v1beta1 ↔ v1beta2)
- Update validation/defaulting webhooks for v1beta2
- Update CRD labels:
cluster.x-k8s.io/v1beta2: v1beta2
Controllers & Templates:
- Update controllers to use conditions instead of deprecated fields
- Update all cluster templates in
templates/to v1beta2 - Update
metadata.yamlto claim v1beta2 contract
Documentation & Testing:
- Create migration guide:
docs/book/src/topics/crd-changes/v1beta1-to-v1beta2.md - Unit tests for conversion webhooks
- E2E tests with CAPI v1.11+ (v1beta2 contract)
- Upgrade tests (v1beta1 → v1beta2)
lentzi90
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.
Type
Projects
Status
Planned