Skip to content

Commit 918d28f

Browse files
committed
ipam: enable conversion in CRDs
1 parent 3fdd752 commit 918d28f

File tree

5 files changed

+38
-4
lines changed

5 files changed

+38
-4
lines changed

config/crd/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,8 @@ patches:
3030
- path: patches/webhook_in_machinehealthchecks.yaml
3131
- path: patches/webhook_in_clusterresourcesets.yaml
3232
- path: patches/webhook_in_clusterresourcesetbindings.yaml
33+
- path: patches/webhook_in_ipaddresses.yaml
34+
- path: patches/webhook_in_ipaddressclaims.yaml
3335
# +kubebuilder:scaffold:crdkustomizewebhookpatch
3436

3537
# the following config is for teaching kustomize how to do kustomization for CRDs.
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# The following patch enables conversion webhook for CRD
2+
# CRD conversion requires k8s 1.13 or later.
3+
apiVersion: apiextensions.k8s.io/v1
4+
kind: CustomResourceDefinition
5+
metadata:
6+
name: ipaddressclaims.ipam.cluster.x-k8s.io
7+
spec:
8+
conversion:
9+
strategy: Webhook
10+
webhook:
11+
conversionReviewVersions: ["v1", "v1beta1"]
12+
clientConfig:
13+
service:
14+
namespace: system
15+
name: webhook-service
16+
path: /convert
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
# The following patch enables conversion webhook for CRD
2+
# CRD conversion requires k8s 1.13 or later.
3+
apiVersion: apiextensions.k8s.io/v1
4+
kind: CustomResourceDefinition
5+
metadata:
6+
name: ipaddresses.ipam.cluster.x-k8s.io
7+
spec:
8+
conversion:
9+
strategy: Webhook
10+
webhook:
11+
conversionReviewVersions: ["v1", "v1beta1"]
12+
clientConfig:
13+
service:
14+
namespace: system
15+
name: webhook-service
16+
path: /convert

config/default/kustomization.yaml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,6 @@ replacements:
5858
select:
5959
kind: CustomResourceDefinition
6060
reject:
61-
- name: ipaddressclaims.ipam.cluster.x-k8s.io
62-
- name: ipaddresses.ipam.cluster.x-k8s.io
6361
- name: extensionconfigs.runtime.cluster.x-k8s.io
6462
- source:
6563
fieldPath: .metadata.name
@@ -93,8 +91,6 @@ replacements:
9391
select:
9492
kind: CustomResourceDefinition
9593
reject:
96-
- name: ipaddressclaims.ipam.cluster.x-k8s.io
97-
- name: ipaddresses.ipam.cluster.x-k8s.io
9894
- name: extensionconfigs.runtime.cluster.x-k8s.io
9995
- source:
10096
fieldPath: .metadata.name

main.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ import (
6565
expv1beta1 "sigs.k8s.io/cluster-api/exp/api/v1beta1"
6666
expv1 "sigs.k8s.io/cluster-api/exp/api/v1beta2"
6767
expcontrollers "sigs.k8s.io/cluster-api/exp/controllers"
68+
ipamv1alpha1 "sigs.k8s.io/cluster-api/exp/ipam/api/v1alpha1"
69+
ipamv1beta1 "sigs.k8s.io/cluster-api/exp/ipam/api/v1beta1"
6870
ipamv1 "sigs.k8s.io/cluster-api/exp/ipam/api/v1beta2"
6971
expipamwebhooks "sigs.k8s.io/cluster-api/exp/ipam/webhooks"
7072
runtimev1 "sigs.k8s.io/cluster-api/exp/runtime/api/v1alpha1"
@@ -158,6 +160,8 @@ func init() {
158160

159161
_ = runtimev1.AddToScheme(scheme)
160162

163+
_ = ipamv1alpha1.AddToScheme(scheme)
164+
_ = ipamv1beta1.AddToScheme(scheme)
161165
_ = ipamv1.AddToScheme(scheme)
162166

163167
// Register the RuntimeHook types into the catalog.

0 commit comments

Comments
 (0)