pulumi-gcp 7.8.0a1706900520__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.0a1706900520.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/METADATA +1 -1
  35. {pulumi_gcp-7.8.0a1706900520.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/RECORD +37 -26
  36. {pulumi_gcp-7.8.0a1706900520.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/WHEEL +0 -0
  37. {pulumi_gcp-7.8.0a1706900520.dist-info → pulumi_gcp-7.8.0a1707416007.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,143 @@
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
+ from . import outputs
12
+
13
+ __all__ = [
14
+ 'GetMachineTypesResult',
15
+ 'AwaitableGetMachineTypesResult',
16
+ 'get_machine_types',
17
+ 'get_machine_types_output',
18
+ ]
19
+
20
+ @pulumi.output_type
21
+ class GetMachineTypesResult:
22
+ """
23
+ A collection of values returned by getMachineTypes.
24
+ """
25
+ def __init__(__self__, filter=None, id=None, machine_types=None, project=None, zone=None):
26
+ if filter and not isinstance(filter, str):
27
+ raise TypeError("Expected argument 'filter' to be a str")
28
+ pulumi.set(__self__, "filter", filter)
29
+ if id and not isinstance(id, str):
30
+ raise TypeError("Expected argument 'id' to be a str")
31
+ pulumi.set(__self__, "id", id)
32
+ if machine_types and not isinstance(machine_types, list):
33
+ raise TypeError("Expected argument 'machine_types' to be a list")
34
+ pulumi.set(__self__, "machine_types", machine_types)
35
+ if project and not isinstance(project, str):
36
+ raise TypeError("Expected argument 'project' to be a str")
37
+ pulumi.set(__self__, "project", project)
38
+ if zone and not isinstance(zone, str):
39
+ raise TypeError("Expected argument 'zone' to be a str")
40
+ pulumi.set(__self__, "zone", zone)
41
+
42
+ @property
43
+ @pulumi.getter
44
+ def filter(self) -> Optional[str]:
45
+ return pulumi.get(self, "filter")
46
+
47
+ @property
48
+ @pulumi.getter
49
+ def id(self) -> str:
50
+ """
51
+ The provider-assigned unique ID for this managed resource.
52
+ """
53
+ return pulumi.get(self, "id")
54
+
55
+ @property
56
+ @pulumi.getter(name="machineTypes")
57
+ def machine_types(self) -> Sequence['outputs.GetMachineTypesMachineTypeResult']:
58
+ """
59
+ The list of machine types matching the provided filter. Structure is documented below.
60
+ """
61
+ return pulumi.get(self, "machine_types")
62
+
63
+ @property
64
+ @pulumi.getter
65
+ def project(self) -> str:
66
+ return pulumi.get(self, "project")
67
+
68
+ @property
69
+ @pulumi.getter
70
+ def zone(self) -> str:
71
+ return pulumi.get(self, "zone")
72
+
73
+
74
+ class AwaitableGetMachineTypesResult(GetMachineTypesResult):
75
+ # pylint: disable=using-constant-test
76
+ def __await__(self):
77
+ if False:
78
+ yield self
79
+ return GetMachineTypesResult(
80
+ filter=self.filter,
81
+ id=self.id,
82
+ machine_types=self.machine_types,
83
+ project=self.project,
84
+ zone=self.zone)
85
+
86
+
87
+ def get_machine_types(filter: Optional[str] = None,
88
+ project: Optional[str] = None,
89
+ zone: Optional[str] = None,
90
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetMachineTypesResult:
91
+ """
92
+ Provides access to available Google Compute machine types in a zone for a given project.
93
+ See more about [machine type availability](https://cloud.google.com/compute/docs/regions-zones#available) in the upstream docs.
94
+
95
+ To get more information about machine types, see:
96
+
97
+ * [API Documentation](https://cloud.google.com/compute/docs/reference/rest/v1/machineTypes/list)
98
+ * [Comparison Guide](https://cloud.google.com/compute/docs/machine-resource)
99
+
100
+ ## Example Usage
101
+
102
+
103
+ :param str filter: A filter expression that filters machine types listed in the response.
104
+ :param str project: Project from which to list available zones. Defaults to project declared in the provider.
105
+ :param str zone: Zone from which to list machine types.
106
+ """
107
+ __args__ = dict()
108
+ __args__['filter'] = filter
109
+ __args__['project'] = project
110
+ __args__['zone'] = zone
111
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
112
+ __ret__ = pulumi.runtime.invoke('gcp:compute/getMachineTypes:getMachineTypes', __args__, opts=opts, typ=GetMachineTypesResult).value
113
+
114
+ return AwaitableGetMachineTypesResult(
115
+ filter=pulumi.get(__ret__, 'filter'),
116
+ id=pulumi.get(__ret__, 'id'),
117
+ machine_types=pulumi.get(__ret__, 'machine_types'),
118
+ project=pulumi.get(__ret__, 'project'),
119
+ zone=pulumi.get(__ret__, 'zone'))
120
+
121
+
122
+ @_utilities.lift_output_func(get_machine_types)
123
+ def get_machine_types_output(filter: Optional[pulumi.Input[Optional[str]]] = None,
124
+ project: Optional[pulumi.Input[Optional[str]]] = None,
125
+ zone: Optional[pulumi.Input[Optional[str]]] = None,
126
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetMachineTypesResult]:
127
+ """
128
+ Provides access to available Google Compute machine types in a zone for a given project.
129
+ See more about [machine type availability](https://cloud.google.com/compute/docs/regions-zones#available) in the upstream docs.
130
+
131
+ To get more information about machine types, see:
132
+
133
+ * [API Documentation](https://cloud.google.com/compute/docs/reference/rest/v1/machineTypes/list)
134
+ * [Comparison Guide](https://cloud.google.com/compute/docs/machine-resource)
135
+
136
+ ## Example Usage
137
+
138
+
139
+ :param str filter: A filter expression that filters machine types listed in the response.
140
+ :param str project: Project from which to list available zones. Defaults to project declared in the provider.
141
+ :param str zone: Zone from which to list machine types.
142
+ """
143
+ ...
@@ -397,6 +397,7 @@ class _InstanceGroupManagerState:
397
397
  all_instances_config: Optional[pulumi.Input['InstanceGroupManagerAllInstancesConfigArgs']] = None,
398
398
  auto_healing_policies: Optional[pulumi.Input['InstanceGroupManagerAutoHealingPoliciesArgs']] = None,
399
399
  base_instance_name: Optional[pulumi.Input[str]] = None,
400
+ creation_timestamp: Optional[pulumi.Input[str]] = None,
400
401
  description: Optional[pulumi.Input[str]] = None,
401
402
  fingerprint: Optional[pulumi.Input[str]] = None,
402
403
  instance_group: Optional[pulumi.Input[str]] = None,
@@ -431,6 +432,7 @@ class _InstanceGroupManagerState:
431
432
  are lowercase letters, numbers, and hyphens (-). Instances are named by
432
433
  appending a hyphen and a random four-character string to the base instance
433
434
  name.
435
+ :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
434
436
  :param pulumi.Input[str] description: An optional textual description of the instance
435
437
  group manager.
436
438
  :param pulumi.Input[str] fingerprint: The fingerprint of the instance group manager.
@@ -484,6 +486,8 @@ class _InstanceGroupManagerState:
484
486
  pulumi.set(__self__, "auto_healing_policies", auto_healing_policies)
485
487
  if base_instance_name is not None:
486
488
  pulumi.set(__self__, "base_instance_name", base_instance_name)
489
+ if creation_timestamp is not None:
490
+ pulumi.set(__self__, "creation_timestamp", creation_timestamp)
487
491
  if description is not None:
488
492
  pulumi.set(__self__, "description", description)
489
493
  if fingerprint is not None:
@@ -571,6 +575,18 @@ class _InstanceGroupManagerState:
571
575
  def base_instance_name(self, value: Optional[pulumi.Input[str]]):
572
576
  pulumi.set(self, "base_instance_name", value)
573
577
 
578
+ @property
579
+ @pulumi.getter(name="creationTimestamp")
580
+ def creation_timestamp(self) -> Optional[pulumi.Input[str]]:
581
+ """
582
+ Creation timestamp in RFC3339 text format.
583
+ """
584
+ return pulumi.get(self, "creation_timestamp")
585
+
586
+ @creation_timestamp.setter
587
+ def creation_timestamp(self, value: Optional[pulumi.Input[str]]):
588
+ pulumi.set(self, "creation_timestamp", value)
589
+
574
590
  @property
575
591
  @pulumi.getter
576
592
  def description(self) -> Optional[pulumi.Input[str]]:
@@ -1188,6 +1204,7 @@ class InstanceGroupManager(pulumi.CustomResource):
1188
1204
  __props__.__dict__["wait_for_instances"] = wait_for_instances
1189
1205
  __props__.__dict__["wait_for_instances_status"] = wait_for_instances_status
1190
1206
  __props__.__dict__["zone"] = zone
1207
+ __props__.__dict__["creation_timestamp"] = None
1191
1208
  __props__.__dict__["fingerprint"] = None
1192
1209
  __props__.__dict__["instance_group"] = None
1193
1210
  __props__.__dict__["operation"] = None
@@ -1206,6 +1223,7 @@ class InstanceGroupManager(pulumi.CustomResource):
1206
1223
  all_instances_config: Optional[pulumi.Input[pulumi.InputType['InstanceGroupManagerAllInstancesConfigArgs']]] = None,
1207
1224
  auto_healing_policies: Optional[pulumi.Input[pulumi.InputType['InstanceGroupManagerAutoHealingPoliciesArgs']]] = None,
1208
1225
  base_instance_name: Optional[pulumi.Input[str]] = None,
1226
+ creation_timestamp: Optional[pulumi.Input[str]] = None,
1209
1227
  description: Optional[pulumi.Input[str]] = None,
1210
1228
  fingerprint: Optional[pulumi.Input[str]] = None,
1211
1229
  instance_group: Optional[pulumi.Input[str]] = None,
@@ -1245,6 +1263,7 @@ class InstanceGroupManager(pulumi.CustomResource):
1245
1263
  are lowercase letters, numbers, and hyphens (-). Instances are named by
1246
1264
  appending a hyphen and a random four-character string to the base instance
1247
1265
  name.
1266
+ :param pulumi.Input[str] creation_timestamp: Creation timestamp in RFC3339 text format.
1248
1267
  :param pulumi.Input[str] description: An optional textual description of the instance
1249
1268
  group manager.
1250
1269
  :param pulumi.Input[str] fingerprint: The fingerprint of the instance group manager.
@@ -1299,6 +1318,7 @@ class InstanceGroupManager(pulumi.CustomResource):
1299
1318
  __props__.__dict__["all_instances_config"] = all_instances_config
1300
1319
  __props__.__dict__["auto_healing_policies"] = auto_healing_policies
1301
1320
  __props__.__dict__["base_instance_name"] = base_instance_name
1321
+ __props__.__dict__["creation_timestamp"] = creation_timestamp
1302
1322
  __props__.__dict__["description"] = description
1303
1323
  __props__.__dict__["fingerprint"] = fingerprint
1304
1324
  __props__.__dict__["instance_group"] = instance_group
@@ -1354,6 +1374,14 @@ class InstanceGroupManager(pulumi.CustomResource):
1354
1374
  """
1355
1375
  return pulumi.get(self, "base_instance_name")
1356
1376
 
1377
+ @property
1378
+ @pulumi.getter(name="creationTimestamp")
1379
+ def creation_timestamp(self) -> pulumi.Output[str]:
1380
+ """
1381
+ Creation timestamp in RFC3339 text format.
1382
+ """
1383
+ return pulumi.get(self, "creation_timestamp")
1384
+
1357
1385
  @property
1358
1386
  @pulumi.getter
1359
1387
  def description(self) -> pulumi.Output[Optional[str]]:
@@ -29,6 +29,7 @@ class InterconnectAttachmentArgs:
29
29
  name: Optional[pulumi.Input[str]] = None,
30
30
  project: Optional[pulumi.Input[str]] = None,
31
31
  region: Optional[pulumi.Input[str]] = None,
32
+ stack_type: Optional[pulumi.Input[str]] = None,
32
33
  type: Optional[pulumi.Input[str]] = None,
33
34
  vlan_tag8021q: Optional[pulumi.Input[int]] = None):
34
35
  """
@@ -104,6 +105,11 @@ class InterconnectAttachmentArgs:
104
105
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
105
106
  If it is not provided, the provider project is used.
106
107
  :param pulumi.Input[str] region: Region where the regional interconnect attachment resides.
108
+ :param pulumi.Input[str] stack_type: The stack type for this interconnect attachment to identify whether the IPv6
109
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
110
+ This field can be both set at interconnect attachments creation and update
111
+ interconnect attachment operations.
112
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
107
113
  :param pulumi.Input[str] type: The type of InterconnectAttachment you wish to create. Defaults to
108
114
  DEDICATED.
109
115
  Possible values are: `DEDICATED`, `PARTNER`, `PARTNER_PROVIDER`.
@@ -135,6 +141,8 @@ class InterconnectAttachmentArgs:
135
141
  pulumi.set(__self__, "project", project)
136
142
  if region is not None:
137
143
  pulumi.set(__self__, "region", region)
144
+ if stack_type is not None:
145
+ pulumi.set(__self__, "stack_type", stack_type)
138
146
  if type is not None:
139
147
  pulumi.set(__self__, "type", type)
140
148
  if vlan_tag8021q is not None:
@@ -354,6 +362,22 @@ class InterconnectAttachmentArgs:
354
362
  def region(self, value: Optional[pulumi.Input[str]]):
355
363
  pulumi.set(self, "region", value)
356
364
 
365
+ @property
366
+ @pulumi.getter(name="stackType")
367
+ def stack_type(self) -> Optional[pulumi.Input[str]]:
368
+ """
369
+ The stack type for this interconnect attachment to identify whether the IPv6
370
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
371
+ This field can be both set at interconnect attachments creation and update
372
+ interconnect attachment operations.
373
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
374
+ """
375
+ return pulumi.get(self, "stack_type")
376
+
377
+ @stack_type.setter
378
+ def stack_type(self, value: Optional[pulumi.Input[str]]):
379
+ pulumi.set(self, "stack_type", value)
380
+
357
381
  @property
358
382
  @pulumi.getter
359
383
  def type(self) -> Optional[pulumi.Input[str]]:
@@ -406,6 +430,7 @@ class _InterconnectAttachmentState:
406
430
  region: Optional[pulumi.Input[str]] = None,
407
431
  router: Optional[pulumi.Input[str]] = None,
408
432
  self_link: Optional[pulumi.Input[str]] = None,
433
+ stack_type: Optional[pulumi.Input[str]] = None,
409
434
  state: Optional[pulumi.Input[str]] = None,
410
435
  type: Optional[pulumi.Input[str]] = None,
411
436
  vlan_tag8021q: Optional[pulumi.Input[int]] = None):
@@ -499,6 +524,11 @@ class _InterconnectAttachmentState:
499
524
  automatically connect the Interconnect to the network & region within which the
500
525
  Cloud Router is configured.
501
526
  :param pulumi.Input[str] self_link: The URI of the created resource.
527
+ :param pulumi.Input[str] stack_type: The stack type for this interconnect attachment to identify whether the IPv6
528
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
529
+ This field can be both set at interconnect attachments creation and update
530
+ interconnect attachment operations.
531
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
502
532
  :param pulumi.Input[str] state: [Output Only] The current state of this attachment's functionality.
503
533
  :param pulumi.Input[str] type: The type of InterconnectAttachment you wish to create. Defaults to
504
534
  DEDICATED.
@@ -548,6 +578,8 @@ class _InterconnectAttachmentState:
548
578
  pulumi.set(__self__, "router", router)
549
579
  if self_link is not None:
550
580
  pulumi.set(__self__, "self_link", self_link)
581
+ if stack_type is not None:
582
+ pulumi.set(__self__, "stack_type", stack_type)
551
583
  if state is not None:
552
584
  pulumi.set(__self__, "state", state)
553
585
  if type is not None:
@@ -874,6 +906,22 @@ class _InterconnectAttachmentState:
874
906
  def self_link(self, value: Optional[pulumi.Input[str]]):
875
907
  pulumi.set(self, "self_link", value)
876
908
 
909
+ @property
910
+ @pulumi.getter(name="stackType")
911
+ def stack_type(self) -> Optional[pulumi.Input[str]]:
912
+ """
913
+ The stack type for this interconnect attachment to identify whether the IPv6
914
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
915
+ This field can be both set at interconnect attachments creation and update
916
+ interconnect attachment operations.
917
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
918
+ """
919
+ return pulumi.get(self, "stack_type")
920
+
921
+ @stack_type.setter
922
+ def stack_type(self, value: Optional[pulumi.Input[str]]):
923
+ pulumi.set(self, "stack_type", value)
924
+
877
925
  @property
878
926
  @pulumi.getter
879
927
  def state(self) -> Optional[pulumi.Input[str]]:
@@ -932,6 +980,7 @@ class InterconnectAttachment(pulumi.CustomResource):
932
980
  project: Optional[pulumi.Input[str]] = None,
933
981
  region: Optional[pulumi.Input[str]] = None,
934
982
  router: Optional[pulumi.Input[str]] = None,
983
+ stack_type: Optional[pulumi.Input[str]] = None,
935
984
  type: Optional[pulumi.Input[str]] = None,
936
985
  vlan_tag8021q: Optional[pulumi.Input[int]] = None,
937
986
  __props__=None):
@@ -1078,6 +1127,11 @@ class InterconnectAttachment(pulumi.CustomResource):
1078
1127
  the same region as this InterconnectAttachment. The InterconnectAttachment will
1079
1128
  automatically connect the Interconnect to the network & region within which the
1080
1129
  Cloud Router is configured.
1130
+ :param pulumi.Input[str] stack_type: The stack type for this interconnect attachment to identify whether the IPv6
1131
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
1132
+ This field can be both set at interconnect attachments creation and update
1133
+ interconnect attachment operations.
1134
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
1081
1135
  :param pulumi.Input[str] type: The type of InterconnectAttachment you wish to create. Defaults to
1082
1136
  DEDICATED.
1083
1137
  Possible values are: `DEDICATED`, `PARTNER`, `PARTNER_PROVIDER`.
@@ -1188,6 +1242,7 @@ class InterconnectAttachment(pulumi.CustomResource):
1188
1242
  project: Optional[pulumi.Input[str]] = None,
1189
1243
  region: Optional[pulumi.Input[str]] = None,
1190
1244
  router: Optional[pulumi.Input[str]] = None,
1245
+ stack_type: Optional[pulumi.Input[str]] = None,
1191
1246
  type: Optional[pulumi.Input[str]] = None,
1192
1247
  vlan_tag8021q: Optional[pulumi.Input[int]] = None,
1193
1248
  __props__=None):
@@ -1214,6 +1269,7 @@ class InterconnectAttachment(pulumi.CustomResource):
1214
1269
  if router is None and not opts.urn:
1215
1270
  raise TypeError("Missing required property 'router'")
1216
1271
  __props__.__dict__["router"] = router
1272
+ __props__.__dict__["stack_type"] = stack_type
1217
1273
  __props__.__dict__["type"] = type
1218
1274
  __props__.__dict__["vlan_tag8021q"] = vlan_tag8021q
1219
1275
  __props__.__dict__["cloud_router_ip_address"] = None
@@ -1256,6 +1312,7 @@ class InterconnectAttachment(pulumi.CustomResource):
1256
1312
  region: Optional[pulumi.Input[str]] = None,
1257
1313
  router: Optional[pulumi.Input[str]] = None,
1258
1314
  self_link: Optional[pulumi.Input[str]] = None,
1315
+ stack_type: Optional[pulumi.Input[str]] = None,
1259
1316
  state: Optional[pulumi.Input[str]] = None,
1260
1317
  type: Optional[pulumi.Input[str]] = None,
1261
1318
  vlan_tag8021q: Optional[pulumi.Input[int]] = None) -> 'InterconnectAttachment':
@@ -1354,6 +1411,11 @@ class InterconnectAttachment(pulumi.CustomResource):
1354
1411
  automatically connect the Interconnect to the network & region within which the
1355
1412
  Cloud Router is configured.
1356
1413
  :param pulumi.Input[str] self_link: The URI of the created resource.
1414
+ :param pulumi.Input[str] stack_type: The stack type for this interconnect attachment to identify whether the IPv6
1415
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
1416
+ This field can be both set at interconnect attachments creation and update
1417
+ interconnect attachment operations.
1418
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
1357
1419
  :param pulumi.Input[str] state: [Output Only] The current state of this attachment's functionality.
1358
1420
  :param pulumi.Input[str] type: The type of InterconnectAttachment you wish to create. Defaults to
1359
1421
  DEDICATED.
@@ -1386,6 +1448,7 @@ class InterconnectAttachment(pulumi.CustomResource):
1386
1448
  __props__.__dict__["region"] = region
1387
1449
  __props__.__dict__["router"] = router
1388
1450
  __props__.__dict__["self_link"] = self_link
1451
+ __props__.__dict__["stack_type"] = stack_type
1389
1452
  __props__.__dict__["state"] = state
1390
1453
  __props__.__dict__["type"] = type
1391
1454
  __props__.__dict__["vlan_tag8021q"] = vlan_tag8021q
@@ -1626,6 +1689,18 @@ class InterconnectAttachment(pulumi.CustomResource):
1626
1689
  """
1627
1690
  return pulumi.get(self, "self_link")
1628
1691
 
1692
+ @property
1693
+ @pulumi.getter(name="stackType")
1694
+ def stack_type(self) -> pulumi.Output[str]:
1695
+ """
1696
+ The stack type for this interconnect attachment to identify whether the IPv6
1697
+ feature is enabled or not. If not specified, IPV4_ONLY will be used.
1698
+ This field can be both set at interconnect attachments creation and update
1699
+ interconnect attachment operations.
1700
+ Possible values are: `IPV4_IPV6`, `IPV4_ONLY`.
1701
+ """
1702
+ return pulumi.get(self, "stack_type")
1703
+
1629
1704
  @property
1630
1705
  @pulumi.getter
1631
1706
  def state(self) -> pulumi.Output[str]:
@@ -624,6 +624,10 @@ __all__ = [
624
624
  'GetInstanceTemplateSchedulingNodeAffinityResult',
625
625
  'GetInstanceTemplateServiceAccountResult',
626
626
  'GetInstanceTemplateShieldedInstanceConfigResult',
627
+ 'GetMachineTypesMachineTypeResult',
628
+ 'GetMachineTypesMachineTypeAcceleratorResult',
629
+ 'GetMachineTypesMachineTypeBundledLocalSsdResult',
630
+ 'GetMachineTypesMachineTypeDeprecatedResult',
627
631
  'GetRegionDiskAsyncPrimaryDiskResult',
628
632
  'GetRegionDiskDiskEncryptionKeyResult',
629
633
  'GetRegionDiskGuestOsFeatureResult',
@@ -43517,6 +43521,221 @@ class GetInstanceTemplateShieldedInstanceConfigResult(dict):
43517
43521
  return pulumi.get(self, "enable_vtpm")
43518
43522
 
43519
43523
 
43524
+ @pulumi.output_type
43525
+ class GetMachineTypesMachineTypeResult(dict):
43526
+ def __init__(__self__, *,
43527
+ accelerators: Sequence['outputs.GetMachineTypesMachineTypeAcceleratorResult'],
43528
+ bundled_local_ssds: Sequence['outputs.GetMachineTypesMachineTypeBundledLocalSsdResult'],
43529
+ deprecateds: Sequence['outputs.GetMachineTypesMachineTypeDeprecatedResult'],
43530
+ description: str,
43531
+ guest_cpus: int,
43532
+ is_shared_cpus: bool,
43533
+ maximum_persistent_disks: int,
43534
+ maximum_persistent_disks_size_gb: int,
43535
+ memory_mb: int,
43536
+ name: str,
43537
+ self_link: str):
43538
+ """
43539
+ :param Sequence['GetMachineTypesMachineTypeAcceleratorArgs'] accelerators: A list of accelerator configurations assigned to this machine type. Structure is documented below.
43540
+ :param Sequence['GetMachineTypesMachineTypeBundledLocalSsdArgs'] bundled_local_ssds: The configuration of bundled local SSD for the machine type. Structure is documented below.
43541
+ :param Sequence['GetMachineTypesMachineTypeDeprecatedArgs'] deprecateds: The deprecation status associated with this machine type. Structure is documented below.
43542
+ :param str description: A textual description of the machine type.
43543
+ :param int guest_cpus: The number of virtual CPUs that are available to the instance.
43544
+ :param bool is_shared_cpus: Whether this machine type has a shared CPU.
43545
+ :param int maximum_persistent_disks: The maximum persistent disks allowed.
43546
+ :param int maximum_persistent_disks_size_gb: The maximum total persistent disks size (GB) allowed.
43547
+ :param int memory_mb: The amount of physical memory available to the instance, defined in MB.
43548
+ :param str name: The name of the machine type.
43549
+ :param str self_link: The server-defined URL for the machine type.
43550
+ """
43551
+ pulumi.set(__self__, "accelerators", accelerators)
43552
+ pulumi.set(__self__, "bundled_local_ssds", bundled_local_ssds)
43553
+ pulumi.set(__self__, "deprecateds", deprecateds)
43554
+ pulumi.set(__self__, "description", description)
43555
+ pulumi.set(__self__, "guest_cpus", guest_cpus)
43556
+ pulumi.set(__self__, "is_shared_cpus", is_shared_cpus)
43557
+ pulumi.set(__self__, "maximum_persistent_disks", maximum_persistent_disks)
43558
+ pulumi.set(__self__, "maximum_persistent_disks_size_gb", maximum_persistent_disks_size_gb)
43559
+ pulumi.set(__self__, "memory_mb", memory_mb)
43560
+ pulumi.set(__self__, "name", name)
43561
+ pulumi.set(__self__, "self_link", self_link)
43562
+
43563
+ @property
43564
+ @pulumi.getter
43565
+ def accelerators(self) -> Sequence['outputs.GetMachineTypesMachineTypeAcceleratorResult']:
43566
+ """
43567
+ A list of accelerator configurations assigned to this machine type. Structure is documented below.
43568
+ """
43569
+ return pulumi.get(self, "accelerators")
43570
+
43571
+ @property
43572
+ @pulumi.getter(name="bundledLocalSsds")
43573
+ def bundled_local_ssds(self) -> Sequence['outputs.GetMachineTypesMachineTypeBundledLocalSsdResult']:
43574
+ """
43575
+ The configuration of bundled local SSD for the machine type. Structure is documented below.
43576
+ """
43577
+ return pulumi.get(self, "bundled_local_ssds")
43578
+
43579
+ @property
43580
+ @pulumi.getter
43581
+ def deprecateds(self) -> Sequence['outputs.GetMachineTypesMachineTypeDeprecatedResult']:
43582
+ """
43583
+ The deprecation status associated with this machine type. Structure is documented below.
43584
+ """
43585
+ return pulumi.get(self, "deprecateds")
43586
+
43587
+ @property
43588
+ @pulumi.getter
43589
+ def description(self) -> str:
43590
+ """
43591
+ A textual description of the machine type.
43592
+ """
43593
+ return pulumi.get(self, "description")
43594
+
43595
+ @property
43596
+ @pulumi.getter(name="guestCpus")
43597
+ def guest_cpus(self) -> int:
43598
+ """
43599
+ The number of virtual CPUs that are available to the instance.
43600
+ """
43601
+ return pulumi.get(self, "guest_cpus")
43602
+
43603
+ @property
43604
+ @pulumi.getter(name="isSharedCpus")
43605
+ def is_shared_cpus(self) -> bool:
43606
+ """
43607
+ Whether this machine type has a shared CPU.
43608
+ """
43609
+ return pulumi.get(self, "is_shared_cpus")
43610
+
43611
+ @property
43612
+ @pulumi.getter(name="maximumPersistentDisks")
43613
+ def maximum_persistent_disks(self) -> int:
43614
+ """
43615
+ The maximum persistent disks allowed.
43616
+ """
43617
+ return pulumi.get(self, "maximum_persistent_disks")
43618
+
43619
+ @property
43620
+ @pulumi.getter(name="maximumPersistentDisksSizeGb")
43621
+ def maximum_persistent_disks_size_gb(self) -> int:
43622
+ """
43623
+ The maximum total persistent disks size (GB) allowed.
43624
+ """
43625
+ return pulumi.get(self, "maximum_persistent_disks_size_gb")
43626
+
43627
+ @property
43628
+ @pulumi.getter(name="memoryMb")
43629
+ def memory_mb(self) -> int:
43630
+ """
43631
+ The amount of physical memory available to the instance, defined in MB.
43632
+ """
43633
+ return pulumi.get(self, "memory_mb")
43634
+
43635
+ @property
43636
+ @pulumi.getter
43637
+ def name(self) -> str:
43638
+ """
43639
+ The name of the machine type.
43640
+ """
43641
+ return pulumi.get(self, "name")
43642
+
43643
+ @property
43644
+ @pulumi.getter(name="selfLink")
43645
+ def self_link(self) -> str:
43646
+ """
43647
+ The server-defined URL for the machine type.
43648
+ """
43649
+ return pulumi.get(self, "self_link")
43650
+
43651
+
43652
+ @pulumi.output_type
43653
+ class GetMachineTypesMachineTypeAcceleratorResult(dict):
43654
+ def __init__(__self__, *,
43655
+ guest_accelerator_count: int,
43656
+ guest_accelerator_type: str):
43657
+ """
43658
+ :param int guest_accelerator_count: Number of accelerator cards exposed to the guest.
43659
+ :param str guest_accelerator_type: The accelerator type resource name, not a full URL, e.g. `nvidia-tesla-t4`.
43660
+ """
43661
+ pulumi.set(__self__, "guest_accelerator_count", guest_accelerator_count)
43662
+ pulumi.set(__self__, "guest_accelerator_type", guest_accelerator_type)
43663
+
43664
+ @property
43665
+ @pulumi.getter(name="guestAcceleratorCount")
43666
+ def guest_accelerator_count(self) -> int:
43667
+ """
43668
+ Number of accelerator cards exposed to the guest.
43669
+ """
43670
+ return pulumi.get(self, "guest_accelerator_count")
43671
+
43672
+ @property
43673
+ @pulumi.getter(name="guestAcceleratorType")
43674
+ def guest_accelerator_type(self) -> str:
43675
+ """
43676
+ The accelerator type resource name, not a full URL, e.g. `nvidia-tesla-t4`.
43677
+ """
43678
+ return pulumi.get(self, "guest_accelerator_type")
43679
+
43680
+
43681
+ @pulumi.output_type
43682
+ class GetMachineTypesMachineTypeBundledLocalSsdResult(dict):
43683
+ def __init__(__self__, *,
43684
+ default_interface: str,
43685
+ partition_count: int):
43686
+ """
43687
+ :param str default_interface: The default disk interface if the interface is not specified.
43688
+ :param int partition_count: The number of partitions.
43689
+ """
43690
+ pulumi.set(__self__, "default_interface", default_interface)
43691
+ pulumi.set(__self__, "partition_count", partition_count)
43692
+
43693
+ @property
43694
+ @pulumi.getter(name="defaultInterface")
43695
+ def default_interface(self) -> str:
43696
+ """
43697
+ The default disk interface if the interface is not specified.
43698
+ """
43699
+ return pulumi.get(self, "default_interface")
43700
+
43701
+ @property
43702
+ @pulumi.getter(name="partitionCount")
43703
+ def partition_count(self) -> int:
43704
+ """
43705
+ The number of partitions.
43706
+ """
43707
+ return pulumi.get(self, "partition_count")
43708
+
43709
+
43710
+ @pulumi.output_type
43711
+ class GetMachineTypesMachineTypeDeprecatedResult(dict):
43712
+ def __init__(__self__, *,
43713
+ replacement: str,
43714
+ state: str):
43715
+ """
43716
+ :param str replacement: The URL of the suggested replacement for a deprecated machine type.
43717
+ :param str state: The deprecation state of this resource. This can be `ACTIVE`, `DEPRECATED`, `OBSOLETE`, or `DELETED`.
43718
+ """
43719
+ pulumi.set(__self__, "replacement", replacement)
43720
+ pulumi.set(__self__, "state", state)
43721
+
43722
+ @property
43723
+ @pulumi.getter
43724
+ def replacement(self) -> str:
43725
+ """
43726
+ The URL of the suggested replacement for a deprecated machine type.
43727
+ """
43728
+ return pulumi.get(self, "replacement")
43729
+
43730
+ @property
43731
+ @pulumi.getter
43732
+ def state(self) -> str:
43733
+ """
43734
+ The deprecation state of this resource. This can be `ACTIVE`, `DEPRECATED`, `OBSOLETE`, or `DELETED`.
43735
+ """
43736
+ return pulumi.get(self, "state")
43737
+
43738
+
43520
43739
  @pulumi.output_type
43521
43740
  class GetRegionDiskAsyncPrimaryDiskResult(dict):
43522
43741
  def __init__(__self__, *,