@pulumi/linode 5.4.0-alpha.1759990883 → 5.4.0-alpha.1760067007

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 (64) hide show
  1. package/databaseMysqlV2.d.ts +18 -0
  2. package/databaseMysqlV2.js +2 -0
  3. package/databaseMysqlV2.js.map +1 -1
  4. package/databasePostgresqlV2.d.ts +18 -0
  5. package/databasePostgresqlV2.js +2 -0
  6. package/databasePostgresqlV2.js.map +1 -1
  7. package/getDatabaseMysqlV2.d.ts +21 -0
  8. package/getDatabaseMysqlV2.js +20 -0
  9. package/getDatabaseMysqlV2.js.map +1 -1
  10. package/getDatabasePostgresqlV2.d.ts +21 -0
  11. package/getDatabasePostgresqlV2.js +20 -0
  12. package/getDatabasePostgresqlV2.js.map +1 -1
  13. package/getDatabases.d.ts +20 -0
  14. package/getDatabases.js +20 -0
  15. package/getDatabases.js.map +1 -1
  16. package/getNodeBalancer.d.ts +1 -0
  17. package/getNodeBalancer.js.map +1 -1
  18. package/getNodeBalancerNode.d.ts +8 -0
  19. package/getNodeBalancerNode.js.map +1 -1
  20. package/getNodebalancerVpc.d.ts +88 -0
  21. package/getNodebalancerVpc.js +64 -0
  22. package/getNodebalancerVpc.js.map +1 -0
  23. package/getNodebalancerVpcs.d.ts +154 -0
  24. package/getNodebalancerVpcs.js +120 -0
  25. package/getNodebalancerVpcs.js.map +1 -0
  26. package/getUser.d.ts +0 -3
  27. package/getUser.js +0 -2
  28. package/getUser.js.map +1 -1
  29. package/getVpc.d.ts +29 -0
  30. package/getVpc.js +24 -0
  31. package/getVpc.js.map +1 -1
  32. package/getVpcIps.d.ts +25 -6
  33. package/getVpcIps.js +24 -6
  34. package/getVpcIps.js.map +1 -1
  35. package/getVpcSubnet.d.ts +17 -0
  36. package/getVpcSubnet.js +16 -0
  37. package/getVpcSubnet.js.map +1 -1
  38. package/getVpcSubnets.d.ts +16 -0
  39. package/getVpcSubnets.js +16 -0
  40. package/getVpcSubnets.js.map +1 -1
  41. package/getVpcs.d.ts +16 -0
  42. package/getVpcs.js +16 -0
  43. package/getVpcs.js.map +1 -1
  44. package/index.d.ts +6 -0
  45. package/index.js +8 -2
  46. package/index.js.map +1 -1
  47. package/nodeBalancer.d.ts +14 -0
  48. package/nodeBalancer.js +4 -0
  49. package/nodeBalancer.js.map +1 -1
  50. package/nodeBalancerNode.d.ts +20 -0
  51. package/nodeBalancerNode.js +4 -0
  52. package/nodeBalancerNode.js.map +1 -1
  53. package/package.json +2 -2
  54. package/types/input.d.ts +294 -86
  55. package/types/output.d.ts +341 -55
  56. package/user.d.ts +0 -14
  57. package/user.js +0 -4
  58. package/user.js.map +1 -1
  59. package/vpc.d.ts +48 -0
  60. package/vpc.js +30 -0
  61. package/vpc.js.map +1 -1
  62. package/vpcSubnet.d.ts +57 -5
  63. package/vpcSubnet.js +36 -3
  64. package/vpcSubnet.js.map +1 -1
package/types/output.d.ts CHANGED
@@ -26,6 +26,20 @@ export interface DatabaseMysqlV2PendingUpdate {
26
26
  description: string;
27
27
  plannedFor: string;
28
28
  }
29
+ export interface DatabaseMysqlV2PrivateNetwork {
30
+ /**
31
+ * Set to `true` to allow clients outside of the VPC to connect to the database using a public IP address.
32
+ */
33
+ publicAccess: boolean;
34
+ /**
35
+ * The ID of the VPC subnet to restrict access to this database using.
36
+ */
37
+ subnetId: number;
38
+ /**
39
+ * The ID of the virtual private cloud (VPC) to restrict access to this database using.
40
+ */
41
+ vpcId: number;
42
+ }
29
43
  export interface DatabaseMysqlV2Timeouts {
30
44
  /**
31
45
  * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
@@ -73,6 +87,20 @@ export interface DatabasePostgresqlV2PendingUpdate {
73
87
  description: string;
74
88
  plannedFor: string;
75
89
  }
90
+ export interface DatabasePostgresqlV2PrivateNetwork {
91
+ /**
92
+ * Set to `true` to allow clients outside of the VPC to connect to the database using a public IP address.
93
+ */
94
+ publicAccess: boolean;
95
+ /**
96
+ * The ID of the VPC subnet to restrict access to this database using.
97
+ */
98
+ subnetId: number;
99
+ /**
100
+ * The ID of the virtual private cloud (VPC) to restrict access to this database using.
101
+ */
102
+ vpcId: number;
103
+ }
76
104
  export interface DatabasePostgresqlV2Timeouts {
77
105
  /**
78
106
  * A string that can be [parsed as a duration](https://pkg.go.dev/time#ParseDuration) consisting of numbers and unit suffixes, such as "30s" or "2h45m". Valid time units are "s" (seconds), "m" (minutes), "h" (hours).
@@ -676,6 +704,20 @@ export interface GetDatabaseMysqlV2PendingUpdate {
676
704
  description: string;
677
705
  plannedFor: string;
678
706
  }
707
+ export interface GetDatabaseMysqlV2PrivateNetwork {
708
+ /**
709
+ * If true, clients outside of the VPC can connect to the database using a public IP address.
710
+ */
711
+ publicAccess: boolean;
712
+ /**
713
+ * The ID of the VPC subnet to restrict access to this database using.
714
+ */
715
+ subnetId: number;
716
+ /**
717
+ * The ID of the virtual private cloud (VPC) to restrict access to this database using.
718
+ */
719
+ vpcId: number;
720
+ }
679
721
  export interface GetDatabaseMysqlV2Updates {
680
722
  dayOfWeek: number;
681
723
  duration: number;
@@ -725,6 +767,20 @@ export interface GetDatabasePostgresqlV2PendingUpdate {
725
767
  description: string;
726
768
  plannedFor: string;
727
769
  }
770
+ export interface GetDatabasePostgresqlV2PrivateNetwork {
771
+ /**
772
+ * If true, clients outside of the VPC can connect to the database using a public IP address.
773
+ */
774
+ publicAccess: boolean;
775
+ /**
776
+ * The ID of the VPC subnet to restrict access to this database using.
777
+ */
778
+ subnetId: number;
779
+ /**
780
+ * The ID of the virtual private cloud (VPC) to restrict access to this database using.
781
+ */
782
+ vpcId: number;
783
+ }
728
784
  export interface GetDatabasePostgresqlV2Updates {
729
785
  dayOfWeek: number;
730
786
  duration: number;
@@ -772,6 +828,10 @@ export interface GetDatabasesDatabase {
772
828
  * A unique, user-defined string referring to the Managed Database.
773
829
  */
774
830
  label: string;
831
+ /**
832
+ * Restricts access to this database using a virtual private cloud (VPC) that you've configured in the region where the database will live.
833
+ */
834
+ privateNetwork: outputs.GetDatabasesDatabasePrivateNetwork;
775
835
  /**
776
836
  * The region to use for the Managed Database.
777
837
  */
@@ -801,6 +861,20 @@ export interface GetDatabasesDatabase {
801
861
  */
802
862
  version: string;
803
863
  }
864
+ export interface GetDatabasesDatabasePrivateNetwork {
865
+ /**
866
+ * If true, clients outside of the VPC can connect to the database using a public IP address.
867
+ */
868
+ publicAccess: boolean;
869
+ /**
870
+ * The ID of the VPC subnet to restrict access to this database using.
871
+ */
872
+ subnetId: number;
873
+ /**
874
+ * The ID of the virtual private cloud (VPC) to restrict access to this database using.
875
+ */
876
+ vpcId: number;
877
+ }
804
878
  export interface GetDatabasesFilter {
805
879
  /**
806
880
  * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
@@ -2325,6 +2399,10 @@ export interface GetInstancesInstanceConfigInterface {
2325
2399
  * This Linode's IPv4 Addresses. Each Linode is assigned a single public IPv4 address upon creation, and may get a single private IPv4 address if needed. You may need to open a support ticket to get additional IPv4 addresses.
2326
2400
  */
2327
2401
  ipv4: outputs.GetInstancesInstanceConfigInterfaceIpv4;
2402
+ /**
2403
+ * This Linode's IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared. The prefix (`/128`) is included in this attribute.
2404
+ */
2405
+ ipv6: outputs.GetInstancesInstanceConfigInterfaceIpv6;
2328
2406
  /**
2329
2407
  * The label of the Placement Group. This field can only contain ASCII letters, digits and dashes.
2330
2408
  */
@@ -2356,6 +2434,44 @@ export interface GetInstancesInstanceConfigInterfaceIpv4 {
2356
2434
  */
2357
2435
  vpc: string;
2358
2436
  }
2437
+ export interface GetInstancesInstanceConfigInterfaceIpv6 {
2438
+ /**
2439
+ * If true, connections from the interface to IPv6 addresses outside the VPC, and connections from IPv6 addresses outside the VPC to the interface will be permitted. (Default: `false`)
2440
+ */
2441
+ isPublic: boolean;
2442
+ /**
2443
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
2444
+ */
2445
+ ranges: outputs.GetInstancesInstanceConfigInterfaceIpv6Range[];
2446
+ /**
2447
+ * An array of SLAAC prefixes to use for this interface.
2448
+ */
2449
+ slaacs: outputs.GetInstancesInstanceConfigInterfaceIpv6Slaac[];
2450
+ }
2451
+ export interface GetInstancesInstanceConfigInterfaceIpv6Range {
2452
+ /**
2453
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
2454
+ */
2455
+ assignedRange: string;
2456
+ /**
2457
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
2458
+ */
2459
+ range?: string;
2460
+ }
2461
+ export interface GetInstancesInstanceConfigInterfaceIpv6Slaac {
2462
+ /**
2463
+ * The SLAAC address chosen for this interface.
2464
+ */
2465
+ address: string;
2466
+ /**
2467
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
2468
+ */
2469
+ assignedRange: string;
2470
+ /**
2471
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
2472
+ */
2473
+ range?: string;
2474
+ }
2359
2475
  export interface GetInstancesInstanceDisk {
2360
2476
  /**
2361
2477
  * The Disk filesystem can be one of: `"raw"`, `"swap"`, `"ext3"`, `"ext4"`, or `"initrd"` which has a max size of 32mb and can be used in the config `initrd` (not currently supported in this provider).
@@ -3135,6 +3251,16 @@ export interface GetNodeBalancerTransfer {
3135
3251
  */
3136
3252
  total: number;
3137
3253
  }
3254
+ export interface GetNodeBalancerVpc {
3255
+ /**
3256
+ * A CIDR range for the VPC's IPv4 addresses. The NodeBalancer sources IP addresses from this range when routing traffic to the backend VPC nodes.
3257
+ */
3258
+ ipv4Range: string;
3259
+ /**
3260
+ * The ID of a subnet to assign to this NodeBalancer.
3261
+ */
3262
+ subnetId: number;
3263
+ }
3138
3264
  export interface GetNodebalancerConfigsFilter {
3139
3265
  /**
3140
3266
  * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
@@ -3243,6 +3369,44 @@ export interface GetNodebalancerConfigsNodebalancerConfigNodeStatus {
3243
3369
  */
3244
3370
  up: number;
3245
3371
  }
3372
+ export interface GetNodebalancerVpcsFilter {
3373
+ /**
3374
+ * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
3375
+ */
3376
+ matchBy?: string;
3377
+ /**
3378
+ * The name of the field to filter by. See the Filterable Fields section for a complete list of filterable fields.
3379
+ */
3380
+ name: string;
3381
+ /**
3382
+ * A list of values for the filter to allow. These values should all be in string form.
3383
+ */
3384
+ values: string[];
3385
+ }
3386
+ export interface GetNodebalancerVpcsVpcConfig {
3387
+ /**
3388
+ * The ID of the VPC configuration.
3389
+ */
3390
+ id: number;
3391
+ /**
3392
+ * A CIDR range for the VPC's IPv4 addresses. The NodeBalancer sources IP addresses from this range when routing traffic to the backend VPC nodes.
3393
+ */
3394
+ ipv4Range: string;
3395
+ /**
3396
+ * The ID of the NodeBalancer to list VPC configurations for.
3397
+ *
3398
+ * * `filter` - (Optional) A set of filters used to select VPC configurations that meet certain requirements.
3399
+ */
3400
+ nodebalancerId: number;
3401
+ /**
3402
+ * The ID of this configuration's VPC subnet.
3403
+ */
3404
+ subnetId: number;
3405
+ /**
3406
+ * The ID of this configuration's VPC.
3407
+ */
3408
+ vpcId: number;
3409
+ }
3246
3410
  export interface GetNodebalancersFilter {
3247
3411
  /**
3248
3412
  * The method to match the field by. (`exact`, `regex`, `substring`; default `exact`)
@@ -3857,10 +4021,6 @@ export interface GetUserGlobalGrant {
3857
4021
  * If true, this User may add NodeBalancers.
3858
4022
  */
3859
4023
  addNodebalancers: boolean;
3860
- /**
3861
- * If true, this User may add Placement Groups.
3862
- */
3863
- addPlacementGroups: boolean;
3864
4024
  addStackscripts: boolean;
3865
4025
  /**
3866
4026
  * If true, this User may add Volumes.
@@ -3935,20 +4095,6 @@ export interface GetUserNodebalancerGrant {
3935
4095
  */
3936
4096
  permissions: string;
3937
4097
  }
3938
- export interface GetUserPlacementGroupGrant {
3939
- /**
3940
- * The ID of entity this grant applies to.
3941
- */
3942
- id: number;
3943
- /**
3944
- * The current label of the entity this grant applies to, for display purposes.
3945
- */
3946
- label: string;
3947
- /**
3948
- * The level of access this User has to this entity. If null, this User has no access. (`readOnly`, `readWrite`)
3949
- */
3950
- permissions: string;
3951
- }
3952
4098
  export interface GetUserStackscriptGrant {
3953
4099
  /**
3954
4100
  * The ID of entity this grant applies to.
@@ -4050,10 +4196,6 @@ export interface GetUsersUser {
4050
4196
  * The date and time when this User’s current password was created. User passwords are first created during the Account sign-up process, and updated using the Reset Password webpage. null if this User has not created a password yet.
4051
4197
  */
4052
4198
  passwordCreated: string;
4053
- /**
4054
- * A set containing all of the user's active grants.
4055
- */
4056
- placementGroupGrants: outputs.GetUsersUserPlacementGroupGrant[];
4057
4199
  /**
4058
4200
  * If true, this User must be granted access to perform actions or access entities on this Account.
4059
4201
  */
@@ -4166,10 +4308,6 @@ export interface GetUsersUserGlobalGrant {
4166
4308
  * If true, this User may add NodeBalancers.
4167
4309
  */
4168
4310
  addNodebalancers: boolean;
4169
- /**
4170
- * If true, this User may add Placement Groups.
4171
- */
4172
- addPlacementGroups: boolean;
4173
4311
  addStackscripts: boolean;
4174
4312
  /**
4175
4313
  * If true, this User may add Volumes.
@@ -4244,20 +4382,6 @@ export interface GetUsersUserNodebalancerGrant {
4244
4382
  */
4245
4383
  permissions: string;
4246
4384
  }
4247
- export interface GetUsersUserPlacementGroupGrant {
4248
- /**
4249
- * The ID of entity this grant applies to.
4250
- */
4251
- id: number;
4252
- /**
4253
- * The current label of the entity this grant applies to, for display purposes.
4254
- */
4255
- label: string;
4256
- /**
4257
- * The level of access this User has to this entity. If null, this User has no access.
4258
- */
4259
- permissions: string;
4260
- }
4261
4385
  export interface GetUsersUserStackscriptGrant {
4262
4386
  /**
4263
4387
  * The ID of entity this grant applies to.
@@ -4485,6 +4609,18 @@ export interface GetVpcIpsVpcIp {
4485
4609
  * The globally general API entity identifier for the Linode interface.
4486
4610
  */
4487
4611
  interfaceId: number;
4612
+ /**
4613
+ * The addresses within the prefix that the interface is associated with.
4614
+ */
4615
+ ipv6Addresses: outputs.GetVpcIpsVpcIpIpv6Address[];
4616
+ /**
4617
+ * The isPublic setting for the interface associated with this address.
4618
+ */
4619
+ ipv6IsPublic: boolean;
4620
+ /**
4621
+ * The /64 prefix, in CIDR notation, assigned to an interface.
4622
+ */
4623
+ ipv6Range: string;
4488
4624
  /**
4489
4625
  * The identifier for the Linode the VPC interface currently belongs to.
4490
4626
  */
@@ -4516,6 +4652,24 @@ export interface GetVpcIpsVpcIp {
4516
4652
  */
4517
4653
  vpcId: number;
4518
4654
  }
4655
+ export interface GetVpcIpsVpcIpIpv6Address {
4656
+ /**
4657
+ * A specific address within the prefix that the interface is expected to autoconfigure through SLAAC.
4658
+ */
4659
+ slaacAddress: string;
4660
+ }
4661
+ export interface GetVpcIpv6 {
4662
+ /**
4663
+ * The IPv6 range assigned to this VPC.
4664
+ */
4665
+ range: string;
4666
+ }
4667
+ export interface GetVpcSubnetIpv6 {
4668
+ /**
4669
+ * An IPv6 range allocated to this subnet.
4670
+ */
4671
+ range: string;
4672
+ }
4519
4673
  export interface GetVpcSubnetLinode {
4520
4674
  /**
4521
4675
  * The unique id of this VPC subnet.
@@ -4557,6 +4711,10 @@ export interface GetVpcSubnetsVpcSubnet {
4557
4711
  * The IPv4 range of this subnet in CIDR format.
4558
4712
  */
4559
4713
  ipv4: string;
4714
+ /**
4715
+ * The IPv6 ranges of this subnet.
4716
+ */
4717
+ ipv6s: outputs.GetVpcSubnetsVpcSubnetIpv6[];
4560
4718
  /**
4561
4719
  * The label of the VPC subnet.
4562
4720
  */
@@ -4570,6 +4728,12 @@ export interface GetVpcSubnetsVpcSubnet {
4570
4728
  */
4571
4729
  updated: string;
4572
4730
  }
4731
+ export interface GetVpcSubnetsVpcSubnetIpv6 {
4732
+ /**
4733
+ * An IPv6 range allocated to this subnet.
4734
+ */
4735
+ range: string;
4736
+ }
4573
4737
  export interface GetVpcSubnetsVpcSubnetLinode {
4574
4738
  /**
4575
4739
  * The unique id of the VPC subnet.
@@ -4611,6 +4775,10 @@ export interface GetVpcsVpc {
4611
4775
  * The unique id of this VPC.
4612
4776
  */
4613
4777
  id: string;
4778
+ /**
4779
+ * A list of IPv6 allocations under this VPC.
4780
+ */
4781
+ ipv6s: outputs.GetVpcsVpcIpv6[];
4614
4782
  /**
4615
4783
  * The label of the VPC.
4616
4784
  */
@@ -4624,6 +4792,12 @@ export interface GetVpcsVpc {
4624
4792
  */
4625
4793
  updated: string;
4626
4794
  }
4795
+ export interface GetVpcsVpcIpv6 {
4796
+ /**
4797
+ * The IPv6 range assigned to this VPC.
4798
+ */
4799
+ range: string;
4800
+ }
4627
4801
  export interface ImageReplication {
4628
4802
  /**
4629
4803
  * The region of the image. See all regions [here](https://techdocs.akamai.com/linode-api/reference/get-regions).
@@ -4707,7 +4881,7 @@ export interface InstanceConfig {
4707
4881
  /**
4708
4882
  * A Kernel ID to boot a Linode with. Default is based on image choice. (examples: linode/latest-64bit, linode/grub2, linode/direct-disk)
4709
4883
  */
4710
- kernel?: string;
4884
+ kernel: string;
4711
4885
  /**
4712
4886
  * The Linode's label is for display purposes only. If no label is provided for a Linode, a default will be assigned.
4713
4887
  */
@@ -4922,6 +5096,10 @@ export interface InstanceConfigInterface {
4922
5096
  * The IPv4 configuration of the VPC interface.This attribute is only allowed for VPC interfaces.
4923
5097
  */
4924
5098
  ipv4: outputs.InstanceConfigInterfaceIpv4;
5099
+ /**
5100
+ * The IPv6 configuration of the VPC interface. This attribute is only allowed for VPC interfaces.
5101
+ */
5102
+ ipv6: outputs.InstanceConfigInterfaceIpv6;
4925
5103
  /**
4926
5104
  * The name of the VLAN to join. This field is only allowed and required for interfaces with the `vlan` purpose.
4927
5105
  */
@@ -4931,6 +5109,8 @@ export interface InstanceConfigInterface {
4931
5109
  *
4932
5110
  * * `ipv4` - (Optional) The IPv4 configuration of the VPC interface. This field is currently only allowed for interfaces with the `vpc` purpose.
4933
5111
  *
5112
+ * * `ipv6` - (Optional) The IPv6 configuration of the VPC interface. This field is currently only allowed for interfaces with the `vpc` purpose. NOTE: IPv6 VPCs may not yet be available to all users.
5113
+ *
4934
5114
  * The following computed attribute is available in a VPC interface:
4935
5115
  */
4936
5116
  primary?: boolean;
@@ -4957,6 +5137,48 @@ export interface InstanceConfigInterfaceIpv4 {
4957
5137
  */
4958
5138
  vpc: string;
4959
5139
  }
5140
+ export interface InstanceConfigInterfaceIpv6 {
5141
+ /**
5142
+ * If true, connections from the interface to IPv6 addresses outside the VPC, and connections from IPv6 addresses outside the VPC to the interface will be permitted. (Default: `false`)
5143
+ *
5144
+ * * `slaac` - (Optional) An array of SLAAC prefixes to use for this interface.
5145
+ *
5146
+ * * `range` - (Optional) An array of IPv6 ranges to use for this interface.
5147
+ */
5148
+ isPublic: boolean;
5149
+ /**
5150
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5151
+ */
5152
+ ranges: outputs.InstanceConfigInterfaceIpv6Range[];
5153
+ /**
5154
+ * An array of SLAAC prefixes to use for this interface.
5155
+ */
5156
+ slaacs: outputs.InstanceConfigInterfaceIpv6Slaac[];
5157
+ }
5158
+ export interface InstanceConfigInterfaceIpv6Range {
5159
+ /**
5160
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
5161
+ */
5162
+ assignedRange: string;
5163
+ /**
5164
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5165
+ */
5166
+ range?: string;
5167
+ }
5168
+ export interface InstanceConfigInterfaceIpv6Slaac {
5169
+ /**
5170
+ * The SLAAC address chosen for this interface.
5171
+ */
5172
+ address: string;
5173
+ /**
5174
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
5175
+ */
5176
+ assignedRange: string;
5177
+ /**
5178
+ * A SLAAC prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5179
+ */
5180
+ range?: string;
5181
+ }
4960
5182
  export interface InstanceDisk {
4961
5183
  /**
4962
5184
  * A list of SSH public keys to deploy for the root user on the newly created Linode. Only accepted if 'image' is provided.
@@ -5042,6 +5264,10 @@ export interface InstanceInterface {
5042
5264
  * * **NOTE: IP reservation is not currently available to all users.**
5043
5265
  */
5044
5266
  ipv4: outputs.InstanceInterfaceIpv4;
5267
+ /**
5268
+ * This Linode's IPv6 SLAAC addresses. This address is specific to a Linode, and may not be shared. The prefix (`/128`) is included in this attribute.
5269
+ */
5270
+ ipv6: outputs.InstanceInterfaceIpv6;
5045
5271
  /**
5046
5272
  * The name of the VLAN to join. This field is only allowed and required for interfaces with the `vlan` purpose.
5047
5273
  */
@@ -5051,6 +5277,8 @@ export interface InstanceInterface {
5051
5277
  *
5052
5278
  * * `ipv4` - (Optional) The IPv4 configuration of the VPC interface. This field is currently only allowed for interfaces with the `vpc` purpose.
5053
5279
  *
5280
+ * * `ipv6` - (Optional) The IPv6 configuration of the VPC interface. This field is currently only allowed for interfaces with the `vpc` purpose. NOTE: IPv6 VPCs may not yet be available to all users.
5281
+ *
5054
5282
  * The following computed attribute is available in a VPC interface:
5055
5283
  */
5056
5284
  primary?: boolean;
@@ -5077,6 +5305,48 @@ export interface InstanceInterfaceIpv4 {
5077
5305
  */
5078
5306
  vpc: string;
5079
5307
  }
5308
+ export interface InstanceInterfaceIpv6 {
5309
+ /**
5310
+ * If true, connections from the interface to IPv6 addresses outside the VPC, and connections from IPv6 addresses outside the VPC to the interface will be permitted. (Default: `false`)
5311
+ *
5312
+ * * `slaac` - (Optional) An array of SLAAC prefixes to use for this interface.
5313
+ *
5314
+ * * `range` - (Optional) An array of IPv6 ranges to use for this interface.
5315
+ */
5316
+ isPublic: boolean;
5317
+ /**
5318
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5319
+ */
5320
+ ranges: outputs.InstanceInterfaceIpv6Range[];
5321
+ /**
5322
+ * An array of SLAAC prefixes to use for this interface.
5323
+ */
5324
+ slaacs: outputs.InstanceInterfaceIpv6Slaac[];
5325
+ }
5326
+ export interface InstanceInterfaceIpv6Range {
5327
+ /**
5328
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
5329
+ */
5330
+ assignedRange: string;
5331
+ /**
5332
+ * A prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5333
+ */
5334
+ range?: string;
5335
+ }
5336
+ export interface InstanceInterfaceIpv6Slaac {
5337
+ /**
5338
+ * The SLAAC address chosen for this interface.
5339
+ */
5340
+ address: string;
5341
+ /**
5342
+ * The value of `range` computed by the API. This is necessary when needing to access the range implicitly allocated using `auto`.
5343
+ */
5344
+ assignedRange: string;
5345
+ /**
5346
+ * A SLAAC prefix to add to this interface, or `auto` for a new IPv6 prefix to be automatically allocated.
5347
+ */
5348
+ range?: string;
5349
+ }
5080
5350
  export interface InstanceIpVpcNat11 {
5081
5351
  /**
5082
5352
  * The resulting IPv4 address.
@@ -5442,6 +5712,16 @@ export interface NodeBalancerTransfer {
5442
5712
  */
5443
5713
  total: number;
5444
5714
  }
5715
+ export interface NodeBalancerVpc {
5716
+ /**
5717
+ * (Optional) A CIDR range for the VPC's IPv4 addresses. The NodeBalancer sources IP addresses from this range when routing traffic to the backend VPC nodes.
5718
+ */
5719
+ ipv4Range: string;
5720
+ /**
5721
+ * (Required) The ID of a subnet to assign to this NodeBalancer.
5722
+ */
5723
+ subnetId: number;
5724
+ }
5445
5725
  export interface ObjectStorageBucketCert {
5446
5726
  /**
5447
5727
  * The Base64 encoded and PEM formatted SSL certificate.
@@ -5640,10 +5920,6 @@ export interface UserGlobalGrants {
5640
5920
  * If true, this User may add NodeBalancers.
5641
5921
  */
5642
5922
  addNodebalancers?: boolean;
5643
- /**
5644
- * If true, this User may add Placement Groups.
5645
- */
5646
- addPlacementGroups?: boolean;
5647
5923
  /**
5648
5924
  * If true, this User may add StackScripts.
5649
5925
  */
@@ -5705,16 +5981,6 @@ export interface UserNodebalancerGrant {
5705
5981
  */
5706
5982
  permissions: string;
5707
5983
  }
5708
- export interface UserPlacementGroupGrant {
5709
- /**
5710
- * The ID of the entity this grant applies to.
5711
- */
5712
- id: number;
5713
- /**
5714
- * The level of access this User has to this entity. If null, this User has no access.
5715
- */
5716
- permissions: string;
5717
- }
5718
5984
  export interface UserStackscriptGrant {
5719
5985
  /**
5720
5986
  * The ID of the entity this grant applies to.
@@ -5759,6 +6025,26 @@ export interface VolumeTimeouts {
5759
6025
  */
5760
6026
  update?: string;
5761
6027
  }
6028
+ export interface VpcIpv6 {
6029
+ /**
6030
+ * The IPv6 range assigned to this VPC.
6031
+ */
6032
+ allocatedRange: string;
6033
+ /**
6034
+ * The IPv6 range assigned to this VPC.
6035
+ */
6036
+ range?: string;
6037
+ }
6038
+ export interface VpcSubnetIpv6 {
6039
+ /**
6040
+ * The IPv6 range assigned to this subnet.
6041
+ */
6042
+ allocatedRange: string;
6043
+ /**
6044
+ * An existing IPv6 prefix owned by the current account or a forward slash (/) followed by a valid prefix length. If unspecified, a range with the default prefix will be allocated for this VPC.
6045
+ */
6046
+ range: string;
6047
+ }
5762
6048
  export interface VpcSubnetLinode {
5763
6049
  /**
5764
6050
  * The ID of the VPC Subnet.
package/user.d.ts CHANGED
@@ -58,8 +58,6 @@ import * as outputs from "./types/output";
58
58
  *
59
59
  * * `addNodebalancers` - (optional) If true, this User may add NodeBalancers.
60
60
  *
61
- * * `addPlacementGroups` - (optional) If true, this User may add Placement Groups.
62
- *
63
61
  * * `addStackscripts` - (optional) If true, this User may add StackScripts.
64
62
  *
65
63
  * * `addVpcs` - (optional) If true, this User may add Virtual Private Clouds (VPCs).
@@ -122,10 +120,6 @@ export declare class User extends pulumi.CustomResource {
122
120
  * The NodeBalancers the user has permissions access to.
123
121
  */
124
122
  readonly nodebalancerGrants: pulumi.Output<outputs.UserNodebalancerGrant[]>;
125
- /**
126
- * The Placement Groups the user has permissions access to.
127
- */
128
- readonly placementGroupGrants: pulumi.Output<outputs.UserPlacementGroupGrant[]>;
129
123
  /**
130
124
  * If true, this user will only have explicit permissions granted.
131
125
  *
@@ -207,10 +201,6 @@ export interface UserState {
207
201
  * The NodeBalancers the user has permissions access to.
208
202
  */
209
203
  nodebalancerGrants?: pulumi.Input<pulumi.Input<inputs.UserNodebalancerGrant>[]>;
210
- /**
211
- * The Placement Groups the user has permissions access to.
212
- */
213
- placementGroupGrants?: pulumi.Input<pulumi.Input<inputs.UserPlacementGroupGrant>[]>;
214
204
  /**
215
205
  * If true, this user will only have explicit permissions granted.
216
206
  *
@@ -284,10 +274,6 @@ export interface UserArgs {
284
274
  * The NodeBalancers the user has permissions access to.
285
275
  */
286
276
  nodebalancerGrants?: pulumi.Input<pulumi.Input<inputs.UserNodebalancerGrant>[]>;
287
- /**
288
- * The Placement Groups the user has permissions access to.
289
- */
290
- placementGroupGrants?: pulumi.Input<pulumi.Input<inputs.UserPlacementGroupGrant>[]>;
291
277
  /**
292
278
  * If true, this user will only have explicit permissions granted.
293
279
  *
package/user.js CHANGED
@@ -62,8 +62,6 @@ const utilities = require("./utilities");
62
62
  *
63
63
  * * `addNodebalancers` - (optional) If true, this User may add NodeBalancers.
64
64
  *
65
- * * `addPlacementGroups` - (optional) If true, this User may add Placement Groups.
66
- *
67
65
  * * `addStackscripts` - (optional) If true, this User may add StackScripts.
68
66
  *
69
67
  * * `addVpcs` - (optional) If true, this User may add Virtual Private Clouds (VPCs).
@@ -114,7 +112,6 @@ class User extends pulumi.CustomResource {
114
112
  resourceInputs["linodeGrants"] = state?.linodeGrants;
115
113
  resourceInputs["longviewGrants"] = state?.longviewGrants;
116
114
  resourceInputs["nodebalancerGrants"] = state?.nodebalancerGrants;
117
- resourceInputs["placementGroupGrants"] = state?.placementGroupGrants;
118
115
  resourceInputs["restricted"] = state?.restricted;
119
116
  resourceInputs["sshKeys"] = state?.sshKeys;
120
117
  resourceInputs["stackscriptGrants"] = state?.stackscriptGrants;
@@ -140,7 +137,6 @@ class User extends pulumi.CustomResource {
140
137
  resourceInputs["linodeGrants"] = args?.linodeGrants;
141
138
  resourceInputs["longviewGrants"] = args?.longviewGrants;
142
139
  resourceInputs["nodebalancerGrants"] = args?.nodebalancerGrants;
143
- resourceInputs["placementGroupGrants"] = args?.placementGroupGrants;
144
140
  resourceInputs["restricted"] = args?.restricted;
145
141
  resourceInputs["stackscriptGrants"] = args?.stackscriptGrants;
146
142
  resourceInputs["username"] = args?.username;
package/user.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../user.ts"],"names":[],"mappings":"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"}