pulumi-gcp 8.11.0a1734348982__py3-none-any.whl → 8.12.0__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.
Files changed (168) hide show
  1. pulumi_gcp/__init__.py +123 -0
  2. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
  3. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
  6. pulumi_gcp/apigee/app_group.py +7 -7
  7. pulumi_gcp/applicationintegration/client.py +8 -6
  8. pulumi_gcp/artifactregistry/_inputs.py +24 -15
  9. pulumi_gcp/artifactregistry/get_repository_iam_policy.py +12 -4
  10. pulumi_gcp/artifactregistry/outputs.py +32 -20
  11. pulumi_gcp/artifactregistry/repository.py +214 -39
  12. pulumi_gcp/artifactregistry/repository_iam_binding.py +42 -14
  13. pulumi_gcp/artifactregistry/repository_iam_member.py +42 -14
  14. pulumi_gcp/artifactregistry/repository_iam_policy.py +42 -14
  15. pulumi_gcp/assuredworkloads/workload.py +7 -7
  16. pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
  17. pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
  18. pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
  19. pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
  20. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
  21. pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
  22. pulumi_gcp/bigquery/app_profile.py +75 -0
  23. pulumi_gcp/billing/_inputs.py +6 -6
  24. pulumi_gcp/billing/outputs.py +4 -4
  25. pulumi_gcp/certificateauthority/_inputs.py +9 -9
  26. pulumi_gcp/certificateauthority/outputs.py +8 -8
  27. pulumi_gcp/cloudbuild/_inputs.py +53 -0
  28. pulumi_gcp/cloudbuild/outputs.py +50 -0
  29. pulumi_gcp/cloudbuild/worker_pool.py +47 -0
  30. pulumi_gcp/clouddeploy/_inputs.py +254 -0
  31. pulumi_gcp/clouddeploy/outputs.py +211 -0
  32. pulumi_gcp/clouddeploy/target.py +47 -0
  33. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
  34. pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
  35. pulumi_gcp/cloudrunv2/job.py +4 -4
  36. pulumi_gcp/cloudrunv2/service.py +4 -4
  37. pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
  38. pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
  39. pulumi_gcp/composer/user_workloads_config_map.py +14 -0
  40. pulumi_gcp/composer/user_workloads_secret.py +6 -0
  41. pulumi_gcp/compute/_inputs.py +566 -25
  42. pulumi_gcp/compute/disk.py +21 -7
  43. pulumi_gcp/compute/firewall_policy_rule.py +12 -0
  44. pulumi_gcp/compute/get_forwarding_rules.py +2 -2
  45. pulumi_gcp/compute/get_global_forwarding_rule.py +23 -1
  46. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  47. pulumi_gcp/compute/get_network.py +35 -1
  48. pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
  49. pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
  50. pulumi_gcp/compute/global_forwarding_rule.py +142 -2
  51. pulumi_gcp/compute/instance_group_manager.py +28 -0
  52. pulumi_gcp/compute/network.py +75 -0
  53. pulumi_gcp/compute/outputs.py +655 -26
  54. pulumi_gcp/compute/project_cloud_armor_tier.py +7 -7
  55. pulumi_gcp/compute/region_health_check.py +28 -0
  56. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  57. pulumi_gcp/compute/region_network_endpoint.py +28 -0
  58. pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
  59. pulumi_gcp/compute/subnetwork.py +30 -2
  60. pulumi_gcp/compute/url_map.py +7 -7
  61. pulumi_gcp/config/__init__.pyi +2 -0
  62. pulumi_gcp/config/vars.py +4 -0
  63. pulumi_gcp/container/_inputs.py +201 -3
  64. pulumi_gcp/container/cluster.py +68 -14
  65. pulumi_gcp/container/get_cluster.py +12 -1
  66. pulumi_gcp/container/outputs.py +249 -3
  67. pulumi_gcp/dataproc/_inputs.py +209 -1
  68. pulumi_gcp/dataproc/batch.py +76 -0
  69. pulumi_gcp/dataproc/outputs.py +169 -3
  70. pulumi_gcp/diagflow/_inputs.py +3 -3
  71. pulumi_gcp/diagflow/outputs.py +2 -2
  72. pulumi_gcp/discoveryengine/search_engine.py +7 -7
  73. pulumi_gcp/firebase/_inputs.py +99 -0
  74. pulumi_gcp/firebase/database_instance.py +24 -6
  75. pulumi_gcp/firebase/hosting_version.py +96 -0
  76. pulumi_gcp/firebase/outputs.py +59 -0
  77. pulumi_gcp/firebase/project.py +6 -6
  78. pulumi_gcp/firebaserules/release.py +76 -0
  79. pulumi_gcp/firestore/field.py +4 -4
  80. pulumi_gcp/gemini/__init__.py +15 -0
  81. pulumi_gcp/gemini/_inputs.py +183 -0
  82. pulumi_gcp/gemini/code_repository_index.py +659 -0
  83. pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
  84. pulumi_gcp/gemini/outputs.py +130 -0
  85. pulumi_gcp/gemini/repository_group.py +586 -0
  86. pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
  87. pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
  88. pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
  89. pulumi_gcp/gkehub/_inputs.py +30 -10
  90. pulumi_gcp/gkehub/membership_binding.py +6 -6
  91. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  92. pulumi_gcp/gkehub/namespace.py +4 -4
  93. pulumi_gcp/gkehub/outputs.py +21 -7
  94. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  95. pulumi_gcp/iam/__init__.py +1 -0
  96. pulumi_gcp/iam/_inputs.py +137 -0
  97. pulumi_gcp/iam/folders_policy_binding.py +16 -0
  98. pulumi_gcp/iam/organizations_policy_binding.py +16 -0
  99. pulumi_gcp/iam/outputs.py +99 -0
  100. pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
  101. pulumi_gcp/iam/projects_policy_binding.py +917 -0
  102. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  103. pulumi_gcp/identityplatform/_inputs.py +6 -6
  104. pulumi_gcp/identityplatform/config.py +2 -2
  105. pulumi_gcp/identityplatform/outputs.py +4 -4
  106. pulumi_gcp/integrationconnectors/_inputs.py +15 -15
  107. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  108. pulumi_gcp/integrationconnectors/outputs.py +10 -10
  109. pulumi_gcp/looker/instance.py +35 -14
  110. pulumi_gcp/monitoring/_inputs.py +13 -6
  111. pulumi_gcp/monitoring/outputs.py +10 -4
  112. pulumi_gcp/netapp/_inputs.py +3 -3
  113. pulumi_gcp/netapp/active_directory.py +7 -7
  114. pulumi_gcp/netapp/outputs.py +2 -2
  115. pulumi_gcp/netapp/volume.py +11 -11
  116. pulumi_gcp/networkconnectivity/_inputs.py +10 -12
  117. pulumi_gcp/networkconnectivity/outputs.py +6 -8
  118. pulumi_gcp/networkconnectivity/spoke.py +10 -10
  119. pulumi_gcp/networksecurity/__init__.py +7 -0
  120. pulumi_gcp/networksecurity/_inputs.py +2018 -0
  121. pulumi_gcp/networksecurity/authz_policy.py +1008 -0
  122. pulumi_gcp/networksecurity/intercept_deployment.py +846 -0
  123. pulumi_gcp/networksecurity/intercept_deployment_group.py +752 -0
  124. pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
  125. pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
  126. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
  127. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
  128. pulumi_gcp/networksecurity/outputs.py +1463 -0
  129. pulumi_gcp/networkservices/__init__.py +1 -0
  130. pulumi_gcp/networkservices/authz_extension.py +1080 -0
  131. pulumi_gcp/oracledatabase/autonomous_database.py +46 -8
  132. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
  133. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
  134. pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
  135. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
  136. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
  137. pulumi_gcp/oracledatabase/outputs.py +21 -0
  138. pulumi_gcp/orgpolicy/_inputs.py +40 -0
  139. pulumi_gcp/orgpolicy/outputs.py +24 -0
  140. pulumi_gcp/orgpolicy/policy.py +66 -10
  141. pulumi_gcp/parallelstore/instance.py +4 -0
  142. pulumi_gcp/provider.py +20 -0
  143. pulumi_gcp/pubsub/subscription.py +6 -6
  144. pulumi_gcp/pulumi-plugin.json +1 -1
  145. pulumi_gcp/redis/_inputs.py +435 -3
  146. pulumi_gcp/redis/cluster.py +287 -16
  147. pulumi_gcp/redis/outputs.py +304 -2
  148. pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
  149. pulumi_gcp/serviceaccount/get_account_key.py +2 -2
  150. pulumi_gcp/sql/_inputs.py +3 -3
  151. pulumi_gcp/sql/database_instance.py +14 -14
  152. pulumi_gcp/sql/outputs.py +2 -2
  153. pulumi_gcp/storage/_inputs.py +53 -6
  154. pulumi_gcp/storage/get_bucket.py +2 -2
  155. pulumi_gcp/storage/get_bucket_object_content.py +2 -2
  156. pulumi_gcp/storage/outputs.py +33 -4
  157. pulumi_gcp/tpu/__init__.py +1 -0
  158. pulumi_gcp/tpu/_inputs.py +214 -24
  159. pulumi_gcp/tpu/outputs.py +182 -16
  160. pulumi_gcp/tpu/v2_queued_resource.py +434 -0
  161. pulumi_gcp/tpu/v2_vm.py +63 -0
  162. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  163. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  164. pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
  165. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/METADATA +1 -1
  166. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/RECORD +168 -147
  167. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/WHEEL +0 -0
  168. {pulumi_gcp-8.11.0a1734348982.dist-info → pulumi_gcp-8.12.0.dist-info}/top_level.txt +0 -0
@@ -270,7 +270,7 @@ def get_bucket_object_content(bucket: Optional[str] = None,
270
270
  and
271
271
  [API](https://cloud.google.com/storage/docs/json_api/v1/objects).
272
272
 
273
- > **Warning:** The object content will be saved in the state, and visiable to everyone who has access to the state file.
273
+ > **Warning:** The object content will be saved in the state, and visible to everyone who has access to the state file.
274
274
 
275
275
  ## Example Usage
276
276
 
@@ -332,7 +332,7 @@ def get_bucket_object_content_output(bucket: Optional[pulumi.Input[str]] = None,
332
332
  and
333
333
  [API](https://cloud.google.com/storage/docs/json_api/v1/objects).
334
334
 
335
- > **Warning:** The object content will be saved in the state, and visiable to everyone who has access to the state file.
335
+ > **Warning:** The object content will be saved in the state, and visible to everyone who has access to the state file.
336
336
 
337
337
  ## Example Usage
338
338
 
@@ -58,6 +58,7 @@ __all__ = [
58
58
  'TransferJobTransferSpecAzureBlobStorageDataSourceAzureCredentials',
59
59
  'TransferJobTransferSpecGcsDataSink',
60
60
  'TransferJobTransferSpecGcsDataSource',
61
+ 'TransferJobTransferSpecHdfsDataSource',
61
62
  'TransferJobTransferSpecHttpDataSource',
62
63
  'TransferJobTransferSpecObjectConditions',
63
64
  'TransferJobTransferSpecPosixDataSink',
@@ -1942,6 +1943,8 @@ class TransferJobTransferSpec(dict):
1942
1943
  suggest = "gcs_data_sink"
1943
1944
  elif key == "gcsDataSource":
1944
1945
  suggest = "gcs_data_source"
1946
+ elif key == "hdfsDataSource":
1947
+ suggest = "hdfs_data_source"
1945
1948
  elif key == "httpDataSource":
1946
1949
  suggest = "http_data_source"
1947
1950
  elif key == "objectConditions":
@@ -1973,6 +1976,7 @@ class TransferJobTransferSpec(dict):
1973
1976
  azure_blob_storage_data_source: Optional['outputs.TransferJobTransferSpecAzureBlobStorageDataSource'] = None,
1974
1977
  gcs_data_sink: Optional['outputs.TransferJobTransferSpecGcsDataSink'] = None,
1975
1978
  gcs_data_source: Optional['outputs.TransferJobTransferSpecGcsDataSource'] = None,
1979
+ hdfs_data_source: Optional['outputs.TransferJobTransferSpecHdfsDataSource'] = None,
1976
1980
  http_data_source: Optional['outputs.TransferJobTransferSpecHttpDataSource'] = None,
1977
1981
  object_conditions: Optional['outputs.TransferJobTransferSpecObjectConditions'] = None,
1978
1982
  posix_data_sink: Optional['outputs.TransferJobTransferSpecPosixDataSink'] = None,
@@ -1985,6 +1989,7 @@ class TransferJobTransferSpec(dict):
1985
1989
  :param 'TransferJobTransferSpecAzureBlobStorageDataSourceArgs' azure_blob_storage_data_source: An Azure Blob Storage data source. Structure documented below.
1986
1990
  :param 'TransferJobTransferSpecGcsDataSinkArgs' gcs_data_sink: A Google Cloud Storage data sink. Structure documented below.
1987
1991
  :param 'TransferJobTransferSpecGcsDataSourceArgs' gcs_data_source: A Google Cloud Storage data source. Structure documented below.
1992
+ :param 'TransferJobTransferSpecHdfsDataSourceArgs' hdfs_data_source: An HDFS data source. Structure documented below.
1988
1993
  :param 'TransferJobTransferSpecHttpDataSourceArgs' http_data_source: A HTTP URL data source. Structure documented below.
1989
1994
  :param 'TransferJobTransferSpecObjectConditionsArgs' object_conditions: Only objects that satisfy these object conditions are included in the set of data source and data sink objects. Object conditions based on objects' `last_modification_time` do not exclude objects in a data sink. Structure documented below.
1990
1995
  :param 'TransferJobTransferSpecPosixDataSinkArgs' posix_data_sink: A POSIX data sink. Structure documented below.
@@ -2001,6 +2006,8 @@ class TransferJobTransferSpec(dict):
2001
2006
  pulumi.set(__self__, "gcs_data_sink", gcs_data_sink)
2002
2007
  if gcs_data_source is not None:
2003
2008
  pulumi.set(__self__, "gcs_data_source", gcs_data_source)
2009
+ if hdfs_data_source is not None:
2010
+ pulumi.set(__self__, "hdfs_data_source", hdfs_data_source)
2004
2011
  if http_data_source is not None:
2005
2012
  pulumi.set(__self__, "http_data_source", http_data_source)
2006
2013
  if object_conditions is not None:
@@ -2048,6 +2055,14 @@ class TransferJobTransferSpec(dict):
2048
2055
  """
2049
2056
  return pulumi.get(self, "gcs_data_source")
2050
2057
 
2058
+ @property
2059
+ @pulumi.getter(name="hdfsDataSource")
2060
+ def hdfs_data_source(self) -> Optional['outputs.TransferJobTransferSpecHdfsDataSource']:
2061
+ """
2062
+ An HDFS data source. Structure documented below.
2063
+ """
2064
+ return pulumi.get(self, "hdfs_data_source")
2065
+
2051
2066
  @property
2052
2067
  @pulumi.getter(name="httpDataSource")
2053
2068
  def http_data_source(self) -> Optional['outputs.TransferJobTransferSpecHttpDataSource']:
@@ -2447,6 +2462,24 @@ class TransferJobTransferSpecGcsDataSource(dict):
2447
2462
  return pulumi.get(self, "path")
2448
2463
 
2449
2464
 
2465
+ @pulumi.output_type
2466
+ class TransferJobTransferSpecHdfsDataSource(dict):
2467
+ def __init__(__self__, *,
2468
+ path: str):
2469
+ """
2470
+ :param str path: Root path to transfer objects. Must be an empty string or full path name that ends with a '/'. This field is treated as an object prefix. As such, it should generally not begin with a '/'.
2471
+ """
2472
+ pulumi.set(__self__, "path", path)
2473
+
2474
+ @property
2475
+ @pulumi.getter
2476
+ def path(self) -> str:
2477
+ """
2478
+ Root path to transfer objects. Must be an empty string or full path name that ends with a '/'. This field is treated as an object prefix. As such, it should generally not begin with a '/'.
2479
+ """
2480
+ return pulumi.get(self, "path")
2481
+
2482
+
2450
2483
  @pulumi.output_type
2451
2484
  class TransferJobTransferSpecHttpDataSource(dict):
2452
2485
  @staticmethod
@@ -2646,8 +2679,6 @@ class TransferJobTransferSpecPosixDataSource(dict):
2646
2679
  root_directory: str):
2647
2680
  """
2648
2681
  :param str root_directory: Root directory path to the filesystem.
2649
-
2650
- <a name="nested_aws_s3_data_source"></a>The `aws_s3_data_source` block supports:
2651
2682
  """
2652
2683
  pulumi.set(__self__, "root_directory", root_directory)
2653
2684
 
@@ -2656,8 +2687,6 @@ class TransferJobTransferSpecPosixDataSource(dict):
2656
2687
  def root_directory(self) -> str:
2657
2688
  """
2658
2689
  Root directory path to the filesystem.
2659
-
2660
- <a name="nested_aws_s3_data_source"></a>The `aws_s3_data_source` block supports:
2661
2690
  """
2662
2691
  return pulumi.get(self, "root_directory")
2663
2692
 
@@ -9,6 +9,7 @@ from .get_tensorflow_versions import *
9
9
  from .get_v2_accelerator_types import *
10
10
  from .get_v2_runtime_versions import *
11
11
  from .node import *
12
+ from .v2_queued_resource import *
12
13
  from .v2_vm import *
13
14
  from ._inputs import *
14
15
  from . import outputs
pulumi_gcp/tpu/_inputs.py CHANGED
@@ -19,6 +19,12 @@ __all__ = [
19
19
  'NodeNetworkEndpointArgsDict',
20
20
  'NodeSchedulingConfigArgs',
21
21
  'NodeSchedulingConfigArgsDict',
22
+ 'V2QueuedResourceTpuArgs',
23
+ 'V2QueuedResourceTpuArgsDict',
24
+ 'V2QueuedResourceTpuNodeSpecArgs',
25
+ 'V2QueuedResourceTpuNodeSpecArgsDict',
26
+ 'V2QueuedResourceTpuNodeSpecNodeArgs',
27
+ 'V2QueuedResourceTpuNodeSpecNodeArgsDict',
22
28
  'V2VmAcceleratorConfigArgs',
23
29
  'V2VmAcceleratorConfigArgsDict',
24
30
  'V2VmDataDiskArgs',
@@ -130,6 +136,185 @@ class NodeSchedulingConfigArgs:
130
136
  pulumi.set(self, "preemptible", value)
131
137
 
132
138
 
139
+ if not MYPY:
140
+ class V2QueuedResourceTpuArgsDict(TypedDict):
141
+ node_specs: NotRequired[pulumi.Input[Sequence[pulumi.Input['V2QueuedResourceTpuNodeSpecArgsDict']]]]
142
+ """
143
+ The TPU node(s) being requested.
144
+ Structure is documented below.
145
+ """
146
+ elif False:
147
+ V2QueuedResourceTpuArgsDict: TypeAlias = Mapping[str, Any]
148
+
149
+ @pulumi.input_type
150
+ class V2QueuedResourceTpuArgs:
151
+ def __init__(__self__, *,
152
+ node_specs: Optional[pulumi.Input[Sequence[pulumi.Input['V2QueuedResourceTpuNodeSpecArgs']]]] = None):
153
+ """
154
+ :param pulumi.Input[Sequence[pulumi.Input['V2QueuedResourceTpuNodeSpecArgs']]] node_specs: The TPU node(s) being requested.
155
+ Structure is documented below.
156
+ """
157
+ if node_specs is not None:
158
+ pulumi.set(__self__, "node_specs", node_specs)
159
+
160
+ @property
161
+ @pulumi.getter(name="nodeSpecs")
162
+ def node_specs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['V2QueuedResourceTpuNodeSpecArgs']]]]:
163
+ """
164
+ The TPU node(s) being requested.
165
+ Structure is documented below.
166
+ """
167
+ return pulumi.get(self, "node_specs")
168
+
169
+ @node_specs.setter
170
+ def node_specs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['V2QueuedResourceTpuNodeSpecArgs']]]]):
171
+ pulumi.set(self, "node_specs", value)
172
+
173
+
174
+ if not MYPY:
175
+ class V2QueuedResourceTpuNodeSpecArgsDict(TypedDict):
176
+ node: pulumi.Input['V2QueuedResourceTpuNodeSpecNodeArgsDict']
177
+ """
178
+ The node.
179
+ Structure is documented below.
180
+ """
181
+ parent: pulumi.Input[str]
182
+ """
183
+ The parent resource name.
184
+ """
185
+ node_id: NotRequired[pulumi.Input[str]]
186
+ """
187
+ Unqualified node identifier used to identify the node in the project once provisioned.
188
+ """
189
+ elif False:
190
+ V2QueuedResourceTpuNodeSpecArgsDict: TypeAlias = Mapping[str, Any]
191
+
192
+ @pulumi.input_type
193
+ class V2QueuedResourceTpuNodeSpecArgs:
194
+ def __init__(__self__, *,
195
+ node: pulumi.Input['V2QueuedResourceTpuNodeSpecNodeArgs'],
196
+ parent: pulumi.Input[str],
197
+ node_id: Optional[pulumi.Input[str]] = None):
198
+ """
199
+ :param pulumi.Input['V2QueuedResourceTpuNodeSpecNodeArgs'] node: The node.
200
+ Structure is documented below.
201
+ :param pulumi.Input[str] parent: The parent resource name.
202
+ :param pulumi.Input[str] node_id: Unqualified node identifier used to identify the node in the project once provisioned.
203
+ """
204
+ pulumi.set(__self__, "node", node)
205
+ pulumi.set(__self__, "parent", parent)
206
+ if node_id is not None:
207
+ pulumi.set(__self__, "node_id", node_id)
208
+
209
+ @property
210
+ @pulumi.getter
211
+ def node(self) -> pulumi.Input['V2QueuedResourceTpuNodeSpecNodeArgs']:
212
+ """
213
+ The node.
214
+ Structure is documented below.
215
+ """
216
+ return pulumi.get(self, "node")
217
+
218
+ @node.setter
219
+ def node(self, value: pulumi.Input['V2QueuedResourceTpuNodeSpecNodeArgs']):
220
+ pulumi.set(self, "node", value)
221
+
222
+ @property
223
+ @pulumi.getter
224
+ def parent(self) -> pulumi.Input[str]:
225
+ """
226
+ The parent resource name.
227
+ """
228
+ return pulumi.get(self, "parent")
229
+
230
+ @parent.setter
231
+ def parent(self, value: pulumi.Input[str]):
232
+ pulumi.set(self, "parent", value)
233
+
234
+ @property
235
+ @pulumi.getter(name="nodeId")
236
+ def node_id(self) -> Optional[pulumi.Input[str]]:
237
+ """
238
+ Unqualified node identifier used to identify the node in the project once provisioned.
239
+ """
240
+ return pulumi.get(self, "node_id")
241
+
242
+ @node_id.setter
243
+ def node_id(self, value: Optional[pulumi.Input[str]]):
244
+ pulumi.set(self, "node_id", value)
245
+
246
+
247
+ if not MYPY:
248
+ class V2QueuedResourceTpuNodeSpecNodeArgsDict(TypedDict):
249
+ runtime_version: pulumi.Input[str]
250
+ """
251
+ Runtime version for the TPU.
252
+ """
253
+ accelerator_type: NotRequired[pulumi.Input[str]]
254
+ """
255
+ TPU accelerator type for the TPU. If not specified, this defaults to 'v2-8'.
256
+ """
257
+ description: NotRequired[pulumi.Input[str]]
258
+ """
259
+ Text description of the TPU.
260
+ """
261
+ elif False:
262
+ V2QueuedResourceTpuNodeSpecNodeArgsDict: TypeAlias = Mapping[str, Any]
263
+
264
+ @pulumi.input_type
265
+ class V2QueuedResourceTpuNodeSpecNodeArgs:
266
+ def __init__(__self__, *,
267
+ runtime_version: pulumi.Input[str],
268
+ accelerator_type: Optional[pulumi.Input[str]] = None,
269
+ description: Optional[pulumi.Input[str]] = None):
270
+ """
271
+ :param pulumi.Input[str] runtime_version: Runtime version for the TPU.
272
+ :param pulumi.Input[str] accelerator_type: TPU accelerator type for the TPU. If not specified, this defaults to 'v2-8'.
273
+ :param pulumi.Input[str] description: Text description of the TPU.
274
+ """
275
+ pulumi.set(__self__, "runtime_version", runtime_version)
276
+ if accelerator_type is not None:
277
+ pulumi.set(__self__, "accelerator_type", accelerator_type)
278
+ if description is not None:
279
+ pulumi.set(__self__, "description", description)
280
+
281
+ @property
282
+ @pulumi.getter(name="runtimeVersion")
283
+ def runtime_version(self) -> pulumi.Input[str]:
284
+ """
285
+ Runtime version for the TPU.
286
+ """
287
+ return pulumi.get(self, "runtime_version")
288
+
289
+ @runtime_version.setter
290
+ def runtime_version(self, value: pulumi.Input[str]):
291
+ pulumi.set(self, "runtime_version", value)
292
+
293
+ @property
294
+ @pulumi.getter(name="acceleratorType")
295
+ def accelerator_type(self) -> Optional[pulumi.Input[str]]:
296
+ """
297
+ TPU accelerator type for the TPU. If not specified, this defaults to 'v2-8'.
298
+ """
299
+ return pulumi.get(self, "accelerator_type")
300
+
301
+ @accelerator_type.setter
302
+ def accelerator_type(self, value: Optional[pulumi.Input[str]]):
303
+ pulumi.set(self, "accelerator_type", value)
304
+
305
+ @property
306
+ @pulumi.getter
307
+ def description(self) -> Optional[pulumi.Input[str]]:
308
+ """
309
+ Text description of the TPU.
310
+ """
311
+ return pulumi.get(self, "description")
312
+
313
+ @description.setter
314
+ def description(self, value: Optional[pulumi.Input[str]]):
315
+ pulumi.set(self, "description", value)
316
+
317
+
133
318
  if not MYPY:
134
319
  class V2VmAcceleratorConfigArgsDict(TypedDict):
135
320
  topology: pulumi.Input[str]
@@ -138,8 +323,7 @@ if not MYPY:
138
323
  """
139
324
  type: pulumi.Input[str]
140
325
  """
141
- Type of TPU.
142
- Possible values are: `V2`, `V3`, `V4`, `V5P`.
326
+ Type of TPU. Please select one of the allowed types: https://cloud.google.com/tpu/docs/reference/rest/v2/AcceleratorConfig#Type
143
327
  """
144
328
  elif False:
145
329
  V2VmAcceleratorConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -151,8 +335,7 @@ class V2VmAcceleratorConfigArgs:
151
335
  type: pulumi.Input[str]):
152
336
  """
153
337
  :param pulumi.Input[str] topology: Topology of TPU in chips.
154
- :param pulumi.Input[str] type: Type of TPU.
155
- Possible values are: `V2`, `V3`, `V4`, `V5P`.
338
+ :param pulumi.Input[str] type: Type of TPU. Please select one of the allowed types: https://cloud.google.com/tpu/docs/reference/rest/v2/AcceleratorConfig#Type
156
339
  """
157
340
  pulumi.set(__self__, "topology", topology)
158
341
  pulumi.set(__self__, "type", type)
@@ -173,8 +356,7 @@ class V2VmAcceleratorConfigArgs:
173
356
  @pulumi.getter
174
357
  def type(self) -> pulumi.Input[str]:
175
358
  """
176
- Type of TPU.
177
- Possible values are: `V2`, `V3`, `V4`, `V5P`.
359
+ Type of TPU. Please select one of the allowed types: https://cloud.google.com/tpu/docs/reference/rest/v2/AcceleratorConfig#Type
178
360
  """
179
361
  return pulumi.get(self, "type")
180
362
 
@@ -261,16 +443,16 @@ if not MYPY:
261
443
  network: NotRequired[pulumi.Input[str]]
262
444
  """
263
445
  The name of the network for the TPU node. It must be a preexisting Google Compute Engine
264
- network. If both network and subnetwork are specified, the given subnetwork must belong
265
- to the given network. If network is not specified, it will be looked up from the
266
- subnetwork if one is provided, or otherwise use "default".
446
+ network. If none is provided, "default" will be used.
447
+ """
448
+ queue_count: NotRequired[pulumi.Input[int]]
449
+ """
450
+ Specifies networking queue count for TPU VM instance's network interface.
267
451
  """
268
452
  subnetwork: NotRequired[pulumi.Input[str]]
269
453
  """
270
454
  The name of the subnetwork for the TPU node. It must be a preexisting Google Compute
271
- Engine subnetwork. If both network and subnetwork are specified, the given subnetwork
272
- must belong to the given network. If subnetwork is not specified, the subnetwork with the
273
- same name as the network will be used.
455
+ Engine subnetwork. If none is provided, "default" will be used.
274
456
  """
275
457
  elif False:
276
458
  V2VmNetworkConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -281,6 +463,7 @@ class V2VmNetworkConfigArgs:
281
463
  can_ip_forward: Optional[pulumi.Input[bool]] = None,
282
464
  enable_external_ips: Optional[pulumi.Input[bool]] = None,
283
465
  network: Optional[pulumi.Input[str]] = None,
466
+ queue_count: Optional[pulumi.Input[int]] = None,
284
467
  subnetwork: Optional[pulumi.Input[str]] = None):
285
468
  """
286
469
  :param pulumi.Input[bool] can_ip_forward: Allows the TPU node to send and receive packets with non-matching destination or source
@@ -288,13 +471,10 @@ class V2VmNetworkConfigArgs:
288
471
  :param pulumi.Input[bool] enable_external_ips: Indicates that external IP addresses would be associated with the TPU workers. If set to
289
472
  false, the specified subnetwork or network should have Private Google Access enabled.
290
473
  :param pulumi.Input[str] network: The name of the network for the TPU node. It must be a preexisting Google Compute Engine
291
- network. If both network and subnetwork are specified, the given subnetwork must belong
292
- to the given network. If network is not specified, it will be looked up from the
293
- subnetwork if one is provided, or otherwise use "default".
474
+ network. If none is provided, "default" will be used.
475
+ :param pulumi.Input[int] queue_count: Specifies networking queue count for TPU VM instance's network interface.
294
476
  :param pulumi.Input[str] subnetwork: The name of the subnetwork for the TPU node. It must be a preexisting Google Compute
295
- Engine subnetwork. If both network and subnetwork are specified, the given subnetwork
296
- must belong to the given network. If subnetwork is not specified, the subnetwork with the
297
- same name as the network will be used.
477
+ Engine subnetwork. If none is provided, "default" will be used.
298
478
  """
299
479
  if can_ip_forward is not None:
300
480
  pulumi.set(__self__, "can_ip_forward", can_ip_forward)
@@ -302,6 +482,8 @@ class V2VmNetworkConfigArgs:
302
482
  pulumi.set(__self__, "enable_external_ips", enable_external_ips)
303
483
  if network is not None:
304
484
  pulumi.set(__self__, "network", network)
485
+ if queue_count is not None:
486
+ pulumi.set(__self__, "queue_count", queue_count)
305
487
  if subnetwork is not None:
306
488
  pulumi.set(__self__, "subnetwork", subnetwork)
307
489
 
@@ -336,9 +518,7 @@ class V2VmNetworkConfigArgs:
336
518
  def network(self) -> Optional[pulumi.Input[str]]:
337
519
  """
338
520
  The name of the network for the TPU node. It must be a preexisting Google Compute Engine
339
- network. If both network and subnetwork are specified, the given subnetwork must belong
340
- to the given network. If network is not specified, it will be looked up from the
341
- subnetwork if one is provided, or otherwise use "default".
521
+ network. If none is provided, "default" will be used.
342
522
  """
343
523
  return pulumi.get(self, "network")
344
524
 
@@ -346,14 +526,24 @@ class V2VmNetworkConfigArgs:
346
526
  def network(self, value: Optional[pulumi.Input[str]]):
347
527
  pulumi.set(self, "network", value)
348
528
 
529
+ @property
530
+ @pulumi.getter(name="queueCount")
531
+ def queue_count(self) -> Optional[pulumi.Input[int]]:
532
+ """
533
+ Specifies networking queue count for TPU VM instance's network interface.
534
+ """
535
+ return pulumi.get(self, "queue_count")
536
+
537
+ @queue_count.setter
538
+ def queue_count(self, value: Optional[pulumi.Input[int]]):
539
+ pulumi.set(self, "queue_count", value)
540
+
349
541
  @property
350
542
  @pulumi.getter
351
543
  def subnetwork(self) -> Optional[pulumi.Input[str]]:
352
544
  """
353
545
  The name of the subnetwork for the TPU node. It must be a preexisting Google Compute
354
- Engine subnetwork. If both network and subnetwork are specified, the given subnetwork
355
- must belong to the given network. If subnetwork is not specified, the subnetwork with the
356
- same name as the network will be used.
546
+ Engine subnetwork. If none is provided, "default" will be used.
357
547
  """
358
548
  return pulumi.get(self, "subnetwork")
359
549