@@ -101,6 +101,7 @@ type ControlPlaneOptions struct {
101101 // If omitted, Ingress resources will not be supported by the ControlPlane.
102102 //
103103 // +optional
104+ // +kubebuilder:validation:MaxLength=63
104105 IngressClass * string `json:"ingressClass,omitempty"`
105106
106107 // WatchNamespaces indicates the namespaces to watch for resources.
@@ -253,6 +254,8 @@ type ControlPlaneDataPlaneSync struct {
253254}
254255
255256// ControlPlaneReverseSyncState defines the state of the reverse sync feature.
257+ //
258+ // +kubebuilder:validation:Enum=enabled;disabled
256259type ControlPlaneReverseSyncState string
257260
258261const (
@@ -304,6 +307,7 @@ type ControlPlaneDataPlaneTargetRef struct {
304307 //
305308 // +required
306309 // +kubebuilder:validation:MinLength=1
310+ // +kubebuilder:validation:MaxLength=63
307311 Name string `json:"name"`
308312}
309313
@@ -415,6 +419,7 @@ type ControlPlaneController struct {
415419 //
416420 // +required
417421 // +kubebuilder:validation:MinLength=1
422+ // +kubebuilder:validation:MaxLength=63
418423 Name string `json:"name"`
419424
420425 // State indicates whether the feature gate is enabled or disabled.
@@ -425,6 +430,8 @@ type ControlPlaneController struct {
425430}
426431
427432// FeatureGateState defines the state of a feature gate.
433+ //
434+ // +kubebuilder:validation:Enum=enabled;disabled
428435type FeatureGateState string
429436
430437const (
@@ -443,12 +450,12 @@ type ControlPlaneFeatureGate struct {
443450 //
444451 // +required
445452 // +kubebuilder:validation:MinLength=1
453+ // +kubebuilder:validation:MaxLength=63
446454 Name string `json:"name"`
447455
448456 // State indicates whether the feature gate is enabled or disabled.
449457 //
450458 // +required
451- // +kubebuilder:validation:Enum=enabled;disabled
452459 State FeatureGateState `json:"state"`
453460}
454461
@@ -497,6 +504,7 @@ type ControlPlaneDataPlaneStatus struct {
497504 //
498505 // +required
499506 // +kubebuilder:validation:MinLength=1
507+ // +kubebuilder:validation:MaxLength=63
500508 Name string `json:"name"`
501509}
502510
@@ -523,7 +531,6 @@ type ControlPlaneKonnectOptions struct {
523531 //
524532 // +optional
525533 // +kubebuilder:default=enabled
526- // +kubebuilder:validation:Enum=enabled;disabled
527534 ConsumersSync * ControlPlaneKonnectConsumersSyncState `json:"consumersSync,omitempty"`
528535
529536 // Licensing defines the configuration for Konnect licensing.
@@ -543,6 +550,8 @@ type ControlPlaneKonnectOptions struct {
543550}
544551
545552// ControlPlaneKonnectConsumersSyncState defines the state of consumer synchronization with Konnect.
553+ //
554+ // +kubebuilder:validation:Enum=enabled;disabled
546555type ControlPlaneKonnectConsumersSyncState string
547556
548557const (
@@ -563,7 +572,6 @@ type ControlPlaneKonnectLicensing struct {
563572 //
564573 // +optional
565574 // +kubebuilder:default=disabled
566- // +kubebuilder:validation:Enum=enabled;disabled
567575 State * ControlPlaneKonnectLicensingState `json:"state,omitempty"`
568576
569577 // InitialPollingPeriod is the initial polling period for license checks.
@@ -582,11 +590,24 @@ type ControlPlaneKonnectLicensing struct {
582590 //
583591 // +optional
584592 // +kubebuilder:default=enabled
585- // +kubebuilder:validation:Enum=enabled;disabled
586- StorageState * ControlPlaneKonnectLicensingState `json:"storageState,omitempty"`
593+ StorageState * ControlPlaneKonnectLicenseStorageState `json:"storageState,omitempty"`
587594}
588595
596+ // ControlPlaneKonnectLicenseStorageState defines the state of Konnect licensing.
597+ //
598+ // +kubebuilder:validation:Enum=enabled;disabled
599+ type ControlPlaneKonnectLicenseStorageState string
600+
601+ const (
602+ // ControlPlaneKonnectLicenseStorageStateEnabled indicates that Konnect license storage is enabled.
603+ ControlPlaneKonnectLicenseStorageStateEnabled ControlPlaneKonnectLicenseStorageState = "enabled"
604+ // ControlPlaneKonnectLicenseStorageStateDisabled indicates that Konnect license storage is disabled.
605+ ControlPlaneKonnectLicenseStorageStateDisabled ControlPlaneKonnectLicenseStorageState = "disabled"
606+ )
607+
589608// ControlPlaneKonnectLicensingState defines the state of Konnect licensing.
609+ //
610+ // +kubebuilder:validation:Enum=enabled;disabled
590611type ControlPlaneKonnectLicensingState string
591612
592613const (
0 commit comments