pulumi-gcp 8.36.0a1750484065__py3-none-any.whl → 8.37.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 (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.0.dist-info}/METADATA +2 -2
  115. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0.dist-info}/RECORD +117 -109
  116. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0.dist-info}/WHEEL +0 -0
  117. {pulumi_gcp-8.36.0a1750484065.dist-info → pulumi_gcp-8.37.0.dist-info}/top_level.txt +0 -0
@@ -238,6 +238,8 @@ __all__ = [
238
238
  'ClusterFleetArgsDict',
239
239
  'ClusterGatewayApiConfigArgs',
240
240
  'ClusterGatewayApiConfigArgsDict',
241
+ 'ClusterGkeAutoUpgradeConfigArgs',
242
+ 'ClusterGkeAutoUpgradeConfigArgsDict',
241
243
  'ClusterIdentityServiceConfigArgs',
242
244
  'ClusterIdentityServiceConfigArgsDict',
243
245
  'ClusterIpAllocationPolicyArgs',
@@ -6528,18 +6530,28 @@ if not MYPY:
6528
6530
  Enable Confidential GKE Nodes for this cluster, to
6529
6531
  enforce encryption of data in-use.
6530
6532
  """
6533
+ confidential_instance_type: NotRequired[pulumi.Input[builtins.str]]
6534
+ """
6535
+ Defines the type of technology used
6536
+ by the confidential node.
6537
+ """
6531
6538
  elif False:
6532
6539
  ClusterConfidentialNodesArgsDict: TypeAlias = Mapping[str, Any]
6533
6540
 
6534
6541
  @pulumi.input_type
6535
6542
  class ClusterConfidentialNodesArgs:
6536
6543
  def __init__(__self__, *,
6537
- enabled: pulumi.Input[builtins.bool]):
6544
+ enabled: pulumi.Input[builtins.bool],
6545
+ confidential_instance_type: Optional[pulumi.Input[builtins.str]] = None):
6538
6546
  """
6539
6547
  :param pulumi.Input[builtins.bool] enabled: Enable Confidential GKE Nodes for this cluster, to
6540
6548
  enforce encryption of data in-use.
6549
+ :param pulumi.Input[builtins.str] confidential_instance_type: Defines the type of technology used
6550
+ by the confidential node.
6541
6551
  """
6542
6552
  pulumi.set(__self__, "enabled", enabled)
6553
+ if confidential_instance_type is not None:
6554
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
6543
6555
 
6544
6556
  @property
6545
6557
  @pulumi.getter
@@ -6554,6 +6566,19 @@ class ClusterConfidentialNodesArgs:
6554
6566
  def enabled(self, value: pulumi.Input[builtins.bool]):
6555
6567
  pulumi.set(self, "enabled", value)
6556
6568
 
6569
+ @property
6570
+ @pulumi.getter(name="confidentialInstanceType")
6571
+ def confidential_instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
6572
+ """
6573
+ Defines the type of technology used
6574
+ by the confidential node.
6575
+ """
6576
+ return pulumi.get(self, "confidential_instance_type")
6577
+
6578
+ @confidential_instance_type.setter
6579
+ def confidential_instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
6580
+ pulumi.set(self, "confidential_instance_type", value)
6581
+
6557
6582
 
6558
6583
  if not MYPY:
6559
6584
  class ClusterControlPlaneEndpointsConfigArgsDict(TypedDict):
@@ -7134,6 +7159,43 @@ class ClusterGatewayApiConfigArgs:
7134
7159
  pulumi.set(self, "channel", value)
7135
7160
 
7136
7161
 
7162
+ if not MYPY:
7163
+ class ClusterGkeAutoUpgradeConfigArgsDict(TypedDict):
7164
+ patch_mode: pulumi.Input[builtins.str]
7165
+ """
7166
+ The selected patch mode.
7167
+ Accepted values are:
7168
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
7169
+ """
7170
+ elif False:
7171
+ ClusterGkeAutoUpgradeConfigArgsDict: TypeAlias = Mapping[str, Any]
7172
+
7173
+ @pulumi.input_type
7174
+ class ClusterGkeAutoUpgradeConfigArgs:
7175
+ def __init__(__self__, *,
7176
+ patch_mode: pulumi.Input[builtins.str]):
7177
+ """
7178
+ :param pulumi.Input[builtins.str] patch_mode: The selected patch mode.
7179
+ Accepted values are:
7180
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
7181
+ """
7182
+ pulumi.set(__self__, "patch_mode", patch_mode)
7183
+
7184
+ @property
7185
+ @pulumi.getter(name="patchMode")
7186
+ def patch_mode(self) -> pulumi.Input[builtins.str]:
7187
+ """
7188
+ The selected patch mode.
7189
+ Accepted values are:
7190
+ * ACCELERATED: Upgrades to the latest available patch version in a given minor and release channel.
7191
+ """
7192
+ return pulumi.get(self, "patch_mode")
7193
+
7194
+ @patch_mode.setter
7195
+ def patch_mode(self, value: pulumi.Input[builtins.str]):
7196
+ pulumi.set(self, "patch_mode", value)
7197
+
7198
+
7137
7199
  if not MYPY:
7138
7200
  class ClusterIdentityServiceConfigArgsDict(TypedDict):
7139
7201
  enabled: NotRequired[pulumi.Input[builtins.bool]]
@@ -9612,6 +9674,10 @@ if not MYPY:
9612
9674
  """
9613
9675
  Defines whether the instance should have nested virtualization enabled. Defaults to false.
9614
9676
  """
9677
+ performance_monitoring_unit: NotRequired[pulumi.Input[builtins.str]]
9678
+ """
9679
+ 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.
9680
+ """
9615
9681
  elif False:
9616
9682
  ClusterNodeConfigAdvancedMachineFeaturesArgsDict: TypeAlias = Mapping[str, Any]
9617
9683
 
@@ -9619,14 +9685,18 @@ elif False:
9619
9685
  class ClusterNodeConfigAdvancedMachineFeaturesArgs:
9620
9686
  def __init__(__self__, *,
9621
9687
  threads_per_core: pulumi.Input[builtins.int],
9622
- enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None):
9688
+ enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None,
9689
+ performance_monitoring_unit: Optional[pulumi.Input[builtins.str]] = None):
9623
9690
  """
9624
9691
  :param pulumi.Input[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.
9625
9692
  :param pulumi.Input[builtins.bool] enable_nested_virtualization: Defines whether the instance should have nested virtualization enabled. Defaults to false.
9693
+ :param pulumi.Input[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.
9626
9694
  """
9627
9695
  pulumi.set(__self__, "threads_per_core", threads_per_core)
9628
9696
  if enable_nested_virtualization is not None:
9629
9697
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
9698
+ if performance_monitoring_unit is not None:
9699
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
9630
9700
 
9631
9701
  @property
9632
9702
  @pulumi.getter(name="threadsPerCore")
@@ -9652,6 +9722,18 @@ class ClusterNodeConfigAdvancedMachineFeaturesArgs:
9652
9722
  def enable_nested_virtualization(self, value: Optional[pulumi.Input[builtins.bool]]):
9653
9723
  pulumi.set(self, "enable_nested_virtualization", value)
9654
9724
 
9725
+ @property
9726
+ @pulumi.getter(name="performanceMonitoringUnit")
9727
+ def performance_monitoring_unit(self) -> Optional[pulumi.Input[builtins.str]]:
9728
+ """
9729
+ 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.
9730
+ """
9731
+ return pulumi.get(self, "performance_monitoring_unit")
9732
+
9733
+ @performance_monitoring_unit.setter
9734
+ def performance_monitoring_unit(self, value: Optional[pulumi.Input[builtins.str]]):
9735
+ pulumi.set(self, "performance_monitoring_unit", value)
9736
+
9655
9737
 
9656
9738
  if not MYPY:
9657
9739
  class ClusterNodeConfigConfidentialNodesArgsDict(TypedDict):
@@ -9660,18 +9742,28 @@ if not MYPY:
9660
9742
  Enable Confidential GKE Nodes for this cluster, to
9661
9743
  enforce encryption of data in-use.
9662
9744
  """
9745
+ confidential_instance_type: NotRequired[pulumi.Input[builtins.str]]
9746
+ """
9747
+ Defines the type of technology used
9748
+ by the confidential node.
9749
+ """
9663
9750
  elif False:
9664
9751
  ClusterNodeConfigConfidentialNodesArgsDict: TypeAlias = Mapping[str, Any]
9665
9752
 
9666
9753
  @pulumi.input_type
9667
9754
  class ClusterNodeConfigConfidentialNodesArgs:
9668
9755
  def __init__(__self__, *,
9669
- enabled: pulumi.Input[builtins.bool]):
9756
+ enabled: pulumi.Input[builtins.bool],
9757
+ confidential_instance_type: Optional[pulumi.Input[builtins.str]] = None):
9670
9758
  """
9671
9759
  :param pulumi.Input[builtins.bool] enabled: Enable Confidential GKE Nodes for this cluster, to
9672
9760
  enforce encryption of data in-use.
9761
+ :param pulumi.Input[builtins.str] confidential_instance_type: Defines the type of technology used
9762
+ by the confidential node.
9673
9763
  """
9674
9764
  pulumi.set(__self__, "enabled", enabled)
9765
+ if confidential_instance_type is not None:
9766
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
9675
9767
 
9676
9768
  @property
9677
9769
  @pulumi.getter
@@ -9686,6 +9778,19 @@ class ClusterNodeConfigConfidentialNodesArgs:
9686
9778
  def enabled(self, value: pulumi.Input[builtins.bool]):
9687
9779
  pulumi.set(self, "enabled", value)
9688
9780
 
9781
+ @property
9782
+ @pulumi.getter(name="confidentialInstanceType")
9783
+ def confidential_instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
9784
+ """
9785
+ Defines the type of technology used
9786
+ by the confidential node.
9787
+ """
9788
+ return pulumi.get(self, "confidential_instance_type")
9789
+
9790
+ @confidential_instance_type.setter
9791
+ def confidential_instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
9792
+ pulumi.set(self, "confidential_instance_type", value)
9793
+
9689
9794
 
9690
9795
  if not MYPY:
9691
9796
  class ClusterNodeConfigContainerdConfigArgsDict(TypedDict):
@@ -12397,7 +12502,7 @@ if not MYPY:
12397
12502
  """
12398
12503
  create_pod_range: NotRequired[pulumi.Input[builtins.bool]]
12399
12504
  """
12400
- 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.
12505
+ 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.
12401
12506
  """
12402
12507
  enable_private_nodes: NotRequired[pulumi.Input[builtins.bool]]
12403
12508
  """
@@ -12413,11 +12518,11 @@ if not MYPY:
12413
12518
  """
12414
12519
  pod_ipv4_cidr_block: NotRequired[pulumi.Input[builtins.str]]
12415
12520
  """
12416
- 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.
12521
+ 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.
12417
12522
  """
12418
12523
  pod_range: NotRequired[pulumi.Input[builtins.str]]
12419
12524
  """
12420
- 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.
12525
+ 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.
12421
12526
  """
12422
12527
  elif False:
12423
12528
  ClusterNodePoolNetworkConfigArgsDict: TypeAlias = Mapping[str, Any]
@@ -12436,12 +12541,12 @@ class ClusterNodePoolNetworkConfigArgs:
12436
12541
  """
12437
12542
  :param pulumi.Input[Sequence[pulumi.Input['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
12438
12543
  :param pulumi.Input[Sequence[pulumi.Input['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
12439
- :param pulumi.Input[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.
12544
+ :param pulumi.Input[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.
12440
12545
  :param pulumi.Input[builtins.bool] enable_private_nodes: Whether nodes have internal IP addresses only.
12441
12546
  :param pulumi.Input['ClusterNodePoolNetworkConfigNetworkPerformanceConfigArgs'] network_performance_config: Network bandwidth tier configuration.
12442
12547
  :param pulumi.Input['ClusterNodePoolNetworkConfigPodCidrOverprovisionConfigArgs'] pod_cidr_overprovision_config: Configuration for node-pool level pod cidr overprovision. If not set, the cluster level setting will be inherited
12443
- :param pulumi.Input[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.
12444
- :param pulumi.Input[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.
12548
+ :param pulumi.Input[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.
12549
+ :param pulumi.Input[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.
12445
12550
  """
12446
12551
  if additional_node_network_configs is not None:
12447
12552
  pulumi.set(__self__, "additional_node_network_configs", additional_node_network_configs)
@@ -12488,7 +12593,7 @@ class ClusterNodePoolNetworkConfigArgs:
12488
12593
  @pulumi.getter(name="createPodRange")
12489
12594
  def create_pod_range(self) -> Optional[pulumi.Input[builtins.bool]]:
12490
12595
  """
12491
- 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.
12596
+ 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.
12492
12597
  """
12493
12598
  return pulumi.get(self, "create_pod_range")
12494
12599
 
@@ -12536,7 +12641,7 @@ class ClusterNodePoolNetworkConfigArgs:
12536
12641
  @pulumi.getter(name="podIpv4CidrBlock")
12537
12642
  def pod_ipv4_cidr_block(self) -> Optional[pulumi.Input[builtins.str]]:
12538
12643
  """
12539
- 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.
12644
+ 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.
12540
12645
  """
12541
12646
  return pulumi.get(self, "pod_ipv4_cidr_block")
12542
12647
 
@@ -12548,7 +12653,7 @@ class ClusterNodePoolNetworkConfigArgs:
12548
12653
  @pulumi.getter(name="podRange")
12549
12654
  def pod_range(self) -> Optional[pulumi.Input[builtins.str]]:
12550
12655
  """
12551
- 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.
12656
+ 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.
12552
12657
  """
12553
12658
  return pulumi.get(self, "pod_range")
12554
12659
 
@@ -13866,6 +13971,10 @@ if not MYPY:
13866
13971
  """
13867
13972
  Defines whether the instance should have nested virtualization enabled. Defaults to false.
13868
13973
  """
13974
+ performance_monitoring_unit: NotRequired[pulumi.Input[builtins.str]]
13975
+ """
13976
+ 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.
13977
+ """
13869
13978
  elif False:
13870
13979
  ClusterNodePoolNodeConfigAdvancedMachineFeaturesArgsDict: TypeAlias = Mapping[str, Any]
13871
13980
 
@@ -13873,14 +13982,18 @@ elif False:
13873
13982
  class ClusterNodePoolNodeConfigAdvancedMachineFeaturesArgs:
13874
13983
  def __init__(__self__, *,
13875
13984
  threads_per_core: pulumi.Input[builtins.int],
13876
- enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None):
13985
+ enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None,
13986
+ performance_monitoring_unit: Optional[pulumi.Input[builtins.str]] = None):
13877
13987
  """
13878
13988
  :param pulumi.Input[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.
13879
13989
  :param pulumi.Input[builtins.bool] enable_nested_virtualization: Defines whether the instance should have nested virtualization enabled. Defaults to false.
13990
+ :param pulumi.Input[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.
13880
13991
  """
13881
13992
  pulumi.set(__self__, "threads_per_core", threads_per_core)
13882
13993
  if enable_nested_virtualization is not None:
13883
13994
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
13995
+ if performance_monitoring_unit is not None:
13996
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
13884
13997
 
13885
13998
  @property
13886
13999
  @pulumi.getter(name="threadsPerCore")
@@ -13906,6 +14019,18 @@ class ClusterNodePoolNodeConfigAdvancedMachineFeaturesArgs:
13906
14019
  def enable_nested_virtualization(self, value: Optional[pulumi.Input[builtins.bool]]):
13907
14020
  pulumi.set(self, "enable_nested_virtualization", value)
13908
14021
 
14022
+ @property
14023
+ @pulumi.getter(name="performanceMonitoringUnit")
14024
+ def performance_monitoring_unit(self) -> Optional[pulumi.Input[builtins.str]]:
14025
+ """
14026
+ 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.
14027
+ """
14028
+ return pulumi.get(self, "performance_monitoring_unit")
14029
+
14030
+ @performance_monitoring_unit.setter
14031
+ def performance_monitoring_unit(self, value: Optional[pulumi.Input[builtins.str]]):
14032
+ pulumi.set(self, "performance_monitoring_unit", value)
14033
+
13909
14034
 
13910
14035
  if not MYPY:
13911
14036
  class ClusterNodePoolNodeConfigConfidentialNodesArgsDict(TypedDict):
@@ -13914,18 +14039,28 @@ if not MYPY:
13914
14039
  Enable Confidential GKE Nodes for this cluster, to
13915
14040
  enforce encryption of data in-use.
13916
14041
  """
14042
+ confidential_instance_type: NotRequired[pulumi.Input[builtins.str]]
14043
+ """
14044
+ Defines the type of technology used
14045
+ by the confidential node.
14046
+ """
13917
14047
  elif False:
13918
14048
  ClusterNodePoolNodeConfigConfidentialNodesArgsDict: TypeAlias = Mapping[str, Any]
13919
14049
 
13920
14050
  @pulumi.input_type
13921
14051
  class ClusterNodePoolNodeConfigConfidentialNodesArgs:
13922
14052
  def __init__(__self__, *,
13923
- enabled: pulumi.Input[builtins.bool]):
14053
+ enabled: pulumi.Input[builtins.bool],
14054
+ confidential_instance_type: Optional[pulumi.Input[builtins.str]] = None):
13924
14055
  """
13925
14056
  :param pulumi.Input[builtins.bool] enabled: Enable Confidential GKE Nodes for this cluster, to
13926
14057
  enforce encryption of data in-use.
14058
+ :param pulumi.Input[builtins.str] confidential_instance_type: Defines the type of technology used
14059
+ by the confidential node.
13927
14060
  """
13928
14061
  pulumi.set(__self__, "enabled", enabled)
14062
+ if confidential_instance_type is not None:
14063
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
13929
14064
 
13930
14065
  @property
13931
14066
  @pulumi.getter
@@ -13940,6 +14075,19 @@ class ClusterNodePoolNodeConfigConfidentialNodesArgs:
13940
14075
  def enabled(self, value: pulumi.Input[builtins.bool]):
13941
14076
  pulumi.set(self, "enabled", value)
13942
14077
 
14078
+ @property
14079
+ @pulumi.getter(name="confidentialInstanceType")
14080
+ def confidential_instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
14081
+ """
14082
+ Defines the type of technology used
14083
+ by the confidential node.
14084
+ """
14085
+ return pulumi.get(self, "confidential_instance_type")
14086
+
14087
+ @confidential_instance_type.setter
14088
+ def confidential_instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
14089
+ pulumi.set(self, "confidential_instance_type", value)
14090
+
13943
14091
 
13944
14092
  if not MYPY:
13945
14093
  class ClusterNodePoolNodeConfigContainerdConfigArgsDict(TypedDict):
@@ -17735,10 +17883,7 @@ if not MYPY:
17735
17883
  """
17736
17884
  reservation_affinity: NotRequired[pulumi.Input['NodePoolNodeConfigReservationAffinityArgsDict']]
17737
17885
  """
17738
- The configuration of the desired reservation which instances could take capacity from.
17739
- Structure is documented below.
17740
-
17741
- <a name="nested_autoscaling"></a>The `autoscaling` block supports (either total or per zone limits are required):
17886
+ The reservation affinity configuration for the node pool.
17742
17887
  """
17743
17888
  resource_labels: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]
17744
17889
  """
@@ -17875,10 +18020,7 @@ class NodePoolNodeConfigArgs:
17875
18020
  :param pulumi.Input[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.
17876
18021
  :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] oauth_scopes: The set of Google API scopes to be made available on all of the node VMs.
17877
18022
  :param pulumi.Input[builtins.bool] preemptible: Whether the nodes are created as preemptible VM instances.
17878
- :param pulumi.Input['NodePoolNodeConfigReservationAffinityArgs'] reservation_affinity: The configuration of the desired reservation which instances could take capacity from.
17879
- Structure is documented below.
17880
-
17881
- <a name="nested_autoscaling"></a>The `autoscaling` block supports (either total or per zone limits are required):
18023
+ :param pulumi.Input['NodePoolNodeConfigReservationAffinityArgs'] reservation_affinity: The reservation affinity configuration for the node pool.
17882
18024
  :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] resource_labels: The GCE resource labels (a map of key/value pairs) to be applied to the node pool.
17883
18025
  :param pulumi.Input[Mapping[str, pulumi.Input[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.
17884
18026
  :param pulumi.Input['NodePoolNodeConfigSandboxConfigArgs'] sandbox_config: Sandbox configuration for this node.
@@ -18360,10 +18502,7 @@ class NodePoolNodeConfigArgs:
18360
18502
  @pulumi.getter(name="reservationAffinity")
18361
18503
  def reservation_affinity(self) -> Optional[pulumi.Input['NodePoolNodeConfigReservationAffinityArgs']]:
18362
18504
  """
18363
- The configuration of the desired reservation which instances could take capacity from.
18364
- Structure is documented below.
18365
-
18366
- <a name="nested_autoscaling"></a>The `autoscaling` block supports (either total or per zone limits are required):
18505
+ The reservation affinity configuration for the node pool.
18367
18506
  """
18368
18507
  return pulumi.get(self, "reservation_affinity")
18369
18508
 
@@ -18538,6 +18677,10 @@ if not MYPY:
18538
18677
  """
18539
18678
  Whether the node should have nested virtualization enabled.
18540
18679
  """
18680
+ performance_monitoring_unit: NotRequired[pulumi.Input[builtins.str]]
18681
+ """
18682
+ Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
18683
+ """
18541
18684
  elif False:
18542
18685
  NodePoolNodeConfigAdvancedMachineFeaturesArgsDict: TypeAlias = Mapping[str, Any]
18543
18686
 
@@ -18545,14 +18688,18 @@ elif False:
18545
18688
  class NodePoolNodeConfigAdvancedMachineFeaturesArgs:
18546
18689
  def __init__(__self__, *,
18547
18690
  threads_per_core: pulumi.Input[builtins.int],
18548
- enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None):
18691
+ enable_nested_virtualization: Optional[pulumi.Input[builtins.bool]] = None,
18692
+ performance_monitoring_unit: Optional[pulumi.Input[builtins.str]] = None):
18549
18693
  """
18550
18694
  :param pulumi.Input[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.
18551
18695
  :param pulumi.Input[builtins.bool] enable_nested_virtualization: Whether the node should have nested virtualization enabled.
18696
+ :param pulumi.Input[builtins.str] performance_monitoring_unit: Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
18552
18697
  """
18553
18698
  pulumi.set(__self__, "threads_per_core", threads_per_core)
18554
18699
  if enable_nested_virtualization is not None:
18555
18700
  pulumi.set(__self__, "enable_nested_virtualization", enable_nested_virtualization)
18701
+ if performance_monitoring_unit is not None:
18702
+ pulumi.set(__self__, "performance_monitoring_unit", performance_monitoring_unit)
18556
18703
 
18557
18704
  @property
18558
18705
  @pulumi.getter(name="threadsPerCore")
@@ -18578,6 +18725,18 @@ class NodePoolNodeConfigAdvancedMachineFeaturesArgs:
18578
18725
  def enable_nested_virtualization(self, value: Optional[pulumi.Input[builtins.bool]]):
18579
18726
  pulumi.set(self, "enable_nested_virtualization", value)
18580
18727
 
18728
+ @property
18729
+ @pulumi.getter(name="performanceMonitoringUnit")
18730
+ def performance_monitoring_unit(self) -> Optional[pulumi.Input[builtins.str]]:
18731
+ """
18732
+ Level of Performance Monitoring Unit (PMU) requested. If unset, no access to the PMU is assumed.
18733
+ """
18734
+ return pulumi.get(self, "performance_monitoring_unit")
18735
+
18736
+ @performance_monitoring_unit.setter
18737
+ def performance_monitoring_unit(self, value: Optional[pulumi.Input[builtins.str]]):
18738
+ pulumi.set(self, "performance_monitoring_unit", value)
18739
+
18581
18740
 
18582
18741
  if not MYPY:
18583
18742
  class NodePoolNodeConfigConfidentialNodesArgsDict(TypedDict):
@@ -18585,17 +18744,25 @@ if not MYPY:
18585
18744
  """
18586
18745
  Whether Confidential Nodes feature is enabled for all nodes in this pool.
18587
18746
  """
18747
+ confidential_instance_type: NotRequired[pulumi.Input[builtins.str]]
18748
+ """
18749
+ Defines the type of technology used by the confidential node.
18750
+ """
18588
18751
  elif False:
18589
18752
  NodePoolNodeConfigConfidentialNodesArgsDict: TypeAlias = Mapping[str, Any]
18590
18753
 
18591
18754
  @pulumi.input_type
18592
18755
  class NodePoolNodeConfigConfidentialNodesArgs:
18593
18756
  def __init__(__self__, *,
18594
- enabled: pulumi.Input[builtins.bool]):
18757
+ enabled: pulumi.Input[builtins.bool],
18758
+ confidential_instance_type: Optional[pulumi.Input[builtins.str]] = None):
18595
18759
  """
18596
18760
  :param pulumi.Input[builtins.bool] enabled: Whether Confidential Nodes feature is enabled for all nodes in this pool.
18761
+ :param pulumi.Input[builtins.str] confidential_instance_type: Defines the type of technology used by the confidential node.
18597
18762
  """
18598
18763
  pulumi.set(__self__, "enabled", enabled)
18764
+ if confidential_instance_type is not None:
18765
+ pulumi.set(__self__, "confidential_instance_type", confidential_instance_type)
18599
18766
 
18600
18767
  @property
18601
18768
  @pulumi.getter
@@ -18609,6 +18776,18 @@ class NodePoolNodeConfigConfidentialNodesArgs:
18609
18776
  def enabled(self, value: pulumi.Input[builtins.bool]):
18610
18777
  pulumi.set(self, "enabled", value)
18611
18778
 
18779
+ @property
18780
+ @pulumi.getter(name="confidentialInstanceType")
18781
+ def confidential_instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
18782
+ """
18783
+ Defines the type of technology used by the confidential node.
18784
+ """
18785
+ return pulumi.get(self, "confidential_instance_type")
18786
+
18787
+ @confidential_instance_type.setter
18788
+ def confidential_instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
18789
+ pulumi.set(self, "confidential_instance_type", value)
18790
+
18612
18791
 
18613
18792
  if not MYPY:
18614
18793
  class NodePoolNodeConfigContainerdConfigArgsDict(TypedDict):