Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions openshift/infrastructure-components-openshift.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23039,7 +23039,7 @@ spec:
type: object
type: object
served: true
storage: false
storage: true
subresources: {}
- additionalPrinterColumns:
- description: Address
Expand Down Expand Up @@ -23158,7 +23158,7 @@ spec:
- spec
type: object
served: true
storage: true
storage: false
subresources: {}
status:
acceptedNames:
Expand Down Expand Up @@ -23551,7 +23551,7 @@ spec:
type: object
type: object
served: true
storage: false
storage: true
subresources:
status: {}
- additionalPrinterColumns:
Expand Down Expand Up @@ -23787,7 +23787,7 @@ spec:
- spec
type: object
served: true
storage: true
storage: false
subresources:
status: {}
status:
Expand Down
12 changes: 12 additions & 0 deletions openshift/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,15 @@ resources:
patches:
- path: ./patches/enable-metadata-syncing.yaml
- path: ./patches/failure-policy-ignore-ipam-webhooks.yaml
- path: ./patches/ipam-crd-storage-version.yaml
target:
group: apiextensions.k8s.io
version: v1
kind: CustomResourceDefinition
name: ipaddresses.ipam.cluster.x-k8s.io
- path: ./patches/ipam-crd-storage-version.yaml
target:
group: apiextensions.k8s.io
version: v1
kind: CustomResourceDefinition
name: ipaddressclaims.ipam.cluster.x-k8s.io

Large diffs are not rendered by default.

24 changes: 24 additions & 0 deletions openshift/patches/ipam-crd-storage-version.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
# Pin IPAM CRDs to use v1beta1 as the storage version.
#
# Upstream CAPI did set v1beta2 as storage version immediately after it was added,
# but according to our downstream policy, a new APIVersion cannot be set as storage version
# in the same release it gets added. As this would hinder the ability to roll it back in case of an issue.
# As such we need to pin the storage version to v1beta1 for at least the first release we GA cluster-api.
# After that, we can bump the storage version to v1beta2, and run the storage version migration.
#
# Targets (specified in kustomization.yaml):
# - ipaddresses.ipam.cluster.x-k8s.io
# - ipaddressclaims.ipam.cluster.x-k8s.io
#
# For both CAPI IPAM CRDs, the version order in the CRD spec is: v1alpha1 (0), v1beta1 (1), v1beta2 (2)
# so use a replace that targets the apiVersion path by position in the CRD spec.

# Set v1beta1 storage=true
- op: replace
path: /spec/versions/1/storage
value: true

# Set v1beta2 storage=false
- op: replace
path: /spec/versions/2/storage
value: false