pulumi-gcp 7.8.0a1706905467__py3-none-any.whl → 7.8.0a1707416007__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. pulumi_gcp/__init__.py +43 -0
  2. pulumi_gcp/alloydb/instance.py +1 -1
  3. pulumi_gcp/blockchainnodeengine/__init__.py +10 -0
  4. pulumi_gcp/blockchainnodeengine/_inputs.py +388 -0
  5. pulumi_gcp/blockchainnodeengine/blockchain_nodes.py +791 -0
  6. pulumi_gcp/blockchainnodeengine/outputs.py +441 -0
  7. pulumi_gcp/compute/__init__.py +2 -0
  8. pulumi_gcp/compute/disk.py +28 -0
  9. pulumi_gcp/compute/get_disk.py +11 -1
  10. pulumi_gcp/compute/get_instance_group_manager.py +11 -1
  11. pulumi_gcp/compute/get_machine_types.py +143 -0
  12. pulumi_gcp/compute/instance_group_manager.py +28 -0
  13. pulumi_gcp/compute/interconnect_attachment.py +75 -0
  14. pulumi_gcp/compute/outputs.py +219 -0
  15. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  16. pulumi_gcp/compute/region_network_endpoint.py +556 -0
  17. pulumi_gcp/compute/region_network_endpoint_group.py +128 -71
  18. pulumi_gcp/config/__init__.pyi +2 -0
  19. pulumi_gcp/config/vars.py +4 -0
  20. pulumi_gcp/discoveryengine/__init__.py +4 -0
  21. pulumi_gcp/discoveryengine/_inputs.py +237 -0
  22. pulumi_gcp/discoveryengine/chat_engine.py +822 -0
  23. pulumi_gcp/discoveryengine/outputs.py +304 -0
  24. pulumi_gcp/discoveryengine/search_engine.py +752 -0
  25. pulumi_gcp/filestore/_inputs.py +1 -3
  26. pulumi_gcp/filestore/outputs.py +1 -3
  27. pulumi_gcp/memcache/instance.py +61 -0
  28. pulumi_gcp/netapp/__init__.py +1 -0
  29. pulumi_gcp/netapp/storage_pool.py +34 -6
  30. pulumi_gcp/netapp/volume.py +65 -2
  31. pulumi_gcp/netapp/volume_snapshot.py +625 -0
  32. pulumi_gcp/provider.py +20 -0
  33. pulumi_gcp/vmwareengine/private_cloud.py +0 -7
  34. {pulumi_gcp-7.8.0a1706905467.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/METADATA +1 -1
  35. {pulumi_gcp-7.8.0a1706905467.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/RECORD +37 -26
  36. {pulumi_gcp-7.8.0a1706905467.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/WHEEL +0 -0
  37. {pulumi_gcp-7.8.0a1706905467.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/top_level.txt +0 -0
@@ -429,6 +429,7 @@ class _RegionInstanceGroupManagerState:
429
429
  all_instances_config: Optional[pulumi.Input['RegionInstanceGroupManagerAllInstancesConfigArgs']] = None,
430
430
  auto_healing_policies: Optional[pulumi.Input['RegionInstanceGroupManagerAutoHealingPoliciesArgs']] = None,
431
431
  base_instance_name: Optional[pulumi.Input[str]] = None,
432
+ creation_timestamp: Optional[pulumi.Input[str]] = None,
432
433
  description: Optional[pulumi.Input[str]] = None,
433
434
  distribution_policy_target_shape: Optional[pulumi.Input[str]] = None,
434
435
  distribution_policy_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -464,6 +465,7 @@ class _RegionInstanceGroupManagerState:
464
465
  are lowercase letters, numbers, and hyphens (-). Instances are named by
465
466
  appending a hyphen and a random four-character string to the base instance
466
467
  name.
468
+ :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
467
469
  :param pulumi.Input[str] description: An optional textual description of the instance
468
470
  group manager.
469
471
  :param pulumi.Input[str] distribution_policy_target_shape: The shape to which the group converges either proactively or on resize events (depending on the value set in update_policy.0.instance_redistribution_type). For more information see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/regional-mig-distribution-shape).
@@ -519,6 +521,8 @@ class _RegionInstanceGroupManagerState:
519
521
  pulumi.set(__self__, "auto_healing_policies", auto_healing_policies)
520
522
  if base_instance_name is not None:
521
523
  pulumi.set(__self__, "base_instance_name", base_instance_name)
524
+ if creation_timestamp is not None:
525
+ pulumi.set(__self__, "creation_timestamp", creation_timestamp)
522
526
  if description is not None:
523
527
  pulumi.set(__self__, "description", description)
524
528
  if distribution_policy_target_shape is not None:
@@ -608,6 +612,18 @@ class _RegionInstanceGroupManagerState:
608
612
  def base_instance_name(self, value: Optional[pulumi.Input[str]]):
609
613
  pulumi.set(self, "base_instance_name", value)
610
614
 
615
+ @property
616
+ @pulumi.getter(name="creationTimestamp")
617
+ def creation_timestamp(self) -> Optional[pulumi.Input[str]]:
618
+ """
619
+ Creation timestamp in RFC3339 text format.
620
+ """
621
+ return pulumi.get(self, "creation_timestamp")
622
+
623
+ @creation_timestamp.setter
624
+ def creation_timestamp(self, value: Optional[pulumi.Input[str]]):
625
+ pulumi.set(self, "creation_timestamp", value)
626
+
611
627
  @property
612
628
  @pulumi.getter
613
629
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -1236,6 +1252,7 @@ class RegionInstanceGroupManager(pulumi.CustomResource):
1236
1252
  __props__.__dict__["versions"] = versions
1237
1253
  __props__.__dict__["wait_for_instances"] = wait_for_instances
1238
1254
  __props__.__dict__["wait_for_instances_status"] = wait_for_instances_status
1255
+ __props__.__dict__["creation_timestamp"] = None
1239
1256
  __props__.__dict__["fingerprint"] = None
1240
1257
  __props__.__dict__["instance_group"] = None
1241
1258
  __props__.__dict__["self_link"] = None
@@ -1253,6 +1270,7 @@ class RegionInstanceGroupManager(pulumi.CustomResource):
1253
1270
  all_instances_config: Optional[pulumi.Input[pulumi.InputType['RegionInstanceGroupManagerAllInstancesConfigArgs']]] = None,
1254
1271
  auto_healing_policies: Optional[pulumi.Input[pulumi.InputType['RegionInstanceGroupManagerAutoHealingPoliciesArgs']]] = None,
1255
1272
  base_instance_name: Optional[pulumi.Input[str]] = None,
1273
+ creation_timestamp: Optional[pulumi.Input[str]] = None,
1256
1274
  description: Optional[pulumi.Input[str]] = None,
1257
1275
  distribution_policy_target_shape: Optional[pulumi.Input[str]] = None,
1258
1276
  distribution_policy_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -1293,6 +1311,7 @@ class RegionInstanceGroupManager(pulumi.CustomResource):
1293
1311
  are lowercase letters, numbers, and hyphens (-). Instances are named by
1294
1312
  appending a hyphen and a random four-character string to the base instance
1295
1313
  name.
1314
+ :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
1296
1315
  :param pulumi.Input[str] description: An optional textual description of the instance
1297
1316
  group manager.
1298
1317
  :param pulumi.Input[str] distribution_policy_target_shape: The shape to which the group converges either proactively or on resize events (depending on the value set in update_policy.0.instance_redistribution_type). For more information see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/regional-mig-distribution-shape).
@@ -1349,6 +1368,7 @@ class RegionInstanceGroupManager(pulumi.CustomResource):
1349
1368
  __props__.__dict__["all_instances_config"] = all_instances_config
1350
1369
  __props__.__dict__["auto_healing_policies"] = auto_healing_policies
1351
1370
  __props__.__dict__["base_instance_name"] = base_instance_name
1371
+ __props__.__dict__["creation_timestamp"] = creation_timestamp
1352
1372
  __props__.__dict__["description"] = description
1353
1373
  __props__.__dict__["distribution_policy_target_shape"] = distribution_policy_target_shape
1354
1374
  __props__.__dict__["distribution_policy_zones"] = distribution_policy_zones
@@ -1405,6 +1425,14 @@ class RegionInstanceGroupManager(pulumi.CustomResource):
1405
1425
  """
1406
1426
  return pulumi.get(self, "base_instance_name")
1407
1427
 
1428
+ @property
1429
+ @pulumi.getter(name="creationTimestamp")
1430
+ def creation_timestamp(self) -> pulumi.Output[str]:
1431
+ """
1432
+ Creation timestamp in RFC3339 text format.
1433
+ """
1434
+ return pulumi.get(self, "creation_timestamp")
1435
+
1408
1436
  @property
1409
1437
  @pulumi.getter
1410
1438
  def description(self) -> pulumi.Output[Optional[str]]:
@@ -0,0 +1,556 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = ['RegionNetworkEndpointArgs', 'RegionNetworkEndpoint']
13
+
14
+ @pulumi.input_type
15
+ class RegionNetworkEndpointArgs:
16
+ def __init__(__self__, *,
17
+ port: pulumi.Input[int],
18
+ region_network_endpoint_group: pulumi.Input[str],
19
+ fqdn: Optional[pulumi.Input[str]] = None,
20
+ ip_address: Optional[pulumi.Input[str]] = None,
21
+ project: Optional[pulumi.Input[str]] = None,
22
+ region: Optional[pulumi.Input[str]] = None):
23
+ """
24
+ The set of arguments for constructing a RegionNetworkEndpoint resource.
25
+ :param pulumi.Input[int] port: Port number of network endpoint.
26
+ :param pulumi.Input[str] region_network_endpoint_group: The network endpoint group this endpoint is part of.
27
+
28
+
29
+ - - -
30
+ :param pulumi.Input[str] fqdn: Fully qualified domain name of network endpoint.
31
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
32
+ :param pulumi.Input[str] ip_address: IPv4 address external endpoint.
33
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
34
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
35
+ If it is not provided, the provider project is used.
36
+ :param pulumi.Input[str] region: Region where the containing network endpoint group is located.
37
+ """
38
+ pulumi.set(__self__, "port", port)
39
+ pulumi.set(__self__, "region_network_endpoint_group", region_network_endpoint_group)
40
+ if fqdn is not None:
41
+ pulumi.set(__self__, "fqdn", fqdn)
42
+ if ip_address is not None:
43
+ pulumi.set(__self__, "ip_address", ip_address)
44
+ if project is not None:
45
+ pulumi.set(__self__, "project", project)
46
+ if region is not None:
47
+ pulumi.set(__self__, "region", region)
48
+
49
+ @property
50
+ @pulumi.getter
51
+ def port(self) -> pulumi.Input[int]:
52
+ """
53
+ Port number of network endpoint.
54
+ """
55
+ return pulumi.get(self, "port")
56
+
57
+ @port.setter
58
+ def port(self, value: pulumi.Input[int]):
59
+ pulumi.set(self, "port", value)
60
+
61
+ @property
62
+ @pulumi.getter(name="regionNetworkEndpointGroup")
63
+ def region_network_endpoint_group(self) -> pulumi.Input[str]:
64
+ """
65
+ The network endpoint group this endpoint is part of.
66
+
67
+
68
+ - - -
69
+ """
70
+ return pulumi.get(self, "region_network_endpoint_group")
71
+
72
+ @region_network_endpoint_group.setter
73
+ def region_network_endpoint_group(self, value: pulumi.Input[str]):
74
+ pulumi.set(self, "region_network_endpoint_group", value)
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def fqdn(self) -> Optional[pulumi.Input[str]]:
79
+ """
80
+ Fully qualified domain name of network endpoint.
81
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
82
+ """
83
+ return pulumi.get(self, "fqdn")
84
+
85
+ @fqdn.setter
86
+ def fqdn(self, value: Optional[pulumi.Input[str]]):
87
+ pulumi.set(self, "fqdn", value)
88
+
89
+ @property
90
+ @pulumi.getter(name="ipAddress")
91
+ def ip_address(self) -> Optional[pulumi.Input[str]]:
92
+ """
93
+ IPv4 address external endpoint.
94
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
95
+ """
96
+ return pulumi.get(self, "ip_address")
97
+
98
+ @ip_address.setter
99
+ def ip_address(self, value: Optional[pulumi.Input[str]]):
100
+ pulumi.set(self, "ip_address", value)
101
+
102
+ @property
103
+ @pulumi.getter
104
+ def project(self) -> Optional[pulumi.Input[str]]:
105
+ """
106
+ The ID of the project in which the resource belongs.
107
+ If it is not provided, the provider project is used.
108
+ """
109
+ return pulumi.get(self, "project")
110
+
111
+ @project.setter
112
+ def project(self, value: Optional[pulumi.Input[str]]):
113
+ pulumi.set(self, "project", value)
114
+
115
+ @property
116
+ @pulumi.getter
117
+ def region(self) -> Optional[pulumi.Input[str]]:
118
+ """
119
+ Region where the containing network endpoint group is located.
120
+ """
121
+ return pulumi.get(self, "region")
122
+
123
+ @region.setter
124
+ def region(self, value: Optional[pulumi.Input[str]]):
125
+ pulumi.set(self, "region", value)
126
+
127
+
128
+ @pulumi.input_type
129
+ class _RegionNetworkEndpointState:
130
+ def __init__(__self__, *,
131
+ fqdn: Optional[pulumi.Input[str]] = None,
132
+ ip_address: Optional[pulumi.Input[str]] = None,
133
+ port: Optional[pulumi.Input[int]] = None,
134
+ project: Optional[pulumi.Input[str]] = None,
135
+ region: Optional[pulumi.Input[str]] = None,
136
+ region_network_endpoint_group: Optional[pulumi.Input[str]] = None):
137
+ """
138
+ Input properties used for looking up and filtering RegionNetworkEndpoint resources.
139
+ :param pulumi.Input[str] fqdn: Fully qualified domain name of network endpoint.
140
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
141
+ :param pulumi.Input[str] ip_address: IPv4 address external endpoint.
142
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
143
+ :param pulumi.Input[int] port: Port number of network endpoint.
144
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
145
+ If it is not provided, the provider project is used.
146
+ :param pulumi.Input[str] region: Region where the containing network endpoint group is located.
147
+ :param pulumi.Input[str] region_network_endpoint_group: The network endpoint group this endpoint is part of.
148
+
149
+
150
+ - - -
151
+ """
152
+ if fqdn is not None:
153
+ pulumi.set(__self__, "fqdn", fqdn)
154
+ if ip_address is not None:
155
+ pulumi.set(__self__, "ip_address", ip_address)
156
+ if port is not None:
157
+ pulumi.set(__self__, "port", port)
158
+ if project is not None:
159
+ pulumi.set(__self__, "project", project)
160
+ if region is not None:
161
+ pulumi.set(__self__, "region", region)
162
+ if region_network_endpoint_group is not None:
163
+ pulumi.set(__self__, "region_network_endpoint_group", region_network_endpoint_group)
164
+
165
+ @property
166
+ @pulumi.getter
167
+ def fqdn(self) -> Optional[pulumi.Input[str]]:
168
+ """
169
+ Fully qualified domain name of network endpoint.
170
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
171
+ """
172
+ return pulumi.get(self, "fqdn")
173
+
174
+ @fqdn.setter
175
+ def fqdn(self, value: Optional[pulumi.Input[str]]):
176
+ pulumi.set(self, "fqdn", value)
177
+
178
+ @property
179
+ @pulumi.getter(name="ipAddress")
180
+ def ip_address(self) -> Optional[pulumi.Input[str]]:
181
+ """
182
+ IPv4 address external endpoint.
183
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
184
+ """
185
+ return pulumi.get(self, "ip_address")
186
+
187
+ @ip_address.setter
188
+ def ip_address(self, value: Optional[pulumi.Input[str]]):
189
+ pulumi.set(self, "ip_address", value)
190
+
191
+ @property
192
+ @pulumi.getter
193
+ def port(self) -> Optional[pulumi.Input[int]]:
194
+ """
195
+ Port number of network endpoint.
196
+ """
197
+ return pulumi.get(self, "port")
198
+
199
+ @port.setter
200
+ def port(self, value: Optional[pulumi.Input[int]]):
201
+ pulumi.set(self, "port", value)
202
+
203
+ @property
204
+ @pulumi.getter
205
+ def project(self) -> Optional[pulumi.Input[str]]:
206
+ """
207
+ The ID of the project in which the resource belongs.
208
+ If it is not provided, the provider project is used.
209
+ """
210
+ return pulumi.get(self, "project")
211
+
212
+ @project.setter
213
+ def project(self, value: Optional[pulumi.Input[str]]):
214
+ pulumi.set(self, "project", value)
215
+
216
+ @property
217
+ @pulumi.getter
218
+ def region(self) -> Optional[pulumi.Input[str]]:
219
+ """
220
+ Region where the containing network endpoint group is located.
221
+ """
222
+ return pulumi.get(self, "region")
223
+
224
+ @region.setter
225
+ def region(self, value: Optional[pulumi.Input[str]]):
226
+ pulumi.set(self, "region", value)
227
+
228
+ @property
229
+ @pulumi.getter(name="regionNetworkEndpointGroup")
230
+ def region_network_endpoint_group(self) -> Optional[pulumi.Input[str]]:
231
+ """
232
+ The network endpoint group this endpoint is part of.
233
+
234
+
235
+ - - -
236
+ """
237
+ return pulumi.get(self, "region_network_endpoint_group")
238
+
239
+ @region_network_endpoint_group.setter
240
+ def region_network_endpoint_group(self, value: Optional[pulumi.Input[str]]):
241
+ pulumi.set(self, "region_network_endpoint_group", value)
242
+
243
+
244
+ class RegionNetworkEndpoint(pulumi.CustomResource):
245
+ @overload
246
+ def __init__(__self__,
247
+ resource_name: str,
248
+ opts: Optional[pulumi.ResourceOptions] = None,
249
+ fqdn: Optional[pulumi.Input[str]] = None,
250
+ ip_address: Optional[pulumi.Input[str]] = None,
251
+ port: Optional[pulumi.Input[int]] = None,
252
+ project: Optional[pulumi.Input[str]] = None,
253
+ region: Optional[pulumi.Input[str]] = None,
254
+ region_network_endpoint_group: Optional[pulumi.Input[str]] = None,
255
+ __props__=None):
256
+ """
257
+ A Region network endpoint represents a IP address/FQDN and port combination that is
258
+ part of a specific network endpoint group (NEG).
259
+
260
+ **NOTE**: Network endpoints cannot be created outside of a network endpoint group.
261
+
262
+ To get more information about RegionNetworkEndpoint, see:
263
+
264
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/regionNetworkEndpointGroups)
265
+ * How-to Guides
266
+ * [Official Documentation](https://cloud.google.com/load-balancing/docs/negs/)
267
+ * [Internet NEGs Official Documentation](https://cloud.google.com/load-balancing/docs/negs/internet-neg-concepts)
268
+
269
+ ## Example Usage
270
+ ### Region Network Endpoint Internet Ip Port
271
+
272
+ ```python
273
+ import pulumi
274
+ import pulumi_gcp as gcp
275
+
276
+ default = gcp.compute.Network("default", auto_create_subnetworks=False)
277
+ group = gcp.compute.RegionNetworkEndpointGroup("group",
278
+ network=default.id,
279
+ region="us-central1",
280
+ network_endpoint_type="INTERNET_IP_PORT")
281
+ region_internet_ip_port_endpoint = gcp.compute.RegionNetworkEndpoint("region-internet-ip-port-endpoint",
282
+ region_network_endpoint_group=group.name,
283
+ region="us-central1",
284
+ ip_address="8.8.8.8",
285
+ port=443)
286
+ ```
287
+ ### Region Network Endpoint Internet Fqdn Port
288
+
289
+ ```python
290
+ import pulumi
291
+ import pulumi_gcp as gcp
292
+
293
+ default = gcp.compute.Network("default", auto_create_subnetworks=False)
294
+ group = gcp.compute.RegionNetworkEndpointGroup("group",
295
+ network=default.id,
296
+ region="us-central1",
297
+ network_endpoint_type="INTERNET_FQDN_PORT")
298
+ region_internet_fqdn_port_endpoint = gcp.compute.RegionNetworkEndpoint("region-internet-fqdn-port-endpoint",
299
+ region_network_endpoint_group=group.name,
300
+ region="us-central1",
301
+ fqdn="backend.example.com",
302
+ port=443)
303
+ ```
304
+
305
+ ## Import
306
+
307
+ RegionNetworkEndpoint can be imported using any of these accepted formats* `projects/{{project}}/regions/{{region}}/networkEndpointGroups/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{project}}/{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` When using the `pulumi import` command, RegionNetworkEndpoint can be imported using one of the formats above. For example
308
+
309
+ ```sh
310
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default projects/{{project}}/regions/{{region}}/networkEndpointGroups/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
311
+ ```
312
+
313
+ ```sh
314
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{project}}/{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
315
+ ```
316
+
317
+ ```sh
318
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
319
+ ```
320
+
321
+ ```sh
322
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
323
+ ```
324
+
325
+ :param str resource_name: The name of the resource.
326
+ :param pulumi.ResourceOptions opts: Options for the resource.
327
+ :param pulumi.Input[str] fqdn: Fully qualified domain name of network endpoint.
328
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
329
+ :param pulumi.Input[str] ip_address: IPv4 address external endpoint.
330
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
331
+ :param pulumi.Input[int] port: Port number of network endpoint.
332
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
333
+ If it is not provided, the provider project is used.
334
+ :param pulumi.Input[str] region: Region where the containing network endpoint group is located.
335
+ :param pulumi.Input[str] region_network_endpoint_group: The network endpoint group this endpoint is part of.
336
+
337
+
338
+ - - -
339
+ """
340
+ ...
341
+ @overload
342
+ def __init__(__self__,
343
+ resource_name: str,
344
+ args: RegionNetworkEndpointArgs,
345
+ opts: Optional[pulumi.ResourceOptions] = None):
346
+ """
347
+ A Region network endpoint represents a IP address/FQDN and port combination that is
348
+ part of a specific network endpoint group (NEG).
349
+
350
+ **NOTE**: Network endpoints cannot be created outside of a network endpoint group.
351
+
352
+ To get more information about RegionNetworkEndpoint, see:
353
+
354
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/regionNetworkEndpointGroups)
355
+ * How-to Guides
356
+ * [Official Documentation](https://cloud.google.com/load-balancing/docs/negs/)
357
+ * [Internet NEGs Official Documentation](https://cloud.google.com/load-balancing/docs/negs/internet-neg-concepts)
358
+
359
+ ## Example Usage
360
+ ### Region Network Endpoint Internet Ip Port
361
+
362
+ ```python
363
+ import pulumi
364
+ import pulumi_gcp as gcp
365
+
366
+ default = gcp.compute.Network("default", auto_create_subnetworks=False)
367
+ group = gcp.compute.RegionNetworkEndpointGroup("group",
368
+ network=default.id,
369
+ region="us-central1",
370
+ network_endpoint_type="INTERNET_IP_PORT")
371
+ region_internet_ip_port_endpoint = gcp.compute.RegionNetworkEndpoint("region-internet-ip-port-endpoint",
372
+ region_network_endpoint_group=group.name,
373
+ region="us-central1",
374
+ ip_address="8.8.8.8",
375
+ port=443)
376
+ ```
377
+ ### Region Network Endpoint Internet Fqdn Port
378
+
379
+ ```python
380
+ import pulumi
381
+ import pulumi_gcp as gcp
382
+
383
+ default = gcp.compute.Network("default", auto_create_subnetworks=False)
384
+ group = gcp.compute.RegionNetworkEndpointGroup("group",
385
+ network=default.id,
386
+ region="us-central1",
387
+ network_endpoint_type="INTERNET_FQDN_PORT")
388
+ region_internet_fqdn_port_endpoint = gcp.compute.RegionNetworkEndpoint("region-internet-fqdn-port-endpoint",
389
+ region_network_endpoint_group=group.name,
390
+ region="us-central1",
391
+ fqdn="backend.example.com",
392
+ port=443)
393
+ ```
394
+
395
+ ## Import
396
+
397
+ RegionNetworkEndpoint can be imported using any of these accepted formats* `projects/{{project}}/regions/{{region}}/networkEndpointGroups/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{project}}/{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` * `{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}` When using the `pulumi import` command, RegionNetworkEndpoint can be imported using one of the formats above. For example
398
+
399
+ ```sh
400
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default projects/{{project}}/regions/{{region}}/networkEndpointGroups/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
401
+ ```
402
+
403
+ ```sh
404
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{project}}/{{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
405
+ ```
406
+
407
+ ```sh
408
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{region}}/{{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
409
+ ```
410
+
411
+ ```sh
412
+ $ pulumi import gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint default {{region_network_endpoint_group}}/{{ip_address}}/{{fqdn}}/{{port}}
413
+ ```
414
+
415
+ :param str resource_name: The name of the resource.
416
+ :param RegionNetworkEndpointArgs args: The arguments to use to populate this resource's properties.
417
+ :param pulumi.ResourceOptions opts: Options for the resource.
418
+ """
419
+ ...
420
+ def __init__(__self__, resource_name: str, *args, **kwargs):
421
+ resource_args, opts = _utilities.get_resource_args_opts(RegionNetworkEndpointArgs, pulumi.ResourceOptions, *args, **kwargs)
422
+ if resource_args is not None:
423
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
424
+ else:
425
+ __self__._internal_init(resource_name, *args, **kwargs)
426
+
427
+ def _internal_init(__self__,
428
+ resource_name: str,
429
+ opts: Optional[pulumi.ResourceOptions] = None,
430
+ fqdn: Optional[pulumi.Input[str]] = None,
431
+ ip_address: Optional[pulumi.Input[str]] = None,
432
+ port: Optional[pulumi.Input[int]] = None,
433
+ project: Optional[pulumi.Input[str]] = None,
434
+ region: Optional[pulumi.Input[str]] = None,
435
+ region_network_endpoint_group: Optional[pulumi.Input[str]] = None,
436
+ __props__=None):
437
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
438
+ if not isinstance(opts, pulumi.ResourceOptions):
439
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
440
+ if opts.id is None:
441
+ if __props__ is not None:
442
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
443
+ __props__ = RegionNetworkEndpointArgs.__new__(RegionNetworkEndpointArgs)
444
+
445
+ __props__.__dict__["fqdn"] = fqdn
446
+ __props__.__dict__["ip_address"] = ip_address
447
+ if port is None and not opts.urn:
448
+ raise TypeError("Missing required property 'port'")
449
+ __props__.__dict__["port"] = port
450
+ __props__.__dict__["project"] = project
451
+ __props__.__dict__["region"] = region
452
+ if region_network_endpoint_group is None and not opts.urn:
453
+ raise TypeError("Missing required property 'region_network_endpoint_group'")
454
+ __props__.__dict__["region_network_endpoint_group"] = region_network_endpoint_group
455
+ super(RegionNetworkEndpoint, __self__).__init__(
456
+ 'gcp:compute/regionNetworkEndpoint:RegionNetworkEndpoint',
457
+ resource_name,
458
+ __props__,
459
+ opts)
460
+
461
+ @staticmethod
462
+ def get(resource_name: str,
463
+ id: pulumi.Input[str],
464
+ opts: Optional[pulumi.ResourceOptions] = None,
465
+ fqdn: Optional[pulumi.Input[str]] = None,
466
+ ip_address: Optional[pulumi.Input[str]] = None,
467
+ port: Optional[pulumi.Input[int]] = None,
468
+ project: Optional[pulumi.Input[str]] = None,
469
+ region: Optional[pulumi.Input[str]] = None,
470
+ region_network_endpoint_group: Optional[pulumi.Input[str]] = None) -> 'RegionNetworkEndpoint':
471
+ """
472
+ Get an existing RegionNetworkEndpoint resource's state with the given name, id, and optional extra
473
+ properties used to qualify the lookup.
474
+
475
+ :param str resource_name: The unique name of the resulting resource.
476
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
477
+ :param pulumi.ResourceOptions opts: Options for the resource.
478
+ :param pulumi.Input[str] fqdn: Fully qualified domain name of network endpoint.
479
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
480
+ :param pulumi.Input[str] ip_address: IPv4 address external endpoint.
481
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
482
+ :param pulumi.Input[int] port: Port number of network endpoint.
483
+ :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
484
+ If it is not provided, the provider project is used.
485
+ :param pulumi.Input[str] region: Region where the containing network endpoint group is located.
486
+ :param pulumi.Input[str] region_network_endpoint_group: The network endpoint group this endpoint is part of.
487
+
488
+
489
+ - - -
490
+ """
491
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
492
+
493
+ __props__ = _RegionNetworkEndpointState.__new__(_RegionNetworkEndpointState)
494
+
495
+ __props__.__dict__["fqdn"] = fqdn
496
+ __props__.__dict__["ip_address"] = ip_address
497
+ __props__.__dict__["port"] = port
498
+ __props__.__dict__["project"] = project
499
+ __props__.__dict__["region"] = region
500
+ __props__.__dict__["region_network_endpoint_group"] = region_network_endpoint_group
501
+ return RegionNetworkEndpoint(resource_name, opts=opts, __props__=__props__)
502
+
503
+ @property
504
+ @pulumi.getter
505
+ def fqdn(self) -> pulumi.Output[Optional[str]]:
506
+ """
507
+ Fully qualified domain name of network endpoint.
508
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_FQDN_PORT.
509
+ """
510
+ return pulumi.get(self, "fqdn")
511
+
512
+ @property
513
+ @pulumi.getter(name="ipAddress")
514
+ def ip_address(self) -> pulumi.Output[Optional[str]]:
515
+ """
516
+ IPv4 address external endpoint.
517
+ This can only be specified when network_endpoint_type of the NEG is INTERNET_IP_PORT.
518
+ """
519
+ return pulumi.get(self, "ip_address")
520
+
521
+ @property
522
+ @pulumi.getter
523
+ def port(self) -> pulumi.Output[int]:
524
+ """
525
+ Port number of network endpoint.
526
+ """
527
+ return pulumi.get(self, "port")
528
+
529
+ @property
530
+ @pulumi.getter
531
+ def project(self) -> pulumi.Output[str]:
532
+ """
533
+ The ID of the project in which the resource belongs.
534
+ If it is not provided, the provider project is used.
535
+ """
536
+ return pulumi.get(self, "project")
537
+
538
+ @property
539
+ @pulumi.getter
540
+ def region(self) -> pulumi.Output[str]:
541
+ """
542
+ Region where the containing network endpoint group is located.
543
+ """
544
+ return pulumi.get(self, "region")
545
+
546
+ @property
547
+ @pulumi.getter(name="regionNetworkEndpointGroup")
548
+ def region_network_endpoint_group(self) -> pulumi.Output[str]:
549
+ """
550
+ The network endpoint group this endpoint is part of.
551
+
552
+
553
+ - - -
554
+ """
555
+ return pulumi.get(self, "region_network_endpoint_group")
556
+