@pulumi/linode 5.5.0-alpha.1762410273 → 5.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/accountSettings.d.ts +12 -0
  2. package/accountSettings.js +2 -0
  3. package/accountSettings.js.map +1 -1
  4. package/databaseMysqlV2.d.ts +37 -0
  5. package/databaseMysqlV2.js +37 -0
  6. package/databaseMysqlV2.js.map +1 -1
  7. package/databasePostgresqlV2.d.ts +37 -0
  8. package/databasePostgresqlV2.js +37 -0
  9. package/databasePostgresqlV2.js.map +1 -1
  10. package/firewall.d.ts +12 -0
  11. package/firewall.js +2 -0
  12. package/firewall.js.map +1 -1
  13. package/firewallSettings.d.ts +72 -0
  14. package/firewallSettings.js +71 -0
  15. package/firewallSettings.js.map +1 -0
  16. package/getAccountSettings.d.ts +4 -0
  17. package/getAccountSettings.js.map +1 -1
  18. package/getFirewall.d.ts +4 -0
  19. package/getFirewall.js.map +1 -1
  20. package/getFirewallSettings.d.ts +14 -0
  21. package/getFirewallSettings.js +18 -0
  22. package/getFirewallSettings.js.map +1 -0
  23. package/getFirewallTemplate.d.ts +82 -0
  24. package/getFirewallTemplate.js +56 -0
  25. package/getFirewallTemplate.js.map +1 -0
  26. package/getFirewallTemplates.d.ts +97 -0
  27. package/getFirewallTemplates.js +96 -0
  28. package/getFirewallTemplates.js.map +1 -0
  29. package/getNetworkingIp.d.ts +4 -0
  30. package/getNetworkingIp.js.map +1 -1
  31. package/getVolume.d.ts +1 -1
  32. package/getVpcSubnet.d.ts +4 -1
  33. package/getVpcSubnet.js.map +1 -1
  34. package/getVpcSubnets.d.ts +1 -1
  35. package/index.d.ts +15 -0
  36. package/index.js +24 -4
  37. package/index.js.map +1 -1
  38. package/instance.d.ts +33 -3
  39. package/instance.js +4 -0
  40. package/instance.js.map +1 -1
  41. package/interface.d.ts +254 -0
  42. package/interface.js +206 -0
  43. package/interface.js.map +1 -0
  44. package/networkingIpAssignment.d.ts +19 -0
  45. package/networkingIpAssignment.js +19 -0
  46. package/networkingIpAssignment.js.map +1 -1
  47. package/nodeBalancer.d.ts +14 -0
  48. package/nodeBalancer.js +14 -0
  49. package/nodeBalancer.js.map +1 -1
  50. package/objectStorageBucket.d.ts +3 -3
  51. package/package.json +2 -2
  52. package/stackScript.d.ts +1 -1
  53. package/stackScript.js +1 -1
  54. package/types/input.d.ts +440 -14
  55. package/types/output.d.ts +424 -8
  56. package/volume.d.ts +3 -3
  57. package/vpcSubnet.d.ts +2 -2
package/types/input.d.ts CHANGED
@@ -204,6 +204,24 @@ export interface FirewallOutbound {
204
204
  */
205
205
  protocol: pulumi.Input<string>;
206
206
  }
207
+ export interface FirewallSettingsDefaultFirewallIds {
208
+ /**
209
+ * The Linode's default firewall.
210
+ */
211
+ linode?: pulumi.Input<number>;
212
+ /**
213
+ * The NodeBalancer's default firewall.
214
+ */
215
+ nodebalancer?: pulumi.Input<number>;
216
+ /**
217
+ * The public interface's default firewall.
218
+ */
219
+ publicInterface?: pulumi.Input<number>;
220
+ /**
221
+ * The VPC interface's default firewall.
222
+ */
223
+ vpcInterface?: pulumi.Input<number>;
224
+ }
207
225
  export interface GetAccountAvailabilitiesAvailability {
208
226
  /**
209
227
  * A set of services which are available for the given region.
@@ -996,6 +1014,114 @@ export interface GetDomainsFilterArgs {
996
1014
  */
997
1015
  values: pulumi.Input<pulumi.Input<string>[]>;
998
1016
  }
1017
+ export interface GetFirewallTemplatesFilter {
1018
+ /**
1019
+ * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
1020
+ */
1021
+ matchBy?: string;
1022
+ /**
1023
+ * The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
1024
+ */
1025
+ name: string;
1026
+ /**
1027
+ * A list of values for the filter to allow. These values should all be in string form.
1028
+ */
1029
+ values: string[];
1030
+ }
1031
+ export interface GetFirewallTemplatesFilterArgs {
1032
+ /**
1033
+ * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
1034
+ */
1035
+ matchBy?: pulumi.Input<string>;
1036
+ /**
1037
+ * The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
1038
+ */
1039
+ name: pulumi.Input<string>;
1040
+ /**
1041
+ * A list of values for the filter to allow. These values should all be in string form.
1042
+ */
1043
+ values: pulumi.Input<pulumi.Input<string>[]>;
1044
+ }
1045
+ export interface GetFirewallTemplatesFirewallTemplate {
1046
+ /**
1047
+ * The default behavior for inbound traffic.
1048
+ */
1049
+ inboundPolicy?: string;
1050
+ /**
1051
+ * A list of firewall rules specifying allowed inbound network traffic.
1052
+ */
1053
+ inbounds?: inputs.GetFirewallTemplatesFirewallTemplateInbound[];
1054
+ /**
1055
+ * The default behavior for outbound traffic.
1056
+ */
1057
+ outboundPolicy?: string;
1058
+ /**
1059
+ * A list of firewall rules specifying allowed outbound network traffic.
1060
+ */
1061
+ outbounds?: inputs.GetFirewallTemplatesFirewallTemplateOutbound[];
1062
+ /**
1063
+ * The slug of the firewall template.
1064
+ */
1065
+ slug?: string;
1066
+ }
1067
+ export interface GetFirewallTemplatesFirewallTemplateArgs {
1068
+ /**
1069
+ * The default behavior for inbound traffic.
1070
+ */
1071
+ inboundPolicy?: pulumi.Input<string>;
1072
+ /**
1073
+ * A list of firewall rules specifying allowed inbound network traffic.
1074
+ */
1075
+ inbounds?: pulumi.Input<pulumi.Input<inputs.GetFirewallTemplatesFirewallTemplateInboundArgs>[]>;
1076
+ /**
1077
+ * The default behavior for outbound traffic.
1078
+ */
1079
+ outboundPolicy?: pulumi.Input<string>;
1080
+ /**
1081
+ * A list of firewall rules specifying allowed outbound network traffic.
1082
+ */
1083
+ outbounds?: pulumi.Input<pulumi.Input<inputs.GetFirewallTemplatesFirewallTemplateOutboundArgs>[]>;
1084
+ /**
1085
+ * The slug of the firewall template.
1086
+ */
1087
+ slug?: pulumi.Input<string>;
1088
+ }
1089
+ export interface GetFirewallTemplatesFirewallTemplateInbound {
1090
+ action: string;
1091
+ description: string;
1092
+ ipv4s: string[];
1093
+ ipv6s: string[];
1094
+ label: string;
1095
+ ports: string;
1096
+ protocol: string;
1097
+ }
1098
+ export interface GetFirewallTemplatesFirewallTemplateInboundArgs {
1099
+ action: pulumi.Input<string>;
1100
+ description: pulumi.Input<string>;
1101
+ ipv4s: pulumi.Input<pulumi.Input<string>[]>;
1102
+ ipv6s: pulumi.Input<pulumi.Input<string>[]>;
1103
+ label: pulumi.Input<string>;
1104
+ ports: pulumi.Input<string>;
1105
+ protocol: pulumi.Input<string>;
1106
+ }
1107
+ export interface GetFirewallTemplatesFirewallTemplateOutbound {
1108
+ action: string;
1109
+ description: string;
1110
+ ipv4s: string[];
1111
+ ipv6s: string[];
1112
+ label: string;
1113
+ ports: string;
1114
+ protocol: string;
1115
+ }
1116
+ export interface GetFirewallTemplatesFirewallTemplateOutboundArgs {
1117
+ action: pulumi.Input<string>;
1118
+ description: pulumi.Input<string>;
1119
+ ipv4s: pulumi.Input<pulumi.Input<string>[]>;
1120
+ ipv6s: pulumi.Input<pulumi.Input<string>[]>;
1121
+ label: pulumi.Input<string>;
1122
+ ports: pulumi.Input<string>;
1123
+ protocol: pulumi.Input<string>;
1124
+ }
999
1125
  export interface GetFirewallsFilter {
1000
1126
  /**
1001
1127
  * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
@@ -1049,6 +1175,10 @@ export interface GetFirewallsFirewall {
1049
1175
  * A set of firewall rules that specify what inbound network traffic is allowed.
1050
1176
  */
1051
1177
  inbounds?: inputs.GetFirewallsFirewallInbound[];
1178
+ /**
1179
+ * The IDs of Linode Interfaces this firewall is applied to.
1180
+ */
1181
+ interfaces?: number[];
1052
1182
  /**
1053
1183
  * The label for the Firewall. For display purposes only. If no label is provided, a default will be assigned.
1054
1184
  */
@@ -1058,7 +1188,7 @@ export interface GetFirewallsFirewall {
1058
1188
  */
1059
1189
  linodes?: number[];
1060
1190
  /**
1061
- * The IDs of NodeBalancers assigned to this Firewall..
1191
+ * The IDs of NodeBalancers this firewall is applied to.
1062
1192
  */
1063
1193
  nodebalancers?: number[];
1064
1194
  /**
@@ -1107,6 +1237,10 @@ export interface GetFirewallsFirewallArgs {
1107
1237
  * A set of firewall rules that specify what inbound network traffic is allowed.
1108
1238
  */
1109
1239
  inbounds?: pulumi.Input<pulumi.Input<inputs.GetFirewallsFirewallInboundArgs>[]>;
1240
+ /**
1241
+ * The IDs of Linode Interfaces this firewall is applied to.
1242
+ */
1243
+ interfaces?: pulumi.Input<pulumi.Input<number>[]>;
1110
1244
  /**
1111
1245
  * The label for the Firewall. For display purposes only. If no label is provided, a default will be assigned.
1112
1246
  */
@@ -1116,7 +1250,7 @@ export interface GetFirewallsFirewallArgs {
1116
1250
  */
1117
1251
  linodes?: pulumi.Input<pulumi.Input<number>[]>;
1118
1252
  /**
1119
- * The IDs of NodeBalancers assigned to this Firewall..
1253
+ * The IDs of NodeBalancers this firewall is applied to.
1120
1254
  */
1121
1255
  nodebalancers?: pulumi.Input<pulumi.Input<number>[]>;
1122
1256
  /**
@@ -2789,6 +2923,10 @@ export interface GetNetworkingIpsIpAddress {
2789
2923
  * The default gateway for this address.
2790
2924
  */
2791
2925
  gateway?: string;
2926
+ /**
2927
+ * The ID of the interface this address is assigned to.
2928
+ */
2929
+ interfaceId?: number;
2792
2930
  /**
2793
2931
  * The ID of the Linode this address currently belongs to.
2794
2932
  */
@@ -2835,6 +2973,10 @@ export interface GetNetworkingIpsIpAddressArgs {
2835
2973
  * The default gateway for this address.
2836
2974
  */
2837
2975
  gateway?: pulumi.Input<string>;
2976
+ /**
2977
+ * The ID of the interface this address is assigned to.
2978
+ */
2979
+ interfaceId?: pulumi.Input<number>;
2838
2980
  /**
2839
2981
  * The ID of the Linode this address currently belongs to.
2840
2982
  */
@@ -5326,7 +5468,7 @@ export interface GetVolumesVolume {
5326
5468
  */
5327
5469
  created?: string;
5328
5470
  /**
5329
- * Whether Block Storage Disk Encryption is enabled or disabled on this Volume. Note: Block Storage Disk Encryption is not currently available to all users.
5471
+ * Whether Block Storage Disk Encryption is enabled or disabled on this Volume.
5330
5472
  */
5331
5473
  encryption?: string;
5332
5474
  /**
@@ -5372,7 +5514,7 @@ export interface GetVolumesVolumeArgs {
5372
5514
  */
5373
5515
  created?: pulumi.Input<string>;
5374
5516
  /**
5375
- * Whether Block Storage Disk Encryption is enabled or disabled on this Volume. Note: Block Storage Disk Encryption is not currently available to all users.
5517
+ * Whether Block Storage Disk Encryption is enabled or disabled on this Volume.
5376
5518
  */
5377
5519
  encryption?: pulumi.Input<string>;
5378
5520
  /**
@@ -5622,7 +5764,7 @@ export interface GetVpcSubnetsVpcSubnet {
5622
5764
  */
5623
5765
  created?: string;
5624
5766
  /**
5625
- * The unique id of the VPC subnet.
5767
+ * ID of the interface.
5626
5768
  */
5627
5769
  id?: number;
5628
5770
  /**
@@ -5638,7 +5780,7 @@ export interface GetVpcSubnetsVpcSubnet {
5638
5780
  */
5639
5781
  label?: string;
5640
5782
  /**
5641
- * A list of Linode IDs that added to this subnet.
5783
+ * A list of Linodes added to this subnet.
5642
5784
  */
5643
5785
  linodes?: inputs.GetVpcSubnetsVpcSubnetLinode[];
5644
5786
  /**
@@ -5652,7 +5794,7 @@ export interface GetVpcSubnetsVpcSubnetArgs {
5652
5794
  */
5653
5795
  created?: pulumi.Input<string>;
5654
5796
  /**
5655
- * The unique id of the VPC subnet.
5797
+ * ID of the interface.
5656
5798
  */
5657
5799
  id?: pulumi.Input<number>;
5658
5800
  /**
@@ -5668,7 +5810,7 @@ export interface GetVpcSubnetsVpcSubnetArgs {
5668
5810
  */
5669
5811
  label?: pulumi.Input<string>;
5670
5812
  /**
5671
- * A list of Linode IDs that added to this subnet.
5813
+ * A list of Linodes added to this subnet.
5672
5814
  */
5673
5815
  linodes?: pulumi.Input<pulumi.Input<inputs.GetVpcSubnetsVpcSubnetLinodeArgs>[]>;
5674
5816
  /**
@@ -5690,29 +5832,49 @@ export interface GetVpcSubnetsVpcSubnetIpv6Args {
5690
5832
  }
5691
5833
  export interface GetVpcSubnetsVpcSubnetLinode {
5692
5834
  /**
5693
- * The unique id of the VPC subnet.
5835
+ * ID of the interface.
5694
5836
  */
5695
5837
  id: number;
5838
+ /**
5839
+ * A list of networking interfaces objects.
5840
+ */
5696
5841
  interfaces: inputs.GetVpcSubnetsVpcSubnetLinodeInterface[];
5697
5842
  }
5698
5843
  export interface GetVpcSubnetsVpcSubnetLinodeArgs {
5699
5844
  /**
5700
- * The unique id of the VPC subnet.
5845
+ * ID of the interface.
5701
5846
  */
5702
5847
  id: pulumi.Input<number>;
5848
+ /**
5849
+ * A list of networking interfaces objects.
5850
+ */
5703
5851
  interfaces: pulumi.Input<pulumi.Input<inputs.GetVpcSubnetsVpcSubnetLinodeInterfaceArgs>[]>;
5704
5852
  }
5705
5853
  export interface GetVpcSubnetsVpcSubnetLinodeInterface {
5854
+ /**
5855
+ * Whether the Interface is actively in use.
5856
+ */
5706
5857
  active: boolean;
5707
5858
  /**
5708
- * The unique id of the VPC subnet.
5859
+ * ID of Linode Config that the interface is associated with. `null` for a Linode Interface.
5860
+ */
5861
+ configId: number;
5862
+ /**
5863
+ * ID of the interface.
5709
5864
  */
5710
5865
  id: number;
5711
5866
  }
5712
5867
  export interface GetVpcSubnetsVpcSubnetLinodeInterfaceArgs {
5868
+ /**
5869
+ * Whether the Interface is actively in use.
5870
+ */
5713
5871
  active: pulumi.Input<boolean>;
5714
5872
  /**
5715
- * The unique id of the VPC subnet.
5873
+ * ID of Linode Config that the interface is associated with. `null` for a Linode Interface.
5874
+ */
5875
+ configId: pulumi.Input<number>;
5876
+ /**
5877
+ * ID of the interface.
5716
5878
  */
5717
5879
  id: pulumi.Input<number>;
5718
5880
  }
@@ -6424,6 +6586,260 @@ export interface InstanceSpec {
6424
6586
  */
6425
6587
  vcpus?: pulumi.Input<number>;
6426
6588
  }
6589
+ export interface InterfaceDefaultRoute {
6590
+ /**
6591
+ * If set to true, the interface is used for the IPv4 default route.
6592
+ */
6593
+ ipv4?: pulumi.Input<boolean>;
6594
+ /**
6595
+ * If set to true, the interface is used for the IPv6 default route.
6596
+ */
6597
+ ipv6?: pulumi.Input<boolean>;
6598
+ }
6599
+ export interface InterfacePublic {
6600
+ /**
6601
+ * IPv4 addresses for this interface.
6602
+ */
6603
+ ipv4?: pulumi.Input<inputs.InterfacePublicIpv4>;
6604
+ /**
6605
+ * IPv6 addresses for this interface.
6606
+ */
6607
+ ipv6?: pulumi.Input<inputs.InterfacePublicIpv6>;
6608
+ }
6609
+ export interface InterfacePublicIpv4 {
6610
+ /**
6611
+ * IPv4 addresses configured for this Linode interface. Each object in this list supports:
6612
+ */
6613
+ addresses?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv4Address>[]>;
6614
+ /**
6615
+ * (Computed) The IPv4 addresses assigned for use in the VPC subnet, calculated from the `addresses` input. Each object in this set supports:
6616
+ */
6617
+ assignedAddresses?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv4AssignedAddress>[]>;
6618
+ /**
6619
+ * (Computed) The IPv6 ranges assigned to this Linode interface that are also shared with another Linode. Each object in this set supports:
6620
+ */
6621
+ shareds?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv4Shared>[]>;
6622
+ }
6623
+ export interface InterfacePublicIpv4Address {
6624
+ /**
6625
+ * The IPv4 address. Defaults to "auto" for automatic assignment.
6626
+ */
6627
+ address?: pulumi.Input<string>;
6628
+ /**
6629
+ * Whether this address is the primary address for the interface.
6630
+ */
6631
+ primary?: pulumi.Input<boolean>;
6632
+ }
6633
+ export interface InterfacePublicIpv4AssignedAddress {
6634
+ /**
6635
+ * The assigned IPv4 address.
6636
+ */
6637
+ address?: pulumi.Input<string>;
6638
+ /**
6639
+ * Whether this address is the primary address for the interface.
6640
+ */
6641
+ primary?: pulumi.Input<boolean>;
6642
+ }
6643
+ export interface InterfacePublicIpv4Shared {
6644
+ /**
6645
+ * The assigned IPv4 address.
6646
+ */
6647
+ address?: pulumi.Input<string>;
6648
+ /**
6649
+ * The ID of the Linode to assign this interface to.
6650
+ */
6651
+ linodeId?: pulumi.Input<number>;
6652
+ }
6653
+ export interface InterfacePublicIpv6 {
6654
+ /**
6655
+ * Assigned additional IPv6 ranges to use in the VPC subnet, calculated from `ranges` input.
6656
+ */
6657
+ assignedRanges?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv6AssignedRange>[]>;
6658
+ /**
6659
+ * Configured IPv6 range in CIDR notation (2600:0db8::1/64) or prefix-only (/64). Each object in this list supports:
6660
+ */
6661
+ ranges?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv6Range>[]>;
6662
+ /**
6663
+ * (Computed) The IPv6 ranges assigned to this Linode interface that are also shared with another Linode. Each object in this set supports:
6664
+ */
6665
+ shareds?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv6Shared>[]>;
6666
+ /**
6667
+ * (Computed) The public SLAAC and subnet prefix settings for this public interface. Each object in this set supports:
6668
+ */
6669
+ slaacs?: pulumi.Input<pulumi.Input<inputs.InterfacePublicIpv6Slaac>[]>;
6670
+ }
6671
+ export interface InterfacePublicIpv6AssignedRange {
6672
+ /**
6673
+ * The IPv6 network range in CIDR notation.
6674
+ */
6675
+ range?: pulumi.Input<string>;
6676
+ /**
6677
+ * The public IPv6 address that the range is routed to.
6678
+ */
6679
+ routeTarget?: pulumi.Input<string>;
6680
+ }
6681
+ export interface InterfacePublicIpv6Range {
6682
+ /**
6683
+ * The IPv6 range.
6684
+ */
6685
+ range: pulumi.Input<string>;
6686
+ /**
6687
+ * The public IPv6 address that the range is routed to.
6688
+ */
6689
+ routeTarget?: pulumi.Input<string>;
6690
+ }
6691
+ export interface InterfacePublicIpv6Shared {
6692
+ /**
6693
+ * The IPv6 network range in CIDR notation.
6694
+ */
6695
+ range?: pulumi.Input<string>;
6696
+ /**
6697
+ * The public IPv6 address that the range is routed to.
6698
+ */
6699
+ routeTarget?: pulumi.Input<string>;
6700
+ }
6701
+ export interface InterfacePublicIpv6Slaac {
6702
+ /**
6703
+ * The assigned IPv4 address.
6704
+ */
6705
+ address?: pulumi.Input<string>;
6706
+ /**
6707
+ * The subnet prefix length.
6708
+ */
6709
+ prefix?: pulumi.Input<number>;
6710
+ }
6711
+ export interface InterfaceVlan {
6712
+ /**
6713
+ * The VLAN interface's private IPv4 address in CIDR notation.
6714
+ */
6715
+ ipamAddress?: pulumi.Input<string>;
6716
+ /**
6717
+ * The VLAN's unique label. Must be between 1 and 64 characters.
6718
+ */
6719
+ vlanLabel: pulumi.Input<string>;
6720
+ }
6721
+ export interface InterfaceVpc {
6722
+ /**
6723
+ * IPv4 configuration for the VPC interface.
6724
+ */
6725
+ ipv4?: pulumi.Input<inputs.InterfaceVpcIpv4>;
6726
+ /**
6727
+ * IPv6 assigned through `slaac` and `ranges`. If you create a VPC interface in a subnet with IPv6 and don’t specify `slaac` or `ranges`, a SLAAC range is added automatically. **NOTE: IPv6 VPCs may not currently be available to all users.**
6728
+ */
6729
+ ipv6?: pulumi.Input<inputs.InterfaceVpcIpv6>;
6730
+ /**
6731
+ * The VPC subnet identifier for this interface.
6732
+ */
6733
+ subnetId: pulumi.Input<number>;
6734
+ }
6735
+ export interface InterfaceVpcIpv4 {
6736
+ /**
6737
+ * Specifies the IPv4 addresses to use in the VPC subnet. Each object in this list supports:
6738
+ */
6739
+ addresses?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv4Address>[]>;
6740
+ /**
6741
+ * (Computed) The IPv4 addresses assigned for use in the VPC subnet, calculated from the `addresses` input. Each object in this set supports:
6742
+ */
6743
+ assignedAddresses?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv4AssignedAddress>[]>;
6744
+ /**
6745
+ * Assigned additional IPv6 ranges to use in the VPC subnet, calculated from `ranges` input.
6746
+ */
6747
+ assignedRanges?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv4AssignedRange>[]>;
6748
+ /**
6749
+ * IPv4 ranges in CIDR notation (1.2.3.4/24) or prefix-only format (/24). Each object in this list supports:
6750
+ */
6751
+ ranges?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv4Range>[]>;
6752
+ }
6753
+ export interface InterfaceVpcIpv4Address {
6754
+ /**
6755
+ * The IPv4 address. Defaults to "auto" for automatic assignment.
6756
+ */
6757
+ address?: pulumi.Input<string>;
6758
+ /**
6759
+ * The 1:1 NAT IPv4 address used to associate a public IPv4 address with the interface's VPC subnet IPv4 address.
6760
+ */
6761
+ nat11Address?: pulumi.Input<string>;
6762
+ /**
6763
+ * Whether this address is the primary address for the interface.
6764
+ */
6765
+ primary?: pulumi.Input<boolean>;
6766
+ }
6767
+ export interface InterfaceVpcIpv4AssignedAddress {
6768
+ /**
6769
+ * The assigned IPv4 address.
6770
+ */
6771
+ address?: pulumi.Input<string>;
6772
+ /**
6773
+ * The assigned 1:1 NAT IPv4 address used to associate a public IPv4 address with the interface's VPC subnet IPv4 address.
6774
+ */
6775
+ nat11Address?: pulumi.Input<string>;
6776
+ /**
6777
+ * Whether this address is the primary address for the interface.
6778
+ */
6779
+ primary?: pulumi.Input<boolean>;
6780
+ }
6781
+ export interface InterfaceVpcIpv4AssignedRange {
6782
+ /**
6783
+ * The IPv6 network range in CIDR notation.
6784
+ */
6785
+ range?: pulumi.Input<string>;
6786
+ }
6787
+ export interface InterfaceVpcIpv4Range {
6788
+ /**
6789
+ * The IPv4 range.
6790
+ */
6791
+ range: pulumi.Input<string>;
6792
+ }
6793
+ export interface InterfaceVpcIpv6 {
6794
+ /**
6795
+ * Assigned additional IPv6 ranges to use in the VPC subnet, calculated from `ranges` input.
6796
+ */
6797
+ assignedRanges?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv6AssignedRange>[]>;
6798
+ /**
6799
+ * Assigned IPv6 SLAAC address ranges to use in the VPC subnet, calculated from `slaac` input.
6800
+ */
6801
+ assignedSlaacs?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv6AssignedSlaac>[]>;
6802
+ /**
6803
+ * Indicates whether the IPv6 configuration profile interface is public. (Default `false`)
6804
+ */
6805
+ isPublic?: pulumi.Input<boolean>;
6806
+ /**
6807
+ * Defines additional IPv6 network ranges.
6808
+ */
6809
+ ranges?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv6Range>[]>;
6810
+ /**
6811
+ * Defines IPv6 SLAAC address ranges. An address is automatically generated from the assigned /64 prefix using the Linode’s MAC address, just like on public IPv6 interfaces. Router advertisements (RA) are sent to the Linode, so standard SLAAC configuration works without any changes.
6812
+ */
6813
+ slaacs?: pulumi.Input<pulumi.Input<inputs.InterfaceVpcIpv6Slaac>[]>;
6814
+ }
6815
+ export interface InterfaceVpcIpv6AssignedRange {
6816
+ /**
6817
+ * The IPv6 network range in CIDR notation.
6818
+ */
6819
+ range?: pulumi.Input<string>;
6820
+ }
6821
+ export interface InterfaceVpcIpv6AssignedSlaac {
6822
+ /**
6823
+ * The assigned IPv4 address.
6824
+ */
6825
+ address?: pulumi.Input<string>;
6826
+ /**
6827
+ * The IPv6 network range in CIDR notation.
6828
+ */
6829
+ range?: pulumi.Input<string>;
6830
+ }
6831
+ export interface InterfaceVpcIpv6Range {
6832
+ /**
6833
+ * The IPv6 network range in CIDR notation.
6834
+ */
6835
+ range?: pulumi.Input<string>;
6836
+ }
6837
+ export interface InterfaceVpcIpv6Slaac {
6838
+ /**
6839
+ * The IPv6 network range in CIDR notation.
6840
+ */
6841
+ range?: pulumi.Input<string>;
6842
+ }
6427
6843
  export interface LkeClusterControlPlane {
6428
6844
  /**
6429
6845
  * Defines the ACL configuration for an LKE cluster's control plane.
@@ -7075,15 +7491,25 @@ export interface VpcSubnetIpv6 {
7075
7491
  }
7076
7492
  export interface VpcSubnetLinode {
7077
7493
  /**
7078
- * The ID of the VPC Subnet.
7494
+ * ID of the interface.
7079
7495
  */
7080
7496
  id: pulumi.Input<number>;
7497
+ /**
7498
+ * A list of networking interfaces objects.
7499
+ */
7081
7500
  interfaces: pulumi.Input<pulumi.Input<inputs.VpcSubnetLinodeInterface>[]>;
7082
7501
  }
7083
7502
  export interface VpcSubnetLinodeInterface {
7503
+ /**
7504
+ * Whether the Interface is actively in use.
7505
+ */
7084
7506
  active: pulumi.Input<boolean>;
7085
7507
  /**
7086
- * The ID of the VPC Subnet.
7508
+ * ID of Linode Config that the interface is associated with. `null` for a Linode Interface.
7509
+ */
7510
+ configId: pulumi.Input<number>;
7511
+ /**
7512
+ * ID of the interface.
7087
7513
  */
7088
7514
  id: pulumi.Input<number>;
7089
7515
  }