pulumi-gcp 8.34.0a1749484438__py3-none-any.whl → 8.34.0a1749648575__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 (65) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/alloydb/cluster.py +16 -64
  3. pulumi_gcp/apigee/_inputs.py +89 -0
  4. pulumi_gcp/apigee/environment.py +68 -2
  5. pulumi_gcp/apigee/outputs.py +88 -0
  6. pulumi_gcp/apihub/__init__.py +1 -0
  7. pulumi_gcp/apihub/_inputs.py +184 -0
  8. pulumi_gcp/apihub/curation.py +812 -0
  9. pulumi_gcp/apihub/outputs.py +165 -0
  10. pulumi_gcp/beyondcorp/get_security_gateway.py +12 -1
  11. pulumi_gcp/beyondcorp/security_gateway.py +28 -0
  12. pulumi_gcp/cloudrunv2/_inputs.py +463 -0
  13. pulumi_gcp/cloudrunv2/outputs.py +581 -1
  14. pulumi_gcp/cloudrunv2/worker_pool.py +0 -8
  15. pulumi_gcp/colab/runtime_template.py +4 -26
  16. pulumi_gcp/compute/__init__.py +3 -0
  17. pulumi_gcp/compute/_inputs.py +1551 -0
  18. pulumi_gcp/compute/interconnect.py +32 -0
  19. pulumi_gcp/compute/interconnect_attachment.py +28 -0
  20. pulumi_gcp/compute/interconnect_attachment_group.py +636 -0
  21. pulumi_gcp/compute/interconnect_group.py +586 -0
  22. pulumi_gcp/compute/outputs.py +1087 -0
  23. pulumi_gcp/compute/snapshot_settings.py +285 -0
  24. pulumi_gcp/container/_inputs.py +51 -18
  25. pulumi_gcp/container/cluster.py +47 -0
  26. pulumi_gcp/container/get_cluster.py +12 -1
  27. pulumi_gcp/container/outputs.py +71 -16
  28. pulumi_gcp/dataplex/_inputs.py +20 -0
  29. pulumi_gcp/dataplex/datascan.py +2 -0
  30. pulumi_gcp/dataplex/outputs.py +15 -1
  31. pulumi_gcp/eventarc/_inputs.py +12 -5
  32. pulumi_gcp/eventarc/outputs.py +8 -3
  33. pulumi_gcp/eventarc/pipeline.py +0 -12
  34. pulumi_gcp/gemini/data_sharing_with_google_setting.py +58 -9
  35. pulumi_gcp/gemini/data_sharing_with_google_setting_binding.py +11 -16
  36. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +51 -2
  37. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +11 -16
  38. pulumi_gcp/gkehub/_inputs.py +84 -7
  39. pulumi_gcp/gkehub/feature.py +38 -0
  40. pulumi_gcp/gkehub/outputs.py +102 -7
  41. pulumi_gcp/gkehub/scope_rbac_role_binding.py +54 -2
  42. pulumi_gcp/gkeonprem/_inputs.py +54 -0
  43. pulumi_gcp/gkeonprem/outputs.py +49 -0
  44. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +71 -0
  45. pulumi_gcp/iam/workload_identity_pool_namespace.py +4 -4
  46. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  47. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  48. pulumi_gcp/managedkafka/connect_cluster.py +4 -4
  49. pulumi_gcp/managedkafka/connector.py +4 -4
  50. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  51. pulumi_gcp/networksecurity/backend_authentication_config.py +64 -0
  52. pulumi_gcp/orgpolicy/policy.py +2 -2
  53. pulumi_gcp/pubsub/_inputs.py +392 -0
  54. pulumi_gcp/pubsub/get_subscription.py +12 -1
  55. pulumi_gcp/pubsub/get_topic.py +12 -1
  56. pulumi_gcp/pubsub/outputs.py +548 -0
  57. pulumi_gcp/pubsub/subscription.py +67 -6
  58. pulumi_gcp/pubsub/topic.py +61 -0
  59. pulumi_gcp/pulumi-plugin.json +1 -1
  60. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  61. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  62. {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/METADATA +1 -1
  63. {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/RECORD +65 -61
  64. {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/WHEEL +0 -0
  65. {pulumi_gcp-8.34.0a1749484438.dist-info → pulumi_gcp-8.34.0a1749648575.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,285 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins
6
+ import copy
7
+ import warnings
8
+ import sys
9
+ import pulumi
10
+ import pulumi.runtime
11
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
12
+ if sys.version_info >= (3, 11):
13
+ from typing import NotRequired, TypedDict, TypeAlias
14
+ else:
15
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
16
+ from .. import _utilities
17
+ from . import outputs
18
+ from ._inputs import *
19
+
20
+ __all__ = ['SnapshotSettingsArgs', 'SnapshotSettings']
21
+
22
+ @pulumi.input_type
23
+ class SnapshotSettingsArgs:
24
+ def __init__(__self__, *,
25
+ storage_location: pulumi.Input['SnapshotSettingsStorageLocationArgs'],
26
+ project: Optional[pulumi.Input[builtins.str]] = None):
27
+ """
28
+ The set of arguments for constructing a SnapshotSettings resource.
29
+ :param pulumi.Input['SnapshotSettingsStorageLocationArgs'] storage_location: Policy of which storage location is going to be resolved, and additional data
30
+ that particularizes how the policy is going to be carried out
31
+ Structure is documented below.
32
+ """
33
+ pulumi.set(__self__, "storage_location", storage_location)
34
+ if project is not None:
35
+ pulumi.set(__self__, "project", project)
36
+
37
+ @property
38
+ @pulumi.getter(name="storageLocation")
39
+ def storage_location(self) -> pulumi.Input['SnapshotSettingsStorageLocationArgs']:
40
+ """
41
+ Policy of which storage location is going to be resolved, and additional data
42
+ that particularizes how the policy is going to be carried out
43
+ Structure is documented below.
44
+ """
45
+ return pulumi.get(self, "storage_location")
46
+
47
+ @storage_location.setter
48
+ def storage_location(self, value: pulumi.Input['SnapshotSettingsStorageLocationArgs']):
49
+ pulumi.set(self, "storage_location", value)
50
+
51
+ @property
52
+ @pulumi.getter
53
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
54
+ return pulumi.get(self, "project")
55
+
56
+ @project.setter
57
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
58
+ pulumi.set(self, "project", value)
59
+
60
+
61
+ @pulumi.input_type
62
+ class _SnapshotSettingsState:
63
+ def __init__(__self__, *,
64
+ project: Optional[pulumi.Input[builtins.str]] = None,
65
+ storage_location: Optional[pulumi.Input['SnapshotSettingsStorageLocationArgs']] = None):
66
+ """
67
+ Input properties used for looking up and filtering SnapshotSettings resources.
68
+ :param pulumi.Input['SnapshotSettingsStorageLocationArgs'] storage_location: Policy of which storage location is going to be resolved, and additional data
69
+ that particularizes how the policy is going to be carried out
70
+ Structure is documented below.
71
+ """
72
+ if project is not None:
73
+ pulumi.set(__self__, "project", project)
74
+ if storage_location is not None:
75
+ pulumi.set(__self__, "storage_location", storage_location)
76
+
77
+ @property
78
+ @pulumi.getter
79
+ def project(self) -> Optional[pulumi.Input[builtins.str]]:
80
+ return pulumi.get(self, "project")
81
+
82
+ @project.setter
83
+ def project(self, value: Optional[pulumi.Input[builtins.str]]):
84
+ pulumi.set(self, "project", value)
85
+
86
+ @property
87
+ @pulumi.getter(name="storageLocation")
88
+ def storage_location(self) -> Optional[pulumi.Input['SnapshotSettingsStorageLocationArgs']]:
89
+ """
90
+ Policy of which storage location is going to be resolved, and additional data
91
+ that particularizes how the policy is going to be carried out
92
+ Structure is documented below.
93
+ """
94
+ return pulumi.get(self, "storage_location")
95
+
96
+ @storage_location.setter
97
+ def storage_location(self, value: Optional[pulumi.Input['SnapshotSettingsStorageLocationArgs']]):
98
+ pulumi.set(self, "storage_location", value)
99
+
100
+
101
+ @pulumi.type_token("gcp:compute/snapshotSettings:SnapshotSettings")
102
+ class SnapshotSettings(pulumi.CustomResource):
103
+ @overload
104
+ def __init__(__self__,
105
+ resource_name: str,
106
+ opts: Optional[pulumi.ResourceOptions] = None,
107
+ project: Optional[pulumi.Input[builtins.str]] = None,
108
+ storage_location: Optional[pulumi.Input[Union['SnapshotSettingsStorageLocationArgs', 'SnapshotSettingsStorageLocationArgsDict']]] = None,
109
+ __props__=None):
110
+ """
111
+ Updates your project's snapshot settings and sets a new default storage location for snapshots.
112
+
113
+ To get more information about SnapshotSettings, see:
114
+
115
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/snapshotSettings)
116
+ * How-to Guides
117
+ * [Official Documentation](https://cloud.google.com/compute/docs/disks/snapshot-settings#snapshot_settings_how_to_update)
118
+
119
+ ## Example Usage
120
+
121
+ ### Snapshot Settings Specific Locations
122
+
123
+ ```python
124
+ import pulumi
125
+ import pulumi_gcp as gcp
126
+
127
+ tf_test_snapshot_settings = gcp.compute.SnapshotSettings("tf-test-snapshot-settings", storage_location={
128
+ "policy": "SPECIFIC_LOCATIONS",
129
+ "locations": [{
130
+ "name": "us-central1",
131
+ "location": "us-central1",
132
+ }],
133
+ })
134
+ ```
135
+
136
+ ## Import
137
+
138
+ SnapshotSettings can be imported using any of these accepted formats:
139
+
140
+ * `projects/{{project}}/global/snapshotSettings/`
141
+
142
+ * `{{project}}`
143
+
144
+ When using the `pulumi import` command, SnapshotSettings can be imported using one of the formats above. For example:
145
+
146
+ ```sh
147
+ $ pulumi import gcp:compute/snapshotSettings:SnapshotSettings default projects/{{project}}/global/snapshotSettings/
148
+ ```
149
+
150
+ ```sh
151
+ $ pulumi import gcp:compute/snapshotSettings:SnapshotSettings default {{project}}
152
+ ```
153
+
154
+ :param str resource_name: The name of the resource.
155
+ :param pulumi.ResourceOptions opts: Options for the resource.
156
+ :param pulumi.Input[Union['SnapshotSettingsStorageLocationArgs', 'SnapshotSettingsStorageLocationArgsDict']] storage_location: Policy of which storage location is going to be resolved, and additional data
157
+ that particularizes how the policy is going to be carried out
158
+ Structure is documented below.
159
+ """
160
+ ...
161
+ @overload
162
+ def __init__(__self__,
163
+ resource_name: str,
164
+ args: SnapshotSettingsArgs,
165
+ opts: Optional[pulumi.ResourceOptions] = None):
166
+ """
167
+ Updates your project's snapshot settings and sets a new default storage location for snapshots.
168
+
169
+ To get more information about SnapshotSettings, see:
170
+
171
+ * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/snapshotSettings)
172
+ * How-to Guides
173
+ * [Official Documentation](https://cloud.google.com/compute/docs/disks/snapshot-settings#snapshot_settings_how_to_update)
174
+
175
+ ## Example Usage
176
+
177
+ ### Snapshot Settings Specific Locations
178
+
179
+ ```python
180
+ import pulumi
181
+ import pulumi_gcp as gcp
182
+
183
+ tf_test_snapshot_settings = gcp.compute.SnapshotSettings("tf-test-snapshot-settings", storage_location={
184
+ "policy": "SPECIFIC_LOCATIONS",
185
+ "locations": [{
186
+ "name": "us-central1",
187
+ "location": "us-central1",
188
+ }],
189
+ })
190
+ ```
191
+
192
+ ## Import
193
+
194
+ SnapshotSettings can be imported using any of these accepted formats:
195
+
196
+ * `projects/{{project}}/global/snapshotSettings/`
197
+
198
+ * `{{project}}`
199
+
200
+ When using the `pulumi import` command, SnapshotSettings can be imported using one of the formats above. For example:
201
+
202
+ ```sh
203
+ $ pulumi import gcp:compute/snapshotSettings:SnapshotSettings default projects/{{project}}/global/snapshotSettings/
204
+ ```
205
+
206
+ ```sh
207
+ $ pulumi import gcp:compute/snapshotSettings:SnapshotSettings default {{project}}
208
+ ```
209
+
210
+ :param str resource_name: The name of the resource.
211
+ :param SnapshotSettingsArgs args: The arguments to use to populate this resource's properties.
212
+ :param pulumi.ResourceOptions opts: Options for the resource.
213
+ """
214
+ ...
215
+ def __init__(__self__, resource_name: str, *args, **kwargs):
216
+ resource_args, opts = _utilities.get_resource_args_opts(SnapshotSettingsArgs, pulumi.ResourceOptions, *args, **kwargs)
217
+ if resource_args is not None:
218
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
219
+ else:
220
+ __self__._internal_init(resource_name, *args, **kwargs)
221
+
222
+ def _internal_init(__self__,
223
+ resource_name: str,
224
+ opts: Optional[pulumi.ResourceOptions] = None,
225
+ project: Optional[pulumi.Input[builtins.str]] = None,
226
+ storage_location: Optional[pulumi.Input[Union['SnapshotSettingsStorageLocationArgs', 'SnapshotSettingsStorageLocationArgsDict']]] = None,
227
+ __props__=None):
228
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
229
+ if not isinstance(opts, pulumi.ResourceOptions):
230
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
231
+ if opts.id is None:
232
+ if __props__ is not None:
233
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
234
+ __props__ = SnapshotSettingsArgs.__new__(SnapshotSettingsArgs)
235
+
236
+ __props__.__dict__["project"] = project
237
+ if storage_location is None and not opts.urn:
238
+ raise TypeError("Missing required property 'storage_location'")
239
+ __props__.__dict__["storage_location"] = storage_location
240
+ super(SnapshotSettings, __self__).__init__(
241
+ 'gcp:compute/snapshotSettings:SnapshotSettings',
242
+ resource_name,
243
+ __props__,
244
+ opts)
245
+
246
+ @staticmethod
247
+ def get(resource_name: str,
248
+ id: pulumi.Input[str],
249
+ opts: Optional[pulumi.ResourceOptions] = None,
250
+ project: Optional[pulumi.Input[builtins.str]] = None,
251
+ storage_location: Optional[pulumi.Input[Union['SnapshotSettingsStorageLocationArgs', 'SnapshotSettingsStorageLocationArgsDict']]] = None) -> 'SnapshotSettings':
252
+ """
253
+ Get an existing SnapshotSettings resource's state with the given name, id, and optional extra
254
+ properties used to qualify the lookup.
255
+
256
+ :param str resource_name: The unique name of the resulting resource.
257
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
258
+ :param pulumi.ResourceOptions opts: Options for the resource.
259
+ :param pulumi.Input[Union['SnapshotSettingsStorageLocationArgs', 'SnapshotSettingsStorageLocationArgsDict']] storage_location: Policy of which storage location is going to be resolved, and additional data
260
+ that particularizes how the policy is going to be carried out
261
+ Structure is documented below.
262
+ """
263
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
264
+
265
+ __props__ = _SnapshotSettingsState.__new__(_SnapshotSettingsState)
266
+
267
+ __props__.__dict__["project"] = project
268
+ __props__.__dict__["storage_location"] = storage_location
269
+ return SnapshotSettings(resource_name, opts=opts, __props__=__props__)
270
+
271
+ @property
272
+ @pulumi.getter
273
+ def project(self) -> pulumi.Output[builtins.str]:
274
+ return pulumi.get(self, "project")
275
+
276
+ @property
277
+ @pulumi.getter(name="storageLocation")
278
+ def storage_location(self) -> pulumi.Output['outputs.SnapshotSettingsStorageLocation']:
279
+ """
280
+ Policy of which storage location is going to be resolved, and additional data
281
+ that particularizes how the policy is going to be carried out
282
+ Structure is documented below.
283
+ """
284
+ return pulumi.get(self, "storage_location")
285
+
@@ -276,6 +276,8 @@ __all__ = [
276
276
  'ClusterMonitoringConfigManagedPrometheusArgsDict',
277
277
  'ClusterMonitoringConfigManagedPrometheusAutoMonitoringConfigArgs',
278
278
  'ClusterMonitoringConfigManagedPrometheusAutoMonitoringConfigArgsDict',
279
+ 'ClusterNetworkPerformanceConfigArgs',
280
+ 'ClusterNetworkPerformanceConfigArgsDict',
279
281
  'ClusterNetworkPolicyArgs',
280
282
  'ClusterNetworkPolicyArgsDict',
281
283
  'ClusterNodeConfigArgs',
@@ -8423,6 +8425,37 @@ class ClusterMonitoringConfigManagedPrometheusAutoMonitoringConfigArgs:
8423
8425
  pulumi.set(self, "scope", value)
8424
8426
 
8425
8427
 
8428
+ if not MYPY:
8429
+ class ClusterNetworkPerformanceConfigArgsDict(TypedDict):
8430
+ total_egress_bandwidth_tier: pulumi.Input[builtins.str]
8431
+ """
8432
+ Specifies the total network bandwidth tier for NodePools in the cluster.
8433
+ """
8434
+ elif False:
8435
+ ClusterNetworkPerformanceConfigArgsDict: TypeAlias = Mapping[str, Any]
8436
+
8437
+ @pulumi.input_type
8438
+ class ClusterNetworkPerformanceConfigArgs:
8439
+ def __init__(__self__, *,
8440
+ total_egress_bandwidth_tier: pulumi.Input[builtins.str]):
8441
+ """
8442
+ :param pulumi.Input[builtins.str] total_egress_bandwidth_tier: Specifies the total network bandwidth tier for NodePools in the cluster.
8443
+ """
8444
+ pulumi.set(__self__, "total_egress_bandwidth_tier", total_egress_bandwidth_tier)
8445
+
8446
+ @property
8447
+ @pulumi.getter(name="totalEgressBandwidthTier")
8448
+ def total_egress_bandwidth_tier(self) -> pulumi.Input[builtins.str]:
8449
+ """
8450
+ Specifies the total network bandwidth tier for NodePools in the cluster.
8451
+ """
8452
+ return pulumi.get(self, "total_egress_bandwidth_tier")
8453
+
8454
+ @total_egress_bandwidth_tier.setter
8455
+ def total_egress_bandwidth_tier(self, value: pulumi.Input[builtins.str]):
8456
+ pulumi.set(self, "total_egress_bandwidth_tier", value)
8457
+
8458
+
8426
8459
  if not MYPY:
8427
8460
  class ClusterNetworkPolicyArgsDict(TypedDict):
8428
8461
  enabled: pulumi.Input[builtins.bool]
@@ -8528,7 +8561,7 @@ if not MYPY:
8528
8561
  """
8529
8562
  flex_start: NotRequired[pulumi.Input[builtins.bool]]
8530
8563
  """
8531
- ) Enables Flex Start provisioning model for the node pool.
8564
+ Enables Flex Start provisioning model for the node pool.
8532
8565
  """
8533
8566
  gcfs_config: NotRequired[pulumi.Input['ClusterNodeConfigGcfsConfigArgsDict']]
8534
8567
  """
@@ -8786,7 +8819,7 @@ class ClusterNodeConfigArgs:
8786
8819
  Node Pool must enable gvnic.
8787
8820
  GKE version 1.25.2-gke.1700 or later.
8788
8821
  Structure is documented below.
8789
- :param pulumi.Input[builtins.bool] flex_start: ) Enables Flex Start provisioning model for the node pool.
8822
+ :param pulumi.Input[builtins.bool] flex_start: Enables Flex Start provisioning model for the node pool.
8790
8823
  :param pulumi.Input['ClusterNodeConfigGcfsConfigArgs'] gcfs_config: Parameters for the Google Container Filesystem (GCFS).
8791
8824
  If unspecified, GCFS will not be enabled on the node pool. When enabling this feature you must specify `image_type = "COS_CONTAINERD"` and `node_version` from GKE versions 1.19 or later to use it.
8792
8825
  For GKE versions 1.19, 1.20, and 1.21, the recommended minimum `node_version` would be 1.19.15-gke.1300, 1.20.11-gke.1300, and 1.21.5-gke.1300 respectively.
@@ -9109,7 +9142,7 @@ class ClusterNodeConfigArgs:
9109
9142
  @pulumi.getter(name="flexStart")
9110
9143
  def flex_start(self) -> Optional[pulumi.Input[builtins.bool]]:
9111
9144
  """
9112
- ) Enables Flex Start provisioning model for the node pool.
9145
+ Enables Flex Start provisioning model for the node pool.
9113
9146
  """
9114
9147
  return pulumi.get(self, "flex_start")
9115
9148
 
@@ -12664,7 +12697,7 @@ if not MYPY:
12664
12697
  class ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgsDict(TypedDict):
12665
12698
  total_egress_bandwidth_tier: pulumi.Input[builtins.str]
12666
12699
  """
12667
- Specifies the total network bandwidth tier for the NodePool.
12700
+ Specifies the total network bandwidth tier for NodePools in the cluster.
12668
12701
  """
12669
12702
  elif False:
12670
12703
  ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -12674,7 +12707,7 @@ class ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgs:
12674
12707
  def __init__(__self__, *,
12675
12708
  total_egress_bandwidth_tier: pulumi.Input[builtins.str]):
12676
12709
  """
12677
- :param pulumi.Input[builtins.str] total_egress_bandwidth_tier: Specifies the total network bandwidth tier for the NodePool.
12710
+ :param pulumi.Input[builtins.str] total_egress_bandwidth_tier: Specifies the total network bandwidth tier for NodePools in the cluster.
12678
12711
  """
12679
12712
  pulumi.set(__self__, "total_egress_bandwidth_tier", total_egress_bandwidth_tier)
12680
12713
 
@@ -12682,7 +12715,7 @@ class ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgs:
12682
12715
  @pulumi.getter(name="totalEgressBandwidthTier")
12683
12716
  def total_egress_bandwidth_tier(self) -> pulumi.Input[builtins.str]:
12684
12717
  """
12685
- Specifies the total network bandwidth tier for the NodePool.
12718
+ Specifies the total network bandwidth tier for NodePools in the cluster.
12686
12719
  """
12687
12720
  return pulumi.get(self, "total_egress_bandwidth_tier")
12688
12721
 
@@ -12782,7 +12815,7 @@ if not MYPY:
12782
12815
  """
12783
12816
  flex_start: NotRequired[pulumi.Input[builtins.bool]]
12784
12817
  """
12785
- ) Enables Flex Start provisioning model for the node pool.
12818
+ Enables Flex Start provisioning model for the node pool.
12786
12819
  """
12787
12820
  gcfs_config: NotRequired[pulumi.Input['ClusterNodePoolNodeConfigGcfsConfigArgsDict']]
12788
12821
  """
@@ -13040,7 +13073,7 @@ class ClusterNodePoolNodeConfigArgs:
13040
13073
  Node Pool must enable gvnic.
13041
13074
  GKE version 1.25.2-gke.1700 or later.
13042
13075
  Structure is documented below.
13043
- :param pulumi.Input[builtins.bool] flex_start: ) Enables Flex Start provisioning model for the node pool.
13076
+ :param pulumi.Input[builtins.bool] flex_start: Enables Flex Start provisioning model for the node pool.
13044
13077
  :param pulumi.Input['ClusterNodePoolNodeConfigGcfsConfigArgs'] gcfs_config: Parameters for the Google Container Filesystem (GCFS).
13045
13078
  If unspecified, GCFS will not be enabled on the node pool. When enabling this feature you must specify `image_type = "COS_CONTAINERD"` and `node_version` from GKE versions 1.19 or later to use it.
13046
13079
  For GKE versions 1.19, 1.20, and 1.21, the recommended minimum `node_version` would be 1.19.15-gke.1300, 1.20.11-gke.1300, and 1.21.5-gke.1300 respectively.
@@ -13363,7 +13396,7 @@ class ClusterNodePoolNodeConfigArgs:
13363
13396
  @pulumi.getter(name="flexStart")
13364
13397
  def flex_start(self) -> Optional[pulumi.Input[builtins.bool]]:
13365
13398
  """
13366
- ) Enables Flex Start provisioning model for the node pool.
13399
+ Enables Flex Start provisioning model for the node pool.
13367
13400
  """
13368
13401
  return pulumi.get(self, "flex_start")
13369
13402
 
@@ -15533,7 +15566,7 @@ if not MYPY:
15533
15566
  """
15534
15567
  tpu_topology: NotRequired[pulumi.Input[builtins.str]]
15535
15568
  """
15536
- TPU placement topology for pod slice node pool. https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies
15569
+ The TPU topology like "2x4" or "2x2x2". https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology
15537
15570
  """
15538
15571
  elif False:
15539
15572
  ClusterNodePoolPlacementPolicyArgsDict: TypeAlias = Mapping[str, Any]
@@ -15548,7 +15581,7 @@ class ClusterNodePoolPlacementPolicyArgs:
15548
15581
  :param pulumi.Input[builtins.str] type: Telemetry integration for the cluster. Supported values (`ENABLED, DISABLED, SYSTEM_ONLY`);
15549
15582
  `SYSTEM_ONLY` (Only system components are monitored and logged) is only available in GKE versions 1.15 and later.
15550
15583
  :param pulumi.Input[builtins.str] policy_name: If set, refers to the name of a custom resource policy supplied by the user. The resource policy must be in the same project and region as the node pool. If not found, InvalidArgument error is returned.
15551
- :param pulumi.Input[builtins.str] tpu_topology: TPU placement topology for pod slice node pool. https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies
15584
+ :param pulumi.Input[builtins.str] tpu_topology: The TPU topology like "2x4" or "2x2x2". https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology
15552
15585
  """
15553
15586
  pulumi.set(__self__, "type", type)
15554
15587
  if policy_name is not None:
@@ -15585,7 +15618,7 @@ class ClusterNodePoolPlacementPolicyArgs:
15585
15618
  @pulumi.getter(name="tpuTopology")
15586
15619
  def tpu_topology(self) -> Optional[pulumi.Input[builtins.str]]:
15587
15620
  """
15588
- TPU placement topology for pod slice node pool. https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies
15621
+ The TPU topology like "2x4" or "2x2x2". https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology
15589
15622
  """
15590
15623
  return pulumi.get(self, "tpu_topology")
15591
15624
 
@@ -17516,7 +17549,7 @@ if not MYPY:
17516
17549
  class NodePoolNetworkConfigNetworkPerformanceConfigArgsDict(TypedDict):
17517
17550
  total_egress_bandwidth_tier: pulumi.Input[builtins.str]
17518
17551
  """
17519
- Specifies the total network bandwidth tier for the NodePool.
17552
+ Specifies the total network bandwidth tier for the NodePool. [Valid values](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.Tier) include: "TIER_1" and "TIER_UNSPECIFIED".
17520
17553
  """
17521
17554
  elif False:
17522
17555
  NodePoolNetworkConfigNetworkPerformanceConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -17526,7 +17559,7 @@ class NodePoolNetworkConfigNetworkPerformanceConfigArgs:
17526
17559
  def __init__(__self__, *,
17527
17560
  total_egress_bandwidth_tier: pulumi.Input[builtins.str]):
17528
17561
  """
17529
- :param pulumi.Input[builtins.str] total_egress_bandwidth_tier: Specifies the total network bandwidth tier for the NodePool.
17562
+ :param pulumi.Input[builtins.str] total_egress_bandwidth_tier: Specifies the total network bandwidth tier for the NodePool. [Valid values](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.Tier) include: "TIER_1" and "TIER_UNSPECIFIED".
17530
17563
  """
17531
17564
  pulumi.set(__self__, "total_egress_bandwidth_tier", total_egress_bandwidth_tier)
17532
17565
 
@@ -17534,7 +17567,7 @@ class NodePoolNetworkConfigNetworkPerformanceConfigArgs:
17534
17567
  @pulumi.getter(name="totalEgressBandwidthTier")
17535
17568
  def total_egress_bandwidth_tier(self) -> pulumi.Input[builtins.str]:
17536
17569
  """
17537
- Specifies the total network bandwidth tier for the NodePool.
17570
+ Specifies the total network bandwidth tier for the NodePool. [Valid values](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.Tier) include: "TIER_1" and "TIER_UNSPECIFIED".
17538
17571
  """
17539
17572
  return pulumi.get(self, "total_egress_bandwidth_tier")
17540
17573
 
@@ -20088,7 +20121,7 @@ if not MYPY:
20088
20121
  """
20089
20122
  tpu_topology: NotRequired[pulumi.Input[builtins.str]]
20090
20123
  """
20091
- The [TPU placement topology](https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies) for pod slice node pool.
20124
+ The [TPU topology](https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology) like `"2x4"` or `"2x2x2"`.
20092
20125
  """
20093
20126
  elif False:
20094
20127
  NodePoolPlacementPolicyArgsDict: TypeAlias = Mapping[str, Any]
@@ -20106,7 +20139,7 @@ class NodePoolPlacementPolicyArgs:
20106
20139
  :param pulumi.Input[builtins.str] policy_name: If set, refers to the name of a custom resource policy supplied by the user.
20107
20140
  The resource policy must be in the same project and region as the node pool.
20108
20141
  If not found, InvalidArgument error is returned.
20109
- :param pulumi.Input[builtins.str] tpu_topology: The [TPU placement topology](https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies) for pod slice node pool.
20142
+ :param pulumi.Input[builtins.str] tpu_topology: The [TPU topology](https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology) like `"2x4"` or `"2x2x2"`.
20110
20143
  """
20111
20144
  pulumi.set(__self__, "type", type)
20112
20145
  if policy_name is not None:
@@ -20146,7 +20179,7 @@ class NodePoolPlacementPolicyArgs:
20146
20179
  @pulumi.getter(name="tpuTopology")
20147
20180
  def tpu_topology(self) -> Optional[pulumi.Input[builtins.str]]:
20148
20181
  """
20149
- The [TPU placement topology](https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies) for pod slice node pool.
20182
+ The [TPU topology](https://cloud.google.com/kubernetes-engine/docs/concepts/plan-tpus#topology) like `"2x4"` or `"2x2x2"`.
20150
20183
  """
20151
20184
  return pulumi.get(self, "tpu_topology")
20152
20185
 
@@ -70,6 +70,7 @@ class ClusterArgs:
70
70
  monitoring_service: Optional[pulumi.Input[builtins.str]] = None,
71
71
  name: Optional[pulumi.Input[builtins.str]] = None,
72
72
  network: Optional[pulumi.Input[builtins.str]] = None,
73
+ network_performance_config: Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']] = None,
73
74
  network_policy: Optional[pulumi.Input['ClusterNetworkPolicyArgs']] = None,
74
75
  networking_mode: Optional[pulumi.Input[builtins.str]] = None,
75
76
  node_config: Optional[pulumi.Input['ClusterNodeConfigArgs']] = None,
@@ -230,6 +231,7 @@ class ClusterArgs:
230
231
  :param pulumi.Input[builtins.str] network: The name or self_link of the Google Compute Engine
231
232
  network to which the cluster is connected. For Shared VPC, set this to the self link of the
232
233
  shared network.
234
+ :param pulumi.Input['ClusterNetworkPerformanceConfigArgs'] network_performance_config: Network bandwidth tier configuration.
233
235
  :param pulumi.Input['ClusterNetworkPolicyArgs'] network_policy: Configuration options for the
234
236
  [NetworkPolicy](https://kubernetes.io/docs/concepts/services-networking/networkpolicies/)
235
237
  feature. Structure is documented below.
@@ -413,6 +415,8 @@ class ClusterArgs:
413
415
  pulumi.set(__self__, "name", name)
414
416
  if network is not None:
415
417
  pulumi.set(__self__, "network", network)
418
+ if network_performance_config is not None:
419
+ pulumi.set(__self__, "network_performance_config", network_performance_config)
416
420
  if network_policy is not None:
417
421
  pulumi.set(__self__, "network_policy", network_policy)
418
422
  if networking_mode is not None:
@@ -1126,6 +1130,18 @@ class ClusterArgs:
1126
1130
  def network(self, value: Optional[pulumi.Input[builtins.str]]):
1127
1131
  pulumi.set(self, "network", value)
1128
1132
 
1133
+ @property
1134
+ @pulumi.getter(name="networkPerformanceConfig")
1135
+ def network_performance_config(self) -> Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']]:
1136
+ """
1137
+ Network bandwidth tier configuration.
1138
+ """
1139
+ return pulumi.get(self, "network_performance_config")
1140
+
1141
+ @network_performance_config.setter
1142
+ def network_performance_config(self, value: Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']]):
1143
+ pulumi.set(self, "network_performance_config", value)
1144
+
1129
1145
  @property
1130
1146
  @pulumi.getter(name="networkPolicy")
1131
1147
  def network_policy(self) -> Optional[pulumi.Input['ClusterNetworkPolicyArgs']]:
@@ -1576,6 +1592,7 @@ class _ClusterState:
1576
1592
  monitoring_service: Optional[pulumi.Input[builtins.str]] = None,
1577
1593
  name: Optional[pulumi.Input[builtins.str]] = None,
1578
1594
  network: Optional[pulumi.Input[builtins.str]] = None,
1595
+ network_performance_config: Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']] = None,
1579
1596
  network_policy: Optional[pulumi.Input['ClusterNetworkPolicyArgs']] = None,
1580
1597
  networking_mode: Optional[pulumi.Input[builtins.str]] = None,
1581
1598
  node_config: Optional[pulumi.Input['ClusterNodeConfigArgs']] = None,
@@ -1747,6 +1764,7 @@ class _ClusterState:
1747
1764
  :param pulumi.Input[builtins.str] network: The name or self_link of the Google Compute Engine
1748
1765
  network to which the cluster is connected. For Shared VPC, set this to the self link of the
1749
1766
  shared network.
1767
+ :param pulumi.Input['ClusterNetworkPerformanceConfigArgs'] network_performance_config: Network bandwidth tier configuration.
1750
1768
  :param pulumi.Input['ClusterNetworkPolicyArgs'] network_policy: Configuration options for the
1751
1769
  [NetworkPolicy](https://kubernetes.io/docs/concepts/services-networking/networkpolicies/)
1752
1770
  feature. Structure is documented below.
@@ -1947,6 +1965,8 @@ class _ClusterState:
1947
1965
  pulumi.set(__self__, "name", name)
1948
1966
  if network is not None:
1949
1967
  pulumi.set(__self__, "network", network)
1968
+ if network_performance_config is not None:
1969
+ pulumi.set(__self__, "network_performance_config", network_performance_config)
1950
1970
  if network_policy is not None:
1951
1971
  pulumi.set(__self__, "network_policy", network_policy)
1952
1972
  if networking_mode is not None:
@@ -2720,6 +2740,18 @@ class _ClusterState:
2720
2740
  def network(self, value: Optional[pulumi.Input[builtins.str]]):
2721
2741
  pulumi.set(self, "network", value)
2722
2742
 
2743
+ @property
2744
+ @pulumi.getter(name="networkPerformanceConfig")
2745
+ def network_performance_config(self) -> Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']]:
2746
+ """
2747
+ Network bandwidth tier configuration.
2748
+ """
2749
+ return pulumi.get(self, "network_performance_config")
2750
+
2751
+ @network_performance_config.setter
2752
+ def network_performance_config(self, value: Optional[pulumi.Input['ClusterNetworkPerformanceConfigArgs']]):
2753
+ pulumi.set(self, "network_performance_config", value)
2754
+
2723
2755
  @property
2724
2756
  @pulumi.getter(name="networkPolicy")
2725
2757
  def network_policy(self) -> Optional[pulumi.Input['ClusterNetworkPolicyArgs']]:
@@ -3231,6 +3263,7 @@ class Cluster(pulumi.CustomResource):
3231
3263
  monitoring_service: Optional[pulumi.Input[builtins.str]] = None,
3232
3264
  name: Optional[pulumi.Input[builtins.str]] = None,
3233
3265
  network: Optional[pulumi.Input[builtins.str]] = None,
3266
+ network_performance_config: Optional[pulumi.Input[Union['ClusterNetworkPerformanceConfigArgs', 'ClusterNetworkPerformanceConfigArgsDict']]] = None,
3234
3267
  network_policy: Optional[pulumi.Input[Union['ClusterNetworkPolicyArgs', 'ClusterNetworkPolicyArgsDict']]] = None,
3235
3268
  networking_mode: Optional[pulumi.Input[builtins.str]] = None,
3236
3269
  node_config: Optional[pulumi.Input[Union['ClusterNodeConfigArgs', 'ClusterNodeConfigArgsDict']]] = None,
@@ -3513,6 +3546,7 @@ class Cluster(pulumi.CustomResource):
3513
3546
  :param pulumi.Input[builtins.str] network: The name or self_link of the Google Compute Engine
3514
3547
  network to which the cluster is connected. For Shared VPC, set this to the self link of the
3515
3548
  shared network.
3549
+ :param pulumi.Input[Union['ClusterNetworkPerformanceConfigArgs', 'ClusterNetworkPerformanceConfigArgsDict']] network_performance_config: Network bandwidth tier configuration.
3516
3550
  :param pulumi.Input[Union['ClusterNetworkPolicyArgs', 'ClusterNetworkPolicyArgsDict']] network_policy: Configuration options for the
3517
3551
  [NetworkPolicy](https://kubernetes.io/docs/concepts/services-networking/networkpolicies/)
3518
3552
  feature. Structure is documented below.
@@ -3790,6 +3824,7 @@ class Cluster(pulumi.CustomResource):
3790
3824
  monitoring_service: Optional[pulumi.Input[builtins.str]] = None,
3791
3825
  name: Optional[pulumi.Input[builtins.str]] = None,
3792
3826
  network: Optional[pulumi.Input[builtins.str]] = None,
3827
+ network_performance_config: Optional[pulumi.Input[Union['ClusterNetworkPerformanceConfigArgs', 'ClusterNetworkPerformanceConfigArgsDict']]] = None,
3793
3828
  network_policy: Optional[pulumi.Input[Union['ClusterNetworkPolicyArgs', 'ClusterNetworkPolicyArgsDict']]] = None,
3794
3829
  networking_mode: Optional[pulumi.Input[builtins.str]] = None,
3795
3830
  node_config: Optional[pulumi.Input[Union['ClusterNodeConfigArgs', 'ClusterNodeConfigArgsDict']]] = None,
@@ -3875,6 +3910,7 @@ class Cluster(pulumi.CustomResource):
3875
3910
  __props__.__dict__["monitoring_service"] = monitoring_service
3876
3911
  __props__.__dict__["name"] = name
3877
3912
  __props__.__dict__["network"] = network
3913
+ __props__.__dict__["network_performance_config"] = network_performance_config
3878
3914
  __props__.__dict__["network_policy"] = network_policy
3879
3915
  __props__.__dict__["networking_mode"] = networking_mode
3880
3916
  __props__.__dict__["node_config"] = node_config
@@ -3976,6 +4012,7 @@ class Cluster(pulumi.CustomResource):
3976
4012
  monitoring_service: Optional[pulumi.Input[builtins.str]] = None,
3977
4013
  name: Optional[pulumi.Input[builtins.str]] = None,
3978
4014
  network: Optional[pulumi.Input[builtins.str]] = None,
4015
+ network_performance_config: Optional[pulumi.Input[Union['ClusterNetworkPerformanceConfigArgs', 'ClusterNetworkPerformanceConfigArgsDict']]] = None,
3979
4016
  network_policy: Optional[pulumi.Input[Union['ClusterNetworkPolicyArgs', 'ClusterNetworkPolicyArgsDict']]] = None,
3980
4017
  networking_mode: Optional[pulumi.Input[builtins.str]] = None,
3981
4018
  node_config: Optional[pulumi.Input[Union['ClusterNodeConfigArgs', 'ClusterNodeConfigArgsDict']]] = None,
@@ -4152,6 +4189,7 @@ class Cluster(pulumi.CustomResource):
4152
4189
  :param pulumi.Input[builtins.str] network: The name or self_link of the Google Compute Engine
4153
4190
  network to which the cluster is connected. For Shared VPC, set this to the self link of the
4154
4191
  shared network.
4192
+ :param pulumi.Input[Union['ClusterNetworkPerformanceConfigArgs', 'ClusterNetworkPerformanceConfigArgsDict']] network_performance_config: Network bandwidth tier configuration.
4155
4193
  :param pulumi.Input[Union['ClusterNetworkPolicyArgs', 'ClusterNetworkPolicyArgsDict']] network_policy: Configuration options for the
4156
4194
  [NetworkPolicy](https://kubernetes.io/docs/concepts/services-networking/networkpolicies/)
4157
4195
  feature. Structure is documented below.
@@ -4304,6 +4342,7 @@ class Cluster(pulumi.CustomResource):
4304
4342
  __props__.__dict__["monitoring_service"] = monitoring_service
4305
4343
  __props__.__dict__["name"] = name
4306
4344
  __props__.__dict__["network"] = network
4345
+ __props__.__dict__["network_performance_config"] = network_performance_config
4307
4346
  __props__.__dict__["network_policy"] = network_policy
4308
4347
  __props__.__dict__["networking_mode"] = networking_mode
4309
4348
  __props__.__dict__["node_config"] = node_config
@@ -4837,6 +4876,14 @@ class Cluster(pulumi.CustomResource):
4837
4876
  """
4838
4877
  return pulumi.get(self, "network")
4839
4878
 
4879
+ @property
4880
+ @pulumi.getter(name="networkPerformanceConfig")
4881
+ def network_performance_config(self) -> pulumi.Output[Optional['outputs.ClusterNetworkPerformanceConfig']]:
4882
+ """
4883
+ Network bandwidth tier configuration.
4884
+ """
4885
+ return pulumi.get(self, "network_performance_config")
4886
+
4840
4887
  @property
4841
4888
  @pulumi.getter(name="networkPolicy")
4842
4889
  def network_policy(self) -> pulumi.Output[Optional['outputs.ClusterNetworkPolicy']]: