pulumi-linode 5.4.0a1759904617__py3-none-any.whl → 5.4.0a1760067007__py3-none-any.whl

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.

Potentially problematic release.


This version of pulumi-linode might be problematic. Click here for more details.

pulumi_linode/get_vpc.py CHANGED
@@ -13,6 +13,7 @@ if sys.version_info >= (3, 11):
13
13
  else:
14
14
  from typing_extensions import NotRequired, TypedDict, TypeAlias
15
15
  from . import _utilities
16
+ from . import outputs
16
17
 
17
18
  __all__ = [
18
19
  'GetVpcResult',
@@ -26,7 +27,7 @@ class GetVpcResult:
26
27
  """
27
28
  A collection of values returned by getVpc.
28
29
  """
29
- def __init__(__self__, created=None, description=None, id=None, label=None, region=None, updated=None):
30
+ def __init__(__self__, created=None, description=None, id=None, ipv6s=None, label=None, region=None, updated=None):
30
31
  if created and not isinstance(created, str):
31
32
  raise TypeError("Expected argument 'created' to be a str")
32
33
  pulumi.set(__self__, "created", created)
@@ -36,6 +37,9 @@ class GetVpcResult:
36
37
  if id and not isinstance(id, str):
37
38
  raise TypeError("Expected argument 'id' to be a str")
38
39
  pulumi.set(__self__, "id", id)
40
+ if ipv6s and not isinstance(ipv6s, list):
41
+ raise TypeError("Expected argument 'ipv6s' to be a list")
42
+ pulumi.set(__self__, "ipv6s", ipv6s)
39
43
  if label and not isinstance(label, str):
40
44
  raise TypeError("Expected argument 'label' to be a str")
41
45
  pulumi.set(__self__, "label", label)
@@ -67,6 +71,14 @@ class GetVpcResult:
67
71
  def id(self) -> _builtins.str:
68
72
  return pulumi.get(self, "id")
69
73
 
74
+ @_builtins.property
75
+ @pulumi.getter
76
+ def ipv6s(self) -> Sequence['outputs.GetVpcIpv6Result']:
77
+ """
78
+ A list of IPv6 allocations under this VPC.
79
+ """
80
+ return pulumi.get(self, "ipv6s")
81
+
70
82
  @_builtins.property
71
83
  @pulumi.getter
72
84
  def label(self) -> _builtins.str:
@@ -101,6 +113,7 @@ class AwaitableGetVpcResult(GetVpcResult):
101
113
  created=self.created,
102
114
  description=self.description,
103
115
  id=self.id,
116
+ ipv6s=self.ipv6s,
104
117
  label=self.label,
105
118
  region=self.region,
106
119
  updated=self.updated)
@@ -124,6 +137,18 @@ def get_vpc(id: Optional[_builtins.str] = None,
124
137
  pulumi.export("vpc", foo)
125
138
  ```
126
139
 
140
+ ## IPv6
141
+
142
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
143
+
144
+ Contains information about a single IPv6 allocation under this VPC.
145
+
146
+ * `range` - The allocated range in CIDR format.
147
+
148
+ ### Subnets Reference
149
+
150
+ To list all subnets under a VPC, please refer to the get_vpc_subnets data source.
151
+
127
152
 
128
153
  :param _builtins.str id: The unique id of this VPC.
129
154
  """
@@ -136,6 +161,7 @@ def get_vpc(id: Optional[_builtins.str] = None,
136
161
  created=pulumi.get(__ret__, 'created'),
137
162
  description=pulumi.get(__ret__, 'description'),
138
163
  id=pulumi.get(__ret__, 'id'),
164
+ ipv6s=pulumi.get(__ret__, 'ipv6s'),
139
165
  label=pulumi.get(__ret__, 'label'),
140
166
  region=pulumi.get(__ret__, 'region'),
141
167
  updated=pulumi.get(__ret__, 'updated'))
@@ -157,6 +183,18 @@ def get_vpc_output(id: Optional[pulumi.Input[_builtins.str]] = None,
157
183
  pulumi.export("vpc", foo)
158
184
  ```
159
185
 
186
+ ## IPv6
187
+
188
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
189
+
190
+ Contains information about a single IPv6 allocation under this VPC.
191
+
192
+ * `range` - The allocated range in CIDR format.
193
+
194
+ ### Subnets Reference
195
+
196
+ To list all subnets under a VPC, please refer to the get_vpc_subnets data source.
197
+
160
198
 
161
199
  :param _builtins.str id: The unique id of this VPC.
162
200
  """
@@ -168,6 +206,7 @@ def get_vpc_output(id: Optional[pulumi.Input[_builtins.str]] = None,
168
206
  created=pulumi.get(__response__, 'created'),
169
207
  description=pulumi.get(__response__, 'description'),
170
208
  id=pulumi.get(__response__, 'id'),
209
+ ipv6s=pulumi.get(__response__, 'ipv6s'),
171
210
  label=pulumi.get(__response__, 'label'),
172
211
  region=pulumi.get(__response__, 'region'),
173
212
  updated=pulumi.get(__response__, 'updated')))
@@ -28,13 +28,16 @@ class GetVpcIpsResult:
28
28
  """
29
29
  A collection of values returned by getVpcIps.
30
30
  """
31
- def __init__(__self__, filters=None, id=None, vpc_id=None, vpc_ips=None):
31
+ def __init__(__self__, filters=None, id=None, ipv6=None, vpc_id=None, vpc_ips=None):
32
32
  if filters and not isinstance(filters, list):
33
33
  raise TypeError("Expected argument 'filters' to be a list")
34
34
  pulumi.set(__self__, "filters", filters)
35
35
  if id and not isinstance(id, str):
36
36
  raise TypeError("Expected argument 'id' to be a str")
37
37
  pulumi.set(__self__, "id", id)
38
+ if ipv6 and not isinstance(ipv6, bool):
39
+ raise TypeError("Expected argument 'ipv6' to be a bool")
40
+ pulumi.set(__self__, "ipv6", ipv6)
38
41
  if vpc_id and not isinstance(vpc_id, int):
39
42
  raise TypeError("Expected argument 'vpc_id' to be a int")
40
43
  pulumi.set(__self__, "vpc_id", vpc_id)
@@ -52,6 +55,11 @@ class GetVpcIpsResult:
52
55
  def id(self) -> _builtins.str:
53
56
  return pulumi.get(self, "id")
54
57
 
58
+ @_builtins.property
59
+ @pulumi.getter
60
+ def ipv6(self) -> Optional[_builtins.bool]:
61
+ return pulumi.get(self, "ipv6")
62
+
55
63
  @_builtins.property
56
64
  @pulumi.getter(name="vpcId")
57
65
  def vpc_id(self) -> Optional[_builtins.int]:
@@ -74,11 +82,13 @@ class AwaitableGetVpcIpsResult(GetVpcIpsResult):
74
82
  return GetVpcIpsResult(
75
83
  filters=self.filters,
76
84
  id=self.id,
85
+ ipv6=self.ipv6,
77
86
  vpc_id=self.vpc_id,
78
87
  vpc_ips=self.vpc_ips)
79
88
 
80
89
 
81
90
  def get_vpc_ips(filters: Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcIpsFilterArgsDict']]] = None,
91
+ ipv6: Optional[_builtins.bool] = None,
82
92
  vpc_id: Optional[_builtins.int] = None,
83
93
  vpc_ips: Optional[Sequence[Union['GetVpcIpsVpcIpArgs', 'GetVpcIpsVpcIpArgsDict']]] = None,
84
94
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetVpcIpsResult:
@@ -86,9 +96,6 @@ def get_vpc_ips(filters: Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcI
86
96
  Provides information about a list of Linode VPC IPs that match a set of filters.
87
97
  For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-vpcs-ips).
88
98
 
89
- Provides information about a list of Linode VPC IPs in a specific VPC that match a set of filters.
90
- For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-vpc-ips).
91
-
92
99
  ## Example Usage
93
100
 
94
101
  The following example shows how one might use this data source to list VPC IPs.
@@ -114,6 +121,15 @@ def get_vpc_ips(filters: Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcI
114
121
  pulumi.export("vpcIps", specific_vpc_ips.vpc_ips)
115
122
  ```
116
123
 
124
+ By default, this data source retrieves only IPv4 addresses. To instead retrieve IPv6 addresses, the `ipv6` field should be set to true:
125
+
126
+ ```python
127
+ import pulumi
128
+ import pulumi_linode as linode
129
+
130
+ all_vpc_ipv6 = linode.get_vpc_ips(ipv6=True)
131
+ ```
132
+
117
133
  ## Filterable Fields
118
134
 
119
135
  * `active`
@@ -133,6 +149,7 @@ def get_vpc_ips(filters: Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcI
133
149
  """
134
150
  __args__ = dict()
135
151
  __args__['filters'] = filters
152
+ __args__['ipv6'] = ipv6
136
153
  __args__['vpcId'] = vpc_id
137
154
  __args__['vpcIps'] = vpc_ips
138
155
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
@@ -141,9 +158,11 @@ def get_vpc_ips(filters: Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcI
141
158
  return AwaitableGetVpcIpsResult(
142
159
  filters=pulumi.get(__ret__, 'filters'),
143
160
  id=pulumi.get(__ret__, 'id'),
161
+ ipv6=pulumi.get(__ret__, 'ipv6'),
144
162
  vpc_id=pulumi.get(__ret__, 'vpc_id'),
145
163
  vpc_ips=pulumi.get(__ret__, 'vpc_ips'))
146
164
  def get_vpc_ips_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetVpcIpsFilterArgs', 'GetVpcIpsFilterArgsDict']]]]] = None,
165
+ ipv6: Optional[pulumi.Input[Optional[_builtins.bool]]] = None,
147
166
  vpc_id: Optional[pulumi.Input[Optional[_builtins.int]]] = None,
148
167
  vpc_ips: Optional[pulumi.Input[Optional[Sequence[Union['GetVpcIpsVpcIpArgs', 'GetVpcIpsVpcIpArgsDict']]]]] = None,
149
168
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetVpcIpsResult]:
@@ -151,9 +170,6 @@ def get_vpc_ips_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['G
151
170
  Provides information about a list of Linode VPC IPs that match a set of filters.
152
171
  For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-vpcs-ips).
153
172
 
154
- Provides information about a list of Linode VPC IPs in a specific VPC that match a set of filters.
155
- For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-vpc-ips).
156
-
157
173
  ## Example Usage
158
174
 
159
175
  The following example shows how one might use this data source to list VPC IPs.
@@ -179,6 +195,15 @@ def get_vpc_ips_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['G
179
195
  pulumi.export("vpcIps", specific_vpc_ips.vpc_ips)
180
196
  ```
181
197
 
198
+ By default, this data source retrieves only IPv4 addresses. To instead retrieve IPv6 addresses, the `ipv6` field should be set to true:
199
+
200
+ ```python
201
+ import pulumi
202
+ import pulumi_linode as linode
203
+
204
+ all_vpc_ipv6 = linode.get_vpc_ips(ipv6=True)
205
+ ```
206
+
182
207
  ## Filterable Fields
183
208
 
184
209
  * `active`
@@ -198,6 +223,7 @@ def get_vpc_ips_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['G
198
223
  """
199
224
  __args__ = dict()
200
225
  __args__['filters'] = filters
226
+ __args__['ipv6'] = ipv6
201
227
  __args__['vpcId'] = vpc_id
202
228
  __args__['vpcIps'] = vpc_ips
203
229
  opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
@@ -205,5 +231,6 @@ def get_vpc_ips_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['G
205
231
  return __ret__.apply(lambda __response__: GetVpcIpsResult(
206
232
  filters=pulumi.get(__response__, 'filters'),
207
233
  id=pulumi.get(__response__, 'id'),
234
+ ipv6=pulumi.get(__response__, 'ipv6'),
208
235
  vpc_id=pulumi.get(__response__, 'vpc_id'),
209
236
  vpc_ips=pulumi.get(__response__, 'vpc_ips')))
@@ -27,7 +27,7 @@ class GetVpcSubnetResult:
27
27
  """
28
28
  A collection of values returned by getVpcSubnet.
29
29
  """
30
- def __init__(__self__, created=None, id=None, ipv4=None, label=None, linodes=None, updated=None, vpc_id=None):
30
+ def __init__(__self__, created=None, id=None, ipv4=None, ipv6s=None, label=None, linodes=None, updated=None, vpc_id=None):
31
31
  if created and not isinstance(created, str):
32
32
  raise TypeError("Expected argument 'created' to be a str")
33
33
  pulumi.set(__self__, "created", created)
@@ -37,6 +37,9 @@ class GetVpcSubnetResult:
37
37
  if ipv4 and not isinstance(ipv4, str):
38
38
  raise TypeError("Expected argument 'ipv4' to be a str")
39
39
  pulumi.set(__self__, "ipv4", ipv4)
40
+ if ipv6s and not isinstance(ipv6s, list):
41
+ raise TypeError("Expected argument 'ipv6s' to be a list")
42
+ pulumi.set(__self__, "ipv6s", ipv6s)
40
43
  if label and not isinstance(label, str):
41
44
  raise TypeError("Expected argument 'label' to be a str")
42
45
  pulumi.set(__self__, "label", label)
@@ -71,6 +74,11 @@ class GetVpcSubnetResult:
71
74
  """
72
75
  return pulumi.get(self, "ipv4")
73
76
 
77
+ @_builtins.property
78
+ @pulumi.getter
79
+ def ipv6s(self) -> Sequence['outputs.GetVpcSubnetIpv6Result']:
80
+ return pulumi.get(self, "ipv6s")
81
+
74
82
  @_builtins.property
75
83
  @pulumi.getter
76
84
  def label(self) -> _builtins.str:
@@ -110,6 +118,7 @@ class AwaitableGetVpcSubnetResult(GetVpcSubnetResult):
110
118
  created=self.created,
111
119
  id=self.id,
112
120
  ipv4=self.ipv4,
121
+ ipv6s=self.ipv6s,
113
122
  label=self.label,
114
123
  linodes=self.linodes,
115
124
  updated=self.updated,
@@ -136,6 +145,14 @@ def get_vpc_subnet(id: Optional[_builtins.str] = None,
136
145
  pulumi.export("vpcSubnet", foo)
137
146
  ```
138
147
 
148
+ ## IPv6
149
+
150
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
151
+
152
+ The following attributes are exported under each entry of the `ipv6` field:
153
+
154
+ * `range` - An IPv6 range allocated to this subnet in CIDR format.
155
+
139
156
 
140
157
  :param _builtins.str id: The unique id of this VPC subnet.
141
158
  :param _builtins.int vpc_id: The id of the parent VPC for this VPC Subnet.
@@ -150,6 +167,7 @@ def get_vpc_subnet(id: Optional[_builtins.str] = None,
150
167
  created=pulumi.get(__ret__, 'created'),
151
168
  id=pulumi.get(__ret__, 'id'),
152
169
  ipv4=pulumi.get(__ret__, 'ipv4'),
170
+ ipv6s=pulumi.get(__ret__, 'ipv6s'),
153
171
  label=pulumi.get(__ret__, 'label'),
154
172
  linodes=pulumi.get(__ret__, 'linodes'),
155
173
  updated=pulumi.get(__ret__, 'updated'),
@@ -174,6 +192,14 @@ def get_vpc_subnet_output(id: Optional[pulumi.Input[_builtins.str]] = None,
174
192
  pulumi.export("vpcSubnet", foo)
175
193
  ```
176
194
 
195
+ ## IPv6
196
+
197
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
198
+
199
+ The following attributes are exported under each entry of the `ipv6` field:
200
+
201
+ * `range` - An IPv6 range allocated to this subnet in CIDR format.
202
+
177
203
 
178
204
  :param _builtins.str id: The unique id of this VPC subnet.
179
205
  :param _builtins.int vpc_id: The id of the parent VPC for this VPC Subnet.
@@ -187,6 +213,7 @@ def get_vpc_subnet_output(id: Optional[pulumi.Input[_builtins.str]] = None,
187
213
  created=pulumi.get(__response__, 'created'),
188
214
  id=pulumi.get(__response__, 'id'),
189
215
  ipv4=pulumi.get(__response__, 'ipv4'),
216
+ ipv6s=pulumi.get(__response__, 'ipv6s'),
190
217
  label=pulumi.get(__response__, 'label'),
191
218
  linodes=pulumi.get(__response__, 'linodes'),
192
219
  updated=pulumi.get(__response__, 'updated'),
@@ -102,6 +102,14 @@ def get_vpc_subnets(filters: Optional[Sequence[Union['GetVpcSubnetsFilterArgs',
102
102
  pulumi.export("vpcSubnets", filtered_subnets.vpc_subnets)
103
103
  ```
104
104
 
105
+ ## IPv6
106
+
107
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
108
+
109
+ The following attributes are exported under each entry of the `ipv6` field:
110
+
111
+ * `range` - An IPv6 range allocated to this subnet in CIDR format.
112
+
105
113
  ## Filterable Fields
106
114
 
107
115
  * `id`
@@ -151,6 +159,14 @@ def get_vpc_subnets_output(filters: Optional[pulumi.Input[Optional[Sequence[Unio
151
159
  pulumi.export("vpcSubnets", filtered_subnets.vpc_subnets)
152
160
  ```
153
161
 
162
+ ## IPv6
163
+
164
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
165
+
166
+ The following attributes are exported under each entry of the `ipv6` field:
167
+
168
+ * `range` - An IPv6 range allocated to this subnet in CIDR format.
169
+
154
170
  ## Filterable Fields
155
171
 
156
172
  * `id`
pulumi_linode/get_vpcs.py CHANGED
@@ -91,6 +91,14 @@ def get_vpcs(filters: Optional[Sequence[Union['GetVpcsFilterArgs', 'GetVpcsFilte
91
91
  pulumi.export("vpcs", filtered_vpcs.vpcs)
92
92
  ```
93
93
 
94
+ ## IPv6
95
+
96
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
97
+
98
+ Contains information about a single IPv6 allocation under a VPC.
99
+
100
+ * `range` - The allocated range in CIDR format.
101
+
94
102
  ## Filterable Fields
95
103
 
96
104
  * `id`
@@ -133,6 +141,14 @@ def get_vpcs_output(filters: Optional[pulumi.Input[Optional[Sequence[Union['GetV
133
141
  pulumi.export("vpcs", filtered_vpcs.vpcs)
134
142
  ```
135
143
 
144
+ ## IPv6
145
+
146
+ > **Limited Availability** IPv6 VPCs may not currently be available to all users.
147
+
148
+ Contains information about a single IPv6 allocation under a VPC.
149
+
150
+ * `range` - The allocated range in CIDR format.
151
+
136
152
  ## Filterable Fields
137
153
 
138
154
  * `id`
@@ -26,7 +26,8 @@ class NodeBalancerArgs:
26
26
  firewall_id: Optional[pulumi.Input[_builtins.int]] = None,
27
27
  label: Optional[pulumi.Input[_builtins.str]] = None,
28
28
  region: Optional[pulumi.Input[_builtins.str]] = None,
29
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
29
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
30
+ vpcs: Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]] = None):
30
31
  """
31
32
  The set of arguments for constructing a NodeBalancer resource.
32
33
  :param pulumi.Input[_builtins.int] client_conn_throttle: Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
@@ -39,6 +40,7 @@ class NodeBalancerArgs:
39
40
 
40
41
  - - -
41
42
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
43
+ :param pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]] vpcs: A list of VPCs to be assigned to this NodeBalancer.
42
44
  """
43
45
  if client_conn_throttle is not None:
44
46
  pulumi.set(__self__, "client_conn_throttle", client_conn_throttle)
@@ -52,6 +54,8 @@ class NodeBalancerArgs:
52
54
  pulumi.set(__self__, "region", region)
53
55
  if tags is not None:
54
56
  pulumi.set(__self__, "tags", tags)
57
+ if vpcs is not None:
58
+ pulumi.set(__self__, "vpcs", vpcs)
55
59
 
56
60
  @_builtins.property
57
61
  @pulumi.getter(name="clientConnThrottle")
@@ -129,6 +133,18 @@ class NodeBalancerArgs:
129
133
  def tags(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
130
134
  pulumi.set(self, "tags", value)
131
135
 
136
+ @_builtins.property
137
+ @pulumi.getter
138
+ def vpcs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]]:
139
+ """
140
+ A list of VPCs to be assigned to this NodeBalancer.
141
+ """
142
+ return pulumi.get(self, "vpcs")
143
+
144
+ @vpcs.setter
145
+ def vpcs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]]):
146
+ pulumi.set(self, "vpcs", value)
147
+
132
148
 
133
149
  @pulumi.input_type
134
150
  class _NodeBalancerState:
@@ -145,7 +161,8 @@ class _NodeBalancerState:
145
161
  region: Optional[pulumi.Input[_builtins.str]] = None,
146
162
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
147
163
  transfers: Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerTransferArgs']]]] = None,
148
- updated: Optional[pulumi.Input[_builtins.str]] = None):
164
+ updated: Optional[pulumi.Input[_builtins.str]] = None,
165
+ vpcs: Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]] = None):
149
166
  """
150
167
  Input properties used for looking up and filtering NodeBalancer resources.
151
168
  :param pulumi.Input[_builtins.int] client_conn_throttle: Throttle connections per second (0-20). Set to 0 (default) to disable throttling.
@@ -165,6 +182,7 @@ class _NodeBalancerState:
165
182
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
166
183
  :param pulumi.Input[Sequence[pulumi.Input['NodeBalancerTransferArgs']]] transfers: Information about the amount of transfer this NodeBalancer has had so far this month.
167
184
  :param pulumi.Input[_builtins.str] updated: When this firewall was last updated.
185
+ :param pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]] vpcs: A list of VPCs to be assigned to this NodeBalancer.
168
186
  """
169
187
  if client_conn_throttle is not None:
170
188
  pulumi.set(__self__, "client_conn_throttle", client_conn_throttle)
@@ -192,6 +210,8 @@ class _NodeBalancerState:
192
210
  pulumi.set(__self__, "transfers", transfers)
193
211
  if updated is not None:
194
212
  pulumi.set(__self__, "updated", updated)
213
+ if vpcs is not None:
214
+ pulumi.set(__self__, "vpcs", vpcs)
195
215
 
196
216
  @_builtins.property
197
217
  @pulumi.getter(name="clientConnThrottle")
@@ -353,6 +373,18 @@ class _NodeBalancerState:
353
373
  def updated(self, value: Optional[pulumi.Input[_builtins.str]]):
354
374
  pulumi.set(self, "updated", value)
355
375
 
376
+ @_builtins.property
377
+ @pulumi.getter
378
+ def vpcs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]]:
379
+ """
380
+ A list of VPCs to be assigned to this NodeBalancer.
381
+ """
382
+ return pulumi.get(self, "vpcs")
383
+
384
+ @vpcs.setter
385
+ def vpcs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NodeBalancerVpcArgs']]]]):
386
+ pulumi.set(self, "vpcs", value)
387
+
356
388
 
357
389
  @pulumi.type_token("linode:index/nodeBalancer:NodeBalancer")
358
390
  class NodeBalancer(pulumi.CustomResource):
@@ -366,6 +398,7 @@ class NodeBalancer(pulumi.CustomResource):
366
398
  label: Optional[pulumi.Input[_builtins.str]] = None,
367
399
  region: Optional[pulumi.Input[_builtins.str]] = None,
368
400
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
401
+ vpcs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerVpcArgs', 'NodeBalancerVpcArgsDict']]]]] = None,
369
402
  __props__=None):
370
403
  """
371
404
  Provides a Linode NodeBalancer resource. This can be used to create, modify, and delete Linodes NodeBalancers in Linode's managed load balancer service.
@@ -387,6 +420,8 @@ class NodeBalancer(pulumi.CustomResource):
387
420
  tags=["foobar"])
388
421
  ```
389
422
 
423
+ The following example shows how one might use this resource to configure a NodeBalancer attached to a VPC.
424
+
390
425
  ## Import
391
426
 
392
427
  Linodes NodeBalancers can be imported using the Linode NodeBalancer `id`, e.g.
@@ -407,6 +442,7 @@ class NodeBalancer(pulumi.CustomResource):
407
442
 
408
443
  - - -
409
444
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
445
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerVpcArgs', 'NodeBalancerVpcArgsDict']]]] vpcs: A list of VPCs to be assigned to this NodeBalancer.
410
446
  """
411
447
  ...
412
448
  @overload
@@ -434,6 +470,8 @@ class NodeBalancer(pulumi.CustomResource):
434
470
  tags=["foobar"])
435
471
  ```
436
472
 
473
+ The following example shows how one might use this resource to configure a NodeBalancer attached to a VPC.
474
+
437
475
  ## Import
438
476
 
439
477
  Linodes NodeBalancers can be imported using the Linode NodeBalancer `id`, e.g.
@@ -463,6 +501,7 @@ class NodeBalancer(pulumi.CustomResource):
463
501
  label: Optional[pulumi.Input[_builtins.str]] = None,
464
502
  region: Optional[pulumi.Input[_builtins.str]] = None,
465
503
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
504
+ vpcs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerVpcArgs', 'NodeBalancerVpcArgsDict']]]]] = None,
466
505
  __props__=None):
467
506
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
468
507
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -478,6 +517,7 @@ class NodeBalancer(pulumi.CustomResource):
478
517
  __props__.__dict__["label"] = label
479
518
  __props__.__dict__["region"] = region
480
519
  __props__.__dict__["tags"] = tags
520
+ __props__.__dict__["vpcs"] = vpcs
481
521
  __props__.__dict__["created"] = None
482
522
  __props__.__dict__["firewalls"] = None
483
523
  __props__.__dict__["hostname"] = None
@@ -507,7 +547,8 @@ class NodeBalancer(pulumi.CustomResource):
507
547
  region: Optional[pulumi.Input[_builtins.str]] = None,
508
548
  tags: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
509
549
  transfers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerTransferArgs', 'NodeBalancerTransferArgsDict']]]]] = None,
510
- updated: Optional[pulumi.Input[_builtins.str]] = None) -> 'NodeBalancer':
550
+ updated: Optional[pulumi.Input[_builtins.str]] = None,
551
+ vpcs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerVpcArgs', 'NodeBalancerVpcArgsDict']]]]] = None) -> 'NodeBalancer':
511
552
  """
512
553
  Get an existing NodeBalancer resource's state with the given name, id, and optional extra
513
554
  properties used to qualify the lookup.
@@ -532,6 +573,7 @@ class NodeBalancer(pulumi.CustomResource):
532
573
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] tags: A list of tags applied to this object. Tags are case-insensitive and are for organizational purposes only.
533
574
  :param pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerTransferArgs', 'NodeBalancerTransferArgsDict']]]] transfers: Information about the amount of transfer this NodeBalancer has had so far this month.
534
575
  :param pulumi.Input[_builtins.str] updated: When this firewall was last updated.
576
+ :param pulumi.Input[Sequence[pulumi.Input[Union['NodeBalancerVpcArgs', 'NodeBalancerVpcArgsDict']]]] vpcs: A list of VPCs to be assigned to this NodeBalancer.
535
577
  """
536
578
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
537
579
 
@@ -550,6 +592,7 @@ class NodeBalancer(pulumi.CustomResource):
550
592
  __props__.__dict__["tags"] = tags
551
593
  __props__.__dict__["transfers"] = transfers
552
594
  __props__.__dict__["updated"] = updated
595
+ __props__.__dict__["vpcs"] = vpcs
553
596
  return NodeBalancer(resource_name, opts=opts, __props__=__props__)
554
597
 
555
598
  @_builtins.property
@@ -660,3 +703,11 @@ class NodeBalancer(pulumi.CustomResource):
660
703
  """
661
704
  return pulumi.get(self, "updated")
662
705
 
706
+ @_builtins.property
707
+ @pulumi.getter
708
+ def vpcs(self) -> pulumi.Output[Optional[Sequence['outputs.NodeBalancerVpc']]]:
709
+ """
710
+ A list of VPCs to be assigned to this NodeBalancer.
711
+ """
712
+ return pulumi.get(self, "vpcs")
713
+