@@ -299,6 +299,7 @@ type InstanceConfigInterfaceCreateOptions struct {
299299
300300 // subnetId is the ID of the subnet to use for the interface.
301301 // +optional
302+ //nolint:kubeapilinter // to maintain backwards compatibility
302303 SubnetID * int `json:"subnetId,omitempty"`
303304
304305 // ipv4 is the IPv4 configuration for the interface.
@@ -317,10 +318,20 @@ type LinodeInterfaceCreateOptions struct {
317318 // +optional
318319 FirewallID * int `json:"firewallID,omitempty"`
319320
321+ // firewall_id is the ID of the firewall to use for the interface.
322+ // +optional
323+ //nolint:kubeapilinter // to maintain backwards compatibility
324+ FirewallIDLegacy * int `json:"firewall_id,omitempty"`
325+
320326 // defaultRoute is the default route for the interface.
321327 // +optional
322328 DefaultRoute * InterfaceDefaultRoute `json:"defaultRoute,omitempty"`
323329
330+ // default_route is the default route for the interface.
331+ // +optional
332+ //nolint:kubeapilinter // to maintain backwards compatibility
333+ DefaultRouteLegacy * InterfaceDefaultRoute `json:"default_route,omitempty"`
334+
324335 // public is the public interface configuration for the interface.
325336 // +optional
326337 Public * PublicInterfaceCreateOptions `json:"public,omitempty"`
@@ -400,6 +411,11 @@ type VPCInterfaceCreateOptions struct {
400411 // +optional
401412 SubnetID * int `json:"subnetId,omitempty"`
402413
414+ // subnet_id is the ID of the subnet to use for the interface.
415+ // +optional
416+ //nolint:kubeapilinter // to maintain backwards compatibility
417+ SubnetIDLegacy * int `json:"subnet_id,omitempty"`
418+
403419 // ipv4 is the IPv4 configuration for the interface.
404420 // +optional
405421 IPv4 * VPCInterfaceIPv4CreateOptions `json:"ipv4,omitempty"`
@@ -424,8 +440,13 @@ type VPCInterfaceIPv6CreateOptions struct {
424440 Ranges []VPCInterfaceIPv6RangeCreateOptions `json:"ranges,omitempty"`
425441
426442 // isPublic is a boolean indicating whether the interface is public.
427- // +required
443+ // +optional
428444 IsPublic * bool `json:"isPublic,omitempty"`
445+
446+ // +optional
447+ //nolint:kubeapilinter // to maintain backwards compatibility
448+ // is_public is a boolean indicating whether the interface is public.
449+ IsPublicLegacy * bool `json:"is_public,omitempty"`
429450}
430451
431452// VPCInterfaceIPv6SLAACCreateOptions defines the Range for IPv6 SLAAC
@@ -473,6 +494,11 @@ type VPCInterfaceIPv4AddressCreateOptions struct {
473494 // nat1to1Address is the NAT 1:1 address for the interface.
474495 // +optional
475496 NAT1To1Address * string `json:"nat1to1Address,omitempty"`
497+
498+ // nat_1_1_address is the NAT 1:1 address for the interface.
499+ // +optional
500+ //nolint:kubeapilinter // to maintain backwards compatibility
501+ NAT1To1AddressLegacy * string `json:"nat_1_1_address,omitempty"`
476502}
477503
478504// VPCInterfaceIPv4RangeCreateOptions defines the IPv4 range for a VPC interface
@@ -487,12 +513,23 @@ type VPCInterfaceIPv4RangeCreateOptions struct {
487513type VLANInterface struct {
488514 // vlanLabel is the label of the VLAN.
489515 // +kubebuilder:validation:MinLength=1
490- // +required
516+ // +optional
491517 VLANLabel string `json:"vlanLabel,omitempty"`
492518
519+ // vlan_label is the label of the VLAN.
520+ // +kubebuilder:validation:MinLength=1
521+ // +optional
522+ //nolint:kubeapilinter // to maintain backwards compatibility
523+ VLANLabelLegacy string `json:"vlan_label,omitempty"`
524+
493525 // ipamAddress is the IP address to assign to the interface.
494526 // +optional
495527 IPAMAddress * string `json:"ipamAddress,omitempty"`
528+
529+ // ipam_address is the IP address to assign to the interface.
530+ // +optional
531+ //nolint:kubeapilinter // to maintain backwards compatibility
532+ IPAMAddressLegacy * string `json:"ipam_address,omitempty"`
496533}
497534
498535// VPCIPv4 defines VPC IPV4 settings
0 commit comments