pulumi-gcp 8.36.0a1750484065__py3-none-any.whl → 8.37.0a1751903932__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 (117) hide show
  1. pulumi_gcp/__init__.py +59 -0
  2. pulumi_gcp/alloydb/_inputs.py +26 -0
  3. pulumi_gcp/alloydb/outputs.py +34 -1
  4. pulumi_gcp/apihub/__init__.py +2 -0
  5. pulumi_gcp/apihub/_inputs.py +1658 -0
  6. pulumi_gcp/apihub/outputs.py +1374 -0
  7. pulumi_gcp/apihub/plugin.py +1146 -0
  8. pulumi_gcp/apihub/plugin_instance.py +808 -0
  9. pulumi_gcp/bigquery/table.py +16 -12
  10. pulumi_gcp/bigqueryanalyticshub/_inputs.py +56 -6
  11. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +73 -0
  12. pulumi_gcp/bigqueryanalyticshub/listing.py +201 -48
  13. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +28 -0
  14. pulumi_gcp/bigqueryanalyticshub/outputs.py +50 -4
  15. pulumi_gcp/bigtable/table.py +82 -0
  16. pulumi_gcp/cloudidentity/group_membership.py +47 -0
  17. pulumi_gcp/cloudidentity/outputs.py +11 -0
  18. pulumi_gcp/cloudquota/s_quota_adjuster_settings.py +64 -8
  19. pulumi_gcp/cloudrunv2/_inputs.py +65 -9
  20. pulumi_gcp/cloudrunv2/job.py +44 -0
  21. pulumi_gcp/cloudrunv2/outputs.py +73 -8
  22. pulumi_gcp/cloudrunv2/service.py +0 -2
  23. pulumi_gcp/cloudrunv2/worker_pool.py +18 -20
  24. pulumi_gcp/compute/__init__.py +1 -0
  25. pulumi_gcp/compute/_inputs.py +787 -18
  26. pulumi_gcp/compute/disk.py +35 -28
  27. pulumi_gcp/compute/firewall_policy_rule.py +207 -0
  28. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  29. pulumi_gcp/compute/get_region_disk.py +12 -1
  30. pulumi_gcp/compute/instance.py +2 -2
  31. pulumi_gcp/compute/instance_group_manager.py +165 -14
  32. pulumi_gcp/compute/instance_template.py +2 -2
  33. pulumi_gcp/compute/interconnect.py +43 -11
  34. pulumi_gcp/compute/network.py +56 -0
  35. pulumi_gcp/compute/network_firewall_policy.py +68 -0
  36. pulumi_gcp/compute/network_firewall_policy_with_rules.py +61 -0
  37. pulumi_gcp/compute/node_template.py +21 -0
  38. pulumi_gcp/compute/outputs.py +620 -12
  39. pulumi_gcp/compute/region_disk.py +114 -0
  40. pulumi_gcp/compute/region_network_firewall_policy.py +90 -0
  41. pulumi_gcp/compute/region_network_firewall_policy_with_rules.py +109 -0
  42. pulumi_gcp/compute/service_attachment.py +76 -8
  43. pulumi_gcp/compute/wire_group.py +751 -0
  44. pulumi_gcp/config/__init__.pyi +2 -0
  45. pulumi_gcp/config/vars.py +4 -0
  46. pulumi_gcp/contactcenterinsights/__init__.py +9 -0
  47. pulumi_gcp/contactcenterinsights/view.py +526 -0
  48. pulumi_gcp/container/_inputs.py +207 -28
  49. pulumi_gcp/container/cluster.py +54 -0
  50. pulumi_gcp/container/get_cluster.py +12 -1
  51. pulumi_gcp/container/get_engine_versions.py +15 -1
  52. pulumi_gcp/container/node_pool.py +14 -0
  53. pulumi_gcp/container/outputs.py +295 -21
  54. pulumi_gcp/dataplex/_inputs.py +431 -6
  55. pulumi_gcp/dataplex/datascan.py +251 -0
  56. pulumi_gcp/dataplex/entry_type.py +2 -2
  57. pulumi_gcp/dataplex/glossary_category.py +8 -8
  58. pulumi_gcp/dataplex/glossary_term.py +8 -8
  59. pulumi_gcp/dataplex/outputs.py +353 -4
  60. pulumi_gcp/dataplex/task.py +16 -16
  61. pulumi_gcp/dataproc/__init__.py +1 -0
  62. pulumi_gcp/dataproc/_inputs.py +486 -0
  63. pulumi_gcp/dataproc/batch.py +10 -10
  64. pulumi_gcp/dataproc/outputs.py +407 -0
  65. pulumi_gcp/dataproc/session_template.py +1084 -0
  66. pulumi_gcp/diagflow/__init__.py +2 -0
  67. pulumi_gcp/diagflow/_inputs.py +479 -0
  68. pulumi_gcp/diagflow/cx_generative_settings.py +625 -0
  69. pulumi_gcp/diagflow/cx_tool.py +2 -2
  70. pulumi_gcp/diagflow/encryption_spec.py +382 -0
  71. pulumi_gcp/diagflow/outputs.py +416 -0
  72. pulumi_gcp/dns/record_set.py +4 -2
  73. pulumi_gcp/firestore/database.py +0 -9
  74. pulumi_gcp/firestore/field.py +6 -6
  75. pulumi_gcp/gkehub/membership_binding.py +6 -6
  76. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  77. pulumi_gcp/gkehub/namespace.py +4 -4
  78. pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -8
  79. pulumi_gcp/iam/_inputs.py +36 -0
  80. pulumi_gcp/iam/outputs.py +38 -0
  81. pulumi_gcp/iam/workload_identity_pool_managed_identity.py +88 -2
  82. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  83. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  84. pulumi_gcp/kms/autokey_config.py +28 -0
  85. pulumi_gcp/kms/get_autokey_config.py +12 -1
  86. pulumi_gcp/lustre/get_instance.py +12 -1
  87. pulumi_gcp/lustre/instance.py +143 -86
  88. pulumi_gcp/managedkafka/connect_cluster.py +4 -4
  89. pulumi_gcp/managedkafka/connector.py +4 -4
  90. pulumi_gcp/memorystore/get_instance.py +12 -1
  91. pulumi_gcp/memorystore/instance.py +49 -0
  92. pulumi_gcp/monitoring/metric_descriptor.py +55 -57
  93. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  94. pulumi_gcp/notebooks/instance.py +8 -8
  95. pulumi_gcp/orgpolicy/policy.py +2 -2
  96. pulumi_gcp/provider.py +20 -0
  97. pulumi_gcp/pubsub/subscription.py +6 -6
  98. pulumi_gcp/pulumi-plugin.json +1 -1
  99. pulumi_gcp/redis/get_instance.py +12 -1
  100. pulumi_gcp/redis/instance.py +44 -0
  101. pulumi_gcp/secretmanager/get_regional_secret.py +12 -1
  102. pulumi_gcp/secretmanager/outputs.py +7 -0
  103. pulumi_gcp/secretmanager/regional_secret.py +38 -2
  104. pulumi_gcp/spanner/_inputs.py +24 -1
  105. pulumi_gcp/spanner/outputs.py +17 -1
  106. pulumi_gcp/storage/_inputs.py +43 -3
  107. pulumi_gcp/storage/bucket_object.py +56 -0
  108. pulumi_gcp/storage/get_bucket_object.py +12 -1
  109. pulumi_gcp/storage/get_bucket_object_content.py +12 -1
  110. pulumi_gcp/storage/outputs.py +53 -3
  111. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  112. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  113. pulumi_gcp/workbench/instance.py +2 -0
  114. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0a1751903932.dist-info}/METADATA +2 -2
  115. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0a1751903932.dist-info}/RECORD +117 -109
  116. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0a1751903932.dist-info}/WHEEL +0 -0
  117. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0a1751903932.dist-info}/top_level.txt +0 -0
@@ -128,6 +128,7 @@ __all__ = [
128
128
  'ClusterEnterpriseConfig',
129
129
  'ClusterFleet',
130
130
  'ClusterGatewayApiConfig',
131
+ 'ClusterGkeAutoUpgradeConfig',
131
132
  'ClusterIdentityServiceConfig',
132
133
  'ClusterIpAllocationPolicy',
133
134
  'ClusterIpAllocationPolicyAdditionalPodRangesConfig',
@@ -337,6 +338,7 @@ __all__ = [
337
338
  'GetClusterEnterpriseConfigResult',
338
339
  'GetClusterFleetResult',
339
340
  'GetClusterGatewayApiConfigResult',
341
+ 'GetClusterGkeAutoUpgradeConfigResult',
340
342
  'GetClusterIdentityServiceConfigResult',
341
343
  'GetClusterIpAllocationPolicyResult',
342
344
  'GetClusterIpAllocationPolicyAdditionalPodRangesConfigResult',
@@ -5365,13 +5367,35 @@ class ClusterClusterTelemetry(dict):
5365
5367
 
5366
5368
  @pulumi.output_type
5367
5369
  class ClusterConfidentialNodes(dict):
5370
+ @staticmethod
5371
+ def __key_warning(key: str):
5372
+ suggest = None
5373
+ if key == "confidentialInstanceType":
5374
+ suggest = "confidential_instance_type"
5375
+
5376
+ if suggest:
5377
+ pulumi.log.warn(f"Key '{key}' not found in ClusterConfidentialNodes. Access the value via the '{suggest}' property getter instead.")
5378
+
5379
+ def __getitem__(self, key: str) -> Any:
5380
+ ClusterConfidentialNodes.__key_warning(key)
5381
+ return super().__getitem__(key)
5382
+
5383
+ def get(self, key: str, default = None) -> Any:
5384
+ ClusterConfidentialNodes.__key_warning(key)
5385
+ return super().get(key, default)
5386
+
5368
5387
  def __init__(__self__, *,
5369
- enabled: builtins.bool):
5388
+ enabled: builtins.bool,
5389
+ confidential_instance_type: Optional[builtins.str] = None):
5370
5390
  """
5371
5391
  :param builtins.bool enabled: Enable Confidential GKE Nodes for this cluster, to
5372
5392
  enforce encryption of data in-use.
5393
+ :param builtins.str confidential_instance_type: Defines the type of technology used
5394
+ by the confidential node.
5373
5395
  """
5374
5396
  pulumi.set(__self__, "enabled", enabled)
5397
+ if confidential_instance_type is not None:
5398
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
5375
5399
 
5376
5400
  @property
5377
5401
  @pulumi.getter
@@ -5382,6 +5406,15 @@ class ClusterConfidentialNodes(dict):
5382
5406
  """
5383
5407
  return pulumi.get(self, "enabled")
5384
5408
 
5409
+ @property
5410
+ @pulumi.getter(name="confidentialInstanceType")
5411
+ def confidential_instance_type(self) -> Optional[builtins.str]:
5412
+ """
5413
+ Defines the type of technology used
5414
+ by the confidential node.
5415
+ """
5416
+ return pulumi.get(self, "confidential_instance_type")
5417
+
5385
5418
 
5386
5419
  @pulumi.output_type
5387
5420
  class ClusterControlPlaneEndpointsConfig(dict):
@@ -5860,6 +5893,45 @@ class ClusterGatewayApiConfig(dict):
5860
5893
  return pulumi.get(self, "channel")
5861
5894
 
5862
5895
 
5896
+ @pulumi.output_type
5897
+ class ClusterGkeAutoUpgradeConfig(dict):
5898
+ @staticmethod
5899
+ def __key_warning(key: str):
5900
+ suggest = None
5901
+ if key == "patchMode":
5902
+ suggest = "patch_mode"
5903
+
5904
+ if suggest:
5905
+ pulumi.log.warn(f"Key '{key}' not found in ClusterGkeAutoUpgradeConfig. Access the value via the '{suggest}' property getter instead.")
5906
+
5907
+ def __getitem__(self, key: str) -> Any:
5908
+ ClusterGkeAutoUpgradeConfig.__key_warning(key)
5909
+ return super().__getitem__(key)
5910
+
5911
+ def get(self, key: str, default = None) -> Any:
5912
+ ClusterGkeAutoUpgradeConfig.__key_warning(key)
5913
+ return super().get(key, default)
5914
+
5915
+ def __init__(__self__, *,
5916
+ patch_mode: builtins.str):
5917
+ """
5918
+ :param builtins.str patch_mode: The selected patch mode.
5919
+ Accepted values are:
5920
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
5921
+ """
5922
+ pulumi.set(__self__, "patch_mode", patch_mode)
5923
+
5924
+ @property
5925
+ @pulumi.getter(name="patchMode")
5926
+ def patch_mode(self) -> builtins.str:
5927
+ """
5928
+ The selected patch mode.
5929
+ Accepted values are:
5930
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
5931
+ """
5932
+ return pulumi.get(self, "patch_mode")
5933
+
5934
+
5863
5935
  @pulumi.output_type
5864
5936
  class ClusterIdentityServiceConfig(dict):
5865
5937
  def __init__(__self__, *,
@@ -7773,6 +7845,8 @@ class ClusterNodeConfigAdvancedMachineFeatures(dict):
7773
7845
  suggest = "threads_per_core"
7774
7846
  elif key == "enableNestedVirtualization":
7775
7847
  suggest = "enable_nested_virtualization"
7848
+ elif key == "performanceMonitoringUnit":
7849
+ suggest = "performance_monitoring_unit"
7776
7850
 
7777
7851
  if suggest:
7778
7852
  pulumi.log.warn(f"Key '{key}' not found in ClusterNodeConfigAdvancedMachineFeatures. Access the value via the '{suggest}' property getter instead.")
@@ -7787,14 +7861,18 @@ class ClusterNodeConfigAdvancedMachineFeatures(dict):
7787
7861
 
7788
7862
  def __init__(__self__, *,
7789
7863
  threads_per_core: builtins.int,
7790
- enable_nested_virtualization: Optional[builtins.bool] = None):
7864
+ enable_nested_virtualization: Optional[builtins.bool] = None,
7865
+ performance_monitoring_unit: Optional[builtins.str] = None):
7791
7866
  """
7792
7867
  :param builtins.int threads_per_core: The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
7793
7868
  :param builtins.bool enable_nested_virtualization: Defines whether the instance should have nested virtualization enabled. Defaults to false.
7869
+ :param builtins.str performance_monitoring_unit: Defines the performance monitoring unit [PMU](https://cloud.google.com/compute/docs/pmu-overview) level. Valid values are `ARCHITECTURAL`, `STANDARD`, or `ENHANCED`. Defaults to off.
7794
7870
  """
7795
7871
  pulumi.set(__self__, "threads_per_core", threads_per_core)
7796
7872
  if enable_nested_virtualization is not None:
7797
7873
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
7874
+ if performance_monitoring_unit is not None:
7875
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
7798
7876
 
7799
7877
  @property
7800
7878
  @pulumi.getter(name="threadsPerCore")
@@ -7812,16 +7890,46 @@ class ClusterNodeConfigAdvancedMachineFeatures(dict):
7812
7890
  """
7813
7891
  return pulumi.get(self, "enable_nested_virtualization")
7814
7892
 
7893
+ @property
7894
+ @pulumi.getter(name="performanceMonitoringUnit")
7895
+ def performance_monitoring_unit(self) -> Optional[builtins.str]:
7896
+ """
7897
+ Defines the performance monitoring unit [PMU](https://cloud.google.com/compute/docs/pmu-overview) level. Valid values are `ARCHITECTURAL`, `STANDARD`, or `ENHANCED`. Defaults to off.
7898
+ """
7899
+ return pulumi.get(self, "performance_monitoring_unit")
7900
+
7815
7901
 
7816
7902
  @pulumi.output_type
7817
7903
  class ClusterNodeConfigConfidentialNodes(dict):
7904
+ @staticmethod
7905
+ def __key_warning(key: str):
7906
+ suggest = None
7907
+ if key == "confidentialInstanceType":
7908
+ suggest = "confidential_instance_type"
7909
+
7910
+ if suggest:
7911
+ pulumi.log.warn(f"Key '{key}' not found in ClusterNodeConfigConfidentialNodes. Access the value via the '{suggest}' property getter instead.")
7912
+
7913
+ def __getitem__(self, key: str) -> Any:
7914
+ ClusterNodeConfigConfidentialNodes.__key_warning(key)
7915
+ return super().__getitem__(key)
7916
+
7917
+ def get(self, key: str, default = None) -> Any:
7918
+ ClusterNodeConfigConfidentialNodes.__key_warning(key)
7919
+ return super().get(key, default)
7920
+
7818
7921
  def __init__(__self__, *,
7819
- enabled: builtins.bool):
7922
+ enabled: builtins.bool,
7923
+ confidential_instance_type: Optional[builtins.str] = None):
7820
7924
  """
7821
7925
  :param builtins.bool enabled: Enable Confidential GKE Nodes for this cluster, to
7822
7926
  enforce encryption of data in-use.
7927
+ :param builtins.str confidential_instance_type: Defines the type of technology used
7928
+ by the confidential node.
7823
7929
  """
7824
7930
  pulumi.set(__self__, "enabled", enabled)
7931
+ if confidential_instance_type is not None:
7932
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
7825
7933
 
7826
7934
  @property
7827
7935
  @pulumi.getter
@@ -7832,6 +7940,15 @@ class ClusterNodeConfigConfidentialNodes(dict):
7832
7940
  """
7833
7941
  return pulumi.get(self, "enabled")
7834
7942
 
7943
+ @property
7944
+ @pulumi.getter(name="confidentialInstanceType")
7945
+ def confidential_instance_type(self) -> Optional[builtins.str]:
7946
+ """
7947
+ Defines the type of technology used
7948
+ by the confidential node.
7949
+ """
7950
+ return pulumi.get(self, "confidential_instance_type")
7951
+
7835
7952
 
7836
7953
  @pulumi.output_type
7837
7954
  class ClusterNodeConfigContainerdConfig(dict):
@@ -10098,12 +10215,12 @@ class ClusterNodePoolNetworkConfig(dict):
10098
10215
  """
10099
10216
  :param Sequence['ClusterNodePoolNetworkConfigAdditionalNodeNetworkConfigArgs'] additional_node_network_configs: We specify the additional node networks for this node pool using this list. Each node network corresponds to an additional interface
10100
10217
  :param Sequence['ClusterNodePoolNetworkConfigAdditionalPodNetworkConfigArgs'] additional_pod_network_configs: We specify the additional pod networks for this node pool using this list. Each pod network corresponds to an additional alias IP range for the node
10101
- :param builtins.bool create_pod_range: Whether to create a new range for pod IPs in this node pool. Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they are not specified.
10218
+ :param builtins.bool create_pod_range: Whether to create a new range for pod IPs in this node pool. Defaults are provided for pod_range and pod_ipv4_cidr_block if they are not specified.
10102
10219
  :param builtins.bool enable_private_nodes: Whether nodes have internal IP addresses only.
10103
10220
  :param 'ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgs' network_performance_config: Network bandwidth tier configuration.
10104
10221
  :param 'ClusterNodePoolNetworkConfigPodCidrOverprovisionConfigArgs' pod_cidr_overprovision_config: Configuration for node-pool level pod cidr overprovision. If not set, the cluster level setting will be inherited
10105
- :param builtins.str pod_ipv4_cidr_block: The IP address range for pod IPs in this node pool. Only applicable if createPodRange is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
10106
- :param builtins.str pod_range: The ID of the secondary range for pod IPs. If `create_pod_range` is true, this ID is used for the new range. If `create_pod_range` is false, uses an existing secondary range with this ID.
10222
+ :param builtins.str pod_ipv4_cidr_block: The IP address range for pod IPs in this node pool. Only applicable if create_pod_range is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
10223
+ :param builtins.str pod_range: The ID of the secondary range for pod IPs. If create_pod_range is true, this ID is used for the new range. If create_pod_range is false, uses an existing secondary range with this ID.
10107
10224
  """
10108
10225
  if additional_node_network_configs is not None:
10109
10226
  pulumi.set(__self__, "additional_node_network_configs", additional_node_network_configs)
@@ -10142,7 +10259,7 @@ class ClusterNodePoolNetworkConfig(dict):
10142
10259
  @pulumi.getter(name="createPodRange")
10143
10260
  def create_pod_range(self) -> Optional[builtins.bool]:
10144
10261
  """
10145
- Whether to create a new range for pod IPs in this node pool. Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they are not specified.
10262
+ Whether to create a new range for pod IPs in this node pool. Defaults are provided for pod_range and pod_ipv4_cidr_block if they are not specified.
10146
10263
  """
10147
10264
  return pulumi.get(self, "create_pod_range")
10148
10265
 
@@ -10174,7 +10291,7 @@ class ClusterNodePoolNetworkConfig(dict):
10174
10291
  @pulumi.getter(name="podIpv4CidrBlock")
10175
10292
  def pod_ipv4_cidr_block(self) -> Optional[builtins.str]:
10176
10293
  """
10177
- The IP address range for pod IPs in this node pool. Only applicable if createPodRange is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
10294
+ The IP address range for pod IPs in this node pool. Only applicable if create_pod_range is true. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) to pick a specific range to use.
10178
10295
  """
10179
10296
  return pulumi.get(self, "pod_ipv4_cidr_block")
10180
10297
 
@@ -10182,7 +10299,7 @@ class ClusterNodePoolNetworkConfig(dict):
10182
10299
  @pulumi.getter(name="podRange")
10183
10300
  def pod_range(self) -> Optional[builtins.str]:
10184
10301
  """
10185
- The ID of the secondary range for pod IPs. If `create_pod_range` is true, this ID is used for the new range. If `create_pod_range` is false, uses an existing secondary range with this ID.
10302
+ The ID of the secondary range for pod IPs. If create_pod_range is true, this ID is used for the new range. If create_pod_range is false, uses an existing secondary range with this ID.
10186
10303
  """
10187
10304
  return pulumi.get(self, "pod_range")
10188
10305
 
@@ -11114,6 +11231,8 @@ class ClusterNodePoolNodeConfigAdvancedMachineFeatures(dict):
11114
11231
  suggest = "threads_per_core"
11115
11232
  elif key == "enableNestedVirtualization":
11116
11233
  suggest = "enable_nested_virtualization"
11234
+ elif key == "performanceMonitoringUnit":
11235
+ suggest = "performance_monitoring_unit"
11117
11236
 
11118
11237
  if suggest:
11119
11238
  pulumi.log.warn(f"Key '{key}' not found in ClusterNodePoolNodeConfigAdvancedMachineFeatures. Access the value via the '{suggest}' property getter instead.")
@@ -11128,14 +11247,18 @@ class ClusterNodePoolNodeConfigAdvancedMachineFeatures(dict):
11128
11247
 
11129
11248
  def __init__(__self__, *,
11130
11249
  threads_per_core: builtins.int,
11131
- enable_nested_virtualization: Optional[builtins.bool] = None):
11250
+ enable_nested_virtualization: Optional[builtins.bool] = None,
11251
+ performance_monitoring_unit: Optional[builtins.str] = None):
11132
11252
  """
11133
11253
  :param builtins.int threads_per_core: The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
11134
11254
  :param builtins.bool enable_nested_virtualization: Defines whether the instance should have nested virtualization enabled. Defaults to false.
11255
+ :param builtins.str performance_monitoring_unit: Defines the performance monitoring unit [PMU](https://cloud.google.com/compute/docs/pmu-overview) level. Valid values are `ARCHITECTURAL`, `STANDARD`, or `ENHANCED`. Defaults to off.
11135
11256
  """
11136
11257
  pulumi.set(__self__, "threads_per_core", threads_per_core)
11137
11258
  if enable_nested_virtualization is not None:
11138
11259
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
11260
+ if performance_monitoring_unit is not None:
11261
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
11139
11262
 
11140
11263
  @property
11141
11264
  @pulumi.getter(name="threadsPerCore")
@@ -11153,16 +11276,46 @@ class ClusterNodePoolNodeConfigAdvancedMachineFeatures(dict):
11153
11276
  """
11154
11277
  return pulumi.get(self, "enable_nested_virtualization")
11155
11278
 
11279
+ @property
11280
+ @pulumi.getter(name="performanceMonitoringUnit")
11281
+ def performance_monitoring_unit(self) -> Optional[builtins.str]:
11282
+ """
11283
+ Defines the performance monitoring unit [PMU](https://cloud.google.com/compute/docs/pmu-overview) level. Valid values are `ARCHITECTURAL`, `STANDARD`, or `ENHANCED`. Defaults to off.
11284
+ """
11285
+ return pulumi.get(self, "performance_monitoring_unit")
11286
+
11156
11287
 
11157
11288
  @pulumi.output_type
11158
11289
  class ClusterNodePoolNodeConfigConfidentialNodes(dict):
11290
+ @staticmethod
11291
+ def __key_warning(key: str):
11292
+ suggest = None
11293
+ if key == "confidentialInstanceType":
11294
+ suggest = "confidential_instance_type"
11295
+
11296
+ if suggest:
11297
+ pulumi.log.warn(f"Key '{key}' not found in ClusterNodePoolNodeConfigConfidentialNodes. Access the value via the '{suggest}' property getter instead.")
11298
+
11299
+ def __getitem__(self, key: str) -> Any:
11300
+ ClusterNodePoolNodeConfigConfidentialNodes.__key_warning(key)
11301
+ return super().__getitem__(key)
11302
+
11303
+ def get(self, key: str, default = None) -> Any:
11304
+ ClusterNodePoolNodeConfigConfidentialNodes.__key_warning(key)
11305
+ return super().get(key, default)
11306
+
11159
11307
  def __init__(__self__, *,
11160
- enabled: builtins.bool):
11308
+ enabled: builtins.bool,
11309
+ confidential_instance_type: Optional[builtins.str] = None):
11161
11310
  """
11162
11311
  :param builtins.bool enabled: Enable Confidential GKE Nodes for this cluster, to
11163
11312
  enforce encryption of data in-use.
11313
+ :param builtins.str confidential_instance_type: Defines the type of technology used
11314
+ by the confidential node.
11164
11315
  """
11165
11316
  pulumi.set(__self__, "enabled", enabled)
11317
+ if confidential_instance_type is not None:
11318
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
11166
11319
 
11167
11320
  @property
11168
11321
  @pulumi.getter
@@ -11173,6 +11326,15 @@ class ClusterNodePoolNodeConfigConfidentialNodes(dict):
11173
11326
  """
11174
11327
  return pulumi.get(self, "enabled")
11175
11328
 
11329
+ @property
11330
+ @pulumi.getter(name="confidentialInstanceType")
11331
+ def confidential_instance_type(self) -> Optional[builtins.str]:
11332
+ """
11333
+ Defines the type of technology used
11334
+ by the confidential node.
11335
+ """
11336
+ return pulumi.get(self, "confidential_instance_type")
11337
+
11176
11338
 
11177
11339
  @pulumi.output_type
11178
11340
  class ClusterNodePoolNodeConfigContainerdConfig(dict):
@@ -14323,10 +14485,7 @@ class NodePoolNodeConfig(dict):
14323
14485
  :param builtins.str node_group: Setting this field will assign instances of this pool to run on the specified node group. This is useful for running workloads on sole tenant nodes.
14324
14486
  :param Sequence[builtins.str] oauth_scopes: The set of Google API scopes to be made available on all of the node VMs.
14325
14487
  :param builtins.bool preemptible: Whether the nodes are created as preemptible VM instances.
14326
- :param 'NodePoolNodeConfigReservationAffinityArgs' reservation_affinity: The configuration of the desired reservation which instances could take capacity from.
14327
- Structure is documented below.
14328
-
14329
- <a name="nested_autoscaling"></a>The `autoscaling` block supports (either total or per zone limits are required):
14488
+ :param 'NodePoolNodeConfigReservationAffinityArgs' reservation_affinity: The reservation affinity configuration for the node pool.
14330
14489
  :param Mapping[str, builtins.str] resource_labels: The GCE resource labels (a map of key/value pairs) to be applied to the node pool.
14331
14490
  :param Mapping[str, builtins.str] resource_manager_tags: A map of resource manager tags. Resource manager tag keys and values have the same definition as resource manager tags. Keys must be in the format tagKeys/{tag_key_id}, and values are in the format tagValues/456. The field is ignored (both PUT & PATCH) when empty.
14332
14491
  :param 'NodePoolNodeConfigSandboxConfigArgs' sandbox_config: Sandbox configuration for this node.
@@ -14684,10 +14843,7 @@ class NodePoolNodeConfig(dict):
14684
14843
  @pulumi.getter(name="reservationAffinity")
14685
14844
  def reservation_affinity(self) -> Optional['outputs.NodePoolNodeConfigReservationAffinity']:
14686
14845
  """
14687
- The configuration of the desired reservation which instances could take capacity from.
14688
- Structure is documented below.
14689
-
14690
- <a name="nested_autoscaling"></a>The `autoscaling` block supports (either total or per zone limits are required):
14846
+ The reservation affinity configuration for the node pool.
14691
14847
  """
14692
14848
  return pulumi.get(self, "reservation_affinity")
14693
14849
 
@@ -14805,6 +14961,8 @@ class NodePoolNodeConfigAdvancedMachineFeatures(dict):
14805
14961
  suggest = "threads_per_core"
14806
14962
  elif key == "enableNestedVirtualization":
14807
14963
  suggest = "enable_nested_virtualization"
14964
+ elif key == "performanceMonitoringUnit":
14965
+ suggest = "performance_monitoring_unit"
14808
14966
 
14809
14967
  if suggest:
14810
14968
  pulumi.log.warn(f"Key '{key}' not found in NodePoolNodeConfigAdvancedMachineFeatures. Access the value via the '{suggest}' property getter instead.")
@@ -14819,14 +14977,18 @@ class NodePoolNodeConfigAdvancedMachineFeatures(dict):
14819
14977
 
14820
14978
  def __init__(__self__, *,
14821
14979
  threads_per_core: builtins.int,
14822
- enable_nested_virtualization: Optional[builtins.bool] = None):
14980
+ enable_nested_virtualization: Optional[builtins.bool] = None,
14981
+ performance_monitoring_unit: Optional[builtins.str] = None):
14823
14982
  """
14824
14983
  :param builtins.int threads_per_core: The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
14825
14984
  :param builtins.bool enable_nested_virtualization: Whether the node should have nested virtualization enabled.
14985
+ :param builtins.str performance_monitoring_unit: Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
14826
14986
  """
14827
14987
  pulumi.set(__self__, "threads_per_core", threads_per_core)
14828
14988
  if enable_nested_virtualization is not None:
14829
14989
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
14990
+ if performance_monitoring_unit is not None:
14991
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
14830
14992
 
14831
14993
  @property
14832
14994
  @pulumi.getter(name="threadsPerCore")
@@ -14844,15 +15006,44 @@ class NodePoolNodeConfigAdvancedMachineFeatures(dict):
14844
15006
  """
14845
15007
  return pulumi.get(self, "enable_nested_virtualization")
14846
15008
 
15009
+ @property
15010
+ @pulumi.getter(name="performanceMonitoringUnit")
15011
+ def performance_monitoring_unit(self) -> Optional[builtins.str]:
15012
+ """
15013
+ Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
15014
+ """
15015
+ return pulumi.get(self, "performance_monitoring_unit")
15016
+
14847
15017
 
14848
15018
  @pulumi.output_type
14849
15019
  class NodePoolNodeConfigConfidentialNodes(dict):
15020
+ @staticmethod
15021
+ def __key_warning(key: str):
15022
+ suggest = None
15023
+ if key == "confidentialInstanceType":
15024
+ suggest = "confidential_instance_type"
15025
+
15026
+ if suggest:
15027
+ pulumi.log.warn(f"Key '{key}' not found in NodePoolNodeConfigConfidentialNodes. Access the value via the '{suggest}' property getter instead.")
15028
+
15029
+ def __getitem__(self, key: str) -> Any:
15030
+ NodePoolNodeConfigConfidentialNodes.__key_warning(key)
15031
+ return super().__getitem__(key)
15032
+
15033
+ def get(self, key: str, default = None) -> Any:
15034
+ NodePoolNodeConfigConfidentialNodes.__key_warning(key)
15035
+ return super().get(key, default)
15036
+
14850
15037
  def __init__(__self__, *,
14851
- enabled: builtins.bool):
15038
+ enabled: builtins.bool,
15039
+ confidential_instance_type: Optional[builtins.str] = None):
14852
15040
  """
14853
15041
  :param builtins.bool enabled: Whether Confidential Nodes feature is enabled for all nodes in this pool.
15042
+ :param builtins.str confidential_instance_type: Defines the type of technology used by the confidential node.
14854
15043
  """
14855
15044
  pulumi.set(__self__, "enabled", enabled)
15045
+ if confidential_instance_type is not None:
15046
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
14856
15047
 
14857
15048
  @property
14858
15049
  @pulumi.getter
@@ -14862,6 +15053,14 @@ class NodePoolNodeConfigConfidentialNodes(dict):
14862
15053
  """
14863
15054
  return pulumi.get(self, "enabled")
14864
15055
 
15056
+ @property
15057
+ @pulumi.getter(name="confidentialInstanceType")
15058
+ def confidential_instance_type(self) -> Optional[builtins.str]:
15059
+ """
15060
+ Defines the type of technology used by the confidential node.
15061
+ """
15062
+ return pulumi.get(self, "confidential_instance_type")
15063
+
14865
15064
 
14866
15065
  @pulumi.output_type
14867
15066
  class NodePoolNodeConfigContainerdConfig(dict):
@@ -17333,12 +17532,23 @@ class GetClusterClusterTelemetryResult(dict):
17333
17532
  @pulumi.output_type
17334
17533
  class GetClusterConfidentialNodeResult(dict):
17335
17534
  def __init__(__self__, *,
17535
+ confidential_instance_type: builtins.str,
17336
17536
  enabled: builtins.bool):
17337
17537
  """
17538
+ :param builtins.str confidential_instance_type: Defines the type of technology used by the confidential node.
17338
17539
  :param builtins.bool enabled: Whether Confidential Nodes feature is enabled for all nodes in this cluster.
17339
17540
  """
17541
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
17340
17542
  pulumi.set(__self__, "enabled", enabled)
17341
17543
 
17544
+ @property
17545
+ @pulumi.getter(name="confidentialInstanceType")
17546
+ def confidential_instance_type(self) -> builtins.str:
17547
+ """
17548
+ Defines the type of technology used by the confidential node.
17549
+ """
17550
+ return pulumi.get(self, "confidential_instance_type")
17551
+
17342
17552
  @property
17343
17553
  @pulumi.getter
17344
17554
  def enabled(self) -> builtins.bool:
@@ -17669,6 +17879,26 @@ class GetClusterGatewayApiConfigResult(dict):
17669
17879
  return pulumi.get(self, "channel")
17670
17880
 
17671
17881
 
17882
+ @pulumi.output_type
17883
+ class GetClusterGkeAutoUpgradeConfigResult(dict):
17884
+ def __init__(__self__, *,
17885
+ patch_mode: builtins.str):
17886
+ """
17887
+ :param builtins.str patch_mode: The selected auto-upgrade patch type. Accepted values are:
17888
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
17889
+ """
17890
+ pulumi.set(__self__, "patch_mode", patch_mode)
17891
+
17892
+ @property
17893
+ @pulumi.getter(name="patchMode")
17894
+ def patch_mode(self) -> builtins.str:
17895
+ """
17896
+ The selected auto-upgrade patch type. Accepted values are:
17897
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
17898
+ """
17899
+ return pulumi.get(self, "patch_mode")
17900
+
17901
+
17672
17902
  @pulumi.output_type
17673
17903
  class GetClusterIdentityServiceConfigResult(dict):
17674
17904
  def __init__(__self__, *,
@@ -18786,12 +19016,15 @@ class GetClusterNodeConfigResult(dict):
18786
19016
  class GetClusterNodeConfigAdvancedMachineFeatureResult(dict):
18787
19017
  def __init__(__self__, *,
18788
19018
  enable_nested_virtualization: builtins.bool,
19019
+ performance_monitoring_unit: builtins.str,
18789
19020
  threads_per_core: builtins.int):
18790
19021
  """
18791
19022
  :param builtins.bool enable_nested_virtualization: Whether the node should have nested virtualization enabled.
19023
+ :param builtins.str performance_monitoring_unit: Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
18792
19024
  :param builtins.int threads_per_core: The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
18793
19025
  """
18794
19026
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
19027
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
18795
19028
  pulumi.set(__self__, "threads_per_core", threads_per_core)
18796
19029
 
18797
19030
  @property
@@ -18802,6 +19035,14 @@ class GetClusterNodeConfigAdvancedMachineFeatureResult(dict):
18802
19035
  """
18803
19036
  return pulumi.get(self, "enable_nested_virtualization")
18804
19037
 
19038
+ @property
19039
+ @pulumi.getter(name="performanceMonitoringUnit")
19040
+ def performance_monitoring_unit(self) -> builtins.str:
19041
+ """
19042
+ Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
19043
+ """
19044
+ return pulumi.get(self, "performance_monitoring_unit")
19045
+
18805
19046
  @property
18806
19047
  @pulumi.getter(name="threadsPerCore")
18807
19048
  def threads_per_core(self) -> builtins.int:
@@ -18814,12 +19055,23 @@ class GetClusterNodeConfigAdvancedMachineFeatureResult(dict):
18814
19055
  @pulumi.output_type
18815
19056
  class GetClusterNodeConfigConfidentialNodeResult(dict):
18816
19057
  def __init__(__self__, *,
19058
+ confidential_instance_type: builtins.str,
18817
19059
  enabled: builtins.bool):
18818
19060
  """
19061
+ :param builtins.str confidential_instance_type: Defines the type of technology used by the confidential node.
18819
19062
  :param builtins.bool enabled: Whether Confidential Nodes feature is enabled for all nodes in this pool.
18820
19063
  """
19064
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
18821
19065
  pulumi.set(__self__, "enabled", enabled)
18822
19066
 
19067
+ @property
19068
+ @pulumi.getter(name="confidentialInstanceType")
19069
+ def confidential_instance_type(self) -> builtins.str:
19070
+ """
19071
+ Defines the type of technology used by the confidential node.
19072
+ """
19073
+ return pulumi.get(self, "confidential_instance_type")
19074
+
18823
19075
  @property
18824
19076
  @pulumi.getter
18825
19077
  def enabled(self) -> builtins.bool:
@@ -20923,12 +21175,15 @@ class GetClusterNodePoolNodeConfigResult(dict):
20923
21175
  class GetClusterNodePoolNodeConfigAdvancedMachineFeatureResult(dict):
20924
21176
  def __init__(__self__, *,
20925
21177
  enable_nested_virtualization: builtins.bool,
21178
+ performance_monitoring_unit: builtins.str,
20926
21179
  threads_per_core: builtins.int):
20927
21180
  """
20928
21181
  :param builtins.bool enable_nested_virtualization: Whether the node should have nested virtualization enabled.
21182
+ :param builtins.str performance_monitoring_unit: Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
20929
21183
  :param builtins.int threads_per_core: The number of threads per physical core. To disable simultaneous multithreading (SMT) set this to 1. If unset, the maximum number of threads supported per core by the underlying processor is assumed.
20930
21184
  """
20931
21185
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
21186
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
20932
21187
  pulumi.set(__self__, "threads_per_core", threads_per_core)
20933
21188
 
20934
21189
  @property
@@ -20939,6 +21194,14 @@ class GetClusterNodePoolNodeConfigAdvancedMachineFeatureResult(dict):
20939
21194
  """
20940
21195
  return pulumi.get(self, "enable_nested_virtualization")
20941
21196
 
21197
+ @property
21198
+ @pulumi.getter(name="performanceMonitoringUnit")
21199
+ def performance_monitoring_unit(self) -> builtins.str:
21200
+ """
21201
+ Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
21202
+ """
21203
+ return pulumi.get(self, "performance_monitoring_unit")
21204
+
20942
21205
  @property
20943
21206
  @pulumi.getter(name="threadsPerCore")
20944
21207
  def threads_per_core(self) -> builtins.int:
@@ -20951,12 +21214,23 @@ class GetClusterNodePoolNodeConfigAdvancedMachineFeatureResult(dict):
20951
21214
  @pulumi.output_type
20952
21215
  class GetClusterNodePoolNodeConfigConfidentialNodeResult(dict):
20953
21216
  def __init__(__self__, *,
21217
+ confidential_instance_type: builtins.str,
20954
21218
  enabled: builtins.bool):
20955
21219
  """
21220
+ :param builtins.str confidential_instance_type: Defines the type of technology used by the confidential node.
20956
21221
  :param builtins.bool enabled: Whether Confidential Nodes feature is enabled for all nodes in this pool.
20957
21222
  """
21223
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
20958
21224
  pulumi.set(__self__, "enabled", enabled)
20959
21225
 
21226
+ @property
21227
+ @pulumi.getter(name="confidentialInstanceType")
21228
+ def confidential_instance_type(self) -> builtins.str:
21229
+ """
21230
+ Defines the type of technology used by the confidential node.
21231
+ """
21232
+ return pulumi.get(self, "confidential_instance_type")
21233
+
20960
21234
  @property
20961
21235
  @pulumi.getter
20962
21236
  def enabled(self) -> builtins.bool: