pulumi-gcp 8.10.2a1733856242__py3-none-any.whl → 8.11.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 (142) hide show
  1. pulumi_gcp/__init__.py +91 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +29 -0
  3. pulumi_gcp/accesscontextmanager/outputs.py +18 -0
  4. pulumi_gcp/accesscontextmanager/service_perimeter.py +36 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +6 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +6 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +6 -0
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +6 -0
  9. pulumi_gcp/apigee/app_group.py +7 -7
  10. pulumi_gcp/applicationintegration/client.py +8 -6
  11. pulumi_gcp/artifactregistry/_inputs.py +24 -15
  12. pulumi_gcp/artifactregistry/outputs.py +32 -20
  13. pulumi_gcp/artifactregistry/repository.py +128 -0
  14. pulumi_gcp/assuredworkloads/workload.py +7 -7
  15. pulumi_gcp/backupdisasterrecovery/__init__.py +2 -0
  16. pulumi_gcp/backupdisasterrecovery/backup_plan.py +2 -2
  17. pulumi_gcp/backupdisasterrecovery/backup_vault.py +12 -8
  18. pulumi_gcp/backupdisasterrecovery/get_backup.py +153 -0
  19. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +415 -0
  20. pulumi_gcp/backupdisasterrecovery/outputs.py +63 -0
  21. pulumi_gcp/bigquery/app_profile.py +75 -0
  22. pulumi_gcp/billing/_inputs.py +6 -6
  23. pulumi_gcp/billing/outputs.py +4 -4
  24. pulumi_gcp/certificateauthority/_inputs.py +9 -9
  25. pulumi_gcp/certificateauthority/outputs.py +8 -8
  26. pulumi_gcp/cloudbuild/_inputs.py +53 -0
  27. pulumi_gcp/cloudbuild/outputs.py +50 -0
  28. pulumi_gcp/cloudbuild/worker_pool.py +47 -0
  29. pulumi_gcp/clouddeploy/_inputs.py +254 -0
  30. pulumi_gcp/clouddeploy/outputs.py +211 -0
  31. pulumi_gcp/clouddeploy/target.py +47 -0
  32. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -6
  33. pulumi_gcp/cloudfunctionsv2/outputs.py +8 -8
  34. pulumi_gcp/cloudrunv2/job.py +4 -4
  35. pulumi_gcp/cloudrunv2/service.py +4 -4
  36. pulumi_gcp/composer/get_user_workloads_config_map.py +4 -0
  37. pulumi_gcp/composer/get_user_workloads_secret.py +4 -0
  38. pulumi_gcp/composer/user_workloads_config_map.py +14 -0
  39. pulumi_gcp/composer/user_workloads_secret.py +6 -0
  40. pulumi_gcp/compute/_inputs.py +566 -25
  41. pulumi_gcp/compute/disk.py +21 -7
  42. pulumi_gcp/compute/firewall_policy_rule.py +12 -0
  43. pulumi_gcp/compute/get_forwarding_rules.py +2 -2
  44. pulumi_gcp/compute/get_global_forwarding_rule.py +12 -1
  45. pulumi_gcp/compute/get_instance_group_manager.py +12 -1
  46. pulumi_gcp/compute/get_network.py +35 -1
  47. pulumi_gcp/compute/get_region_instance_group_manager.py +12 -1
  48. pulumi_gcp/compute/get_region_network_endpoint_group.py +12 -1
  49. pulumi_gcp/compute/global_forwarding_rule.py +28 -0
  50. pulumi_gcp/compute/instance_group_manager.py +28 -0
  51. pulumi_gcp/compute/network.py +75 -0
  52. pulumi_gcp/compute/outputs.py +655 -26
  53. pulumi_gcp/compute/region_health_check.py +28 -0
  54. pulumi_gcp/compute/region_instance_group_manager.py +28 -0
  55. pulumi_gcp/compute/region_network_endpoint.py +28 -0
  56. pulumi_gcp/compute/region_network_endpoint_group.py +70 -2
  57. pulumi_gcp/compute/subnetwork.py +30 -2
  58. pulumi_gcp/compute/url_map.py +7 -7
  59. pulumi_gcp/config/__init__.pyi +4 -0
  60. pulumi_gcp/config/vars.py +8 -0
  61. pulumi_gcp/container/_inputs.py +201 -3
  62. pulumi_gcp/container/cluster.py +68 -14
  63. pulumi_gcp/container/get_cluster.py +12 -1
  64. pulumi_gcp/container/outputs.py +249 -3
  65. pulumi_gcp/dataproc/_inputs.py +209 -1
  66. pulumi_gcp/dataproc/batch.py +76 -0
  67. pulumi_gcp/dataproc/outputs.py +169 -3
  68. pulumi_gcp/diagflow/_inputs.py +3 -3
  69. pulumi_gcp/diagflow/outputs.py +2 -2
  70. pulumi_gcp/discoveryengine/search_engine.py +7 -7
  71. pulumi_gcp/firebaserules/release.py +76 -0
  72. pulumi_gcp/firestore/field.py +4 -4
  73. pulumi_gcp/gemini/__init__.py +15 -0
  74. pulumi_gcp/gemini/_inputs.py +183 -0
  75. pulumi_gcp/gemini/code_repository_index.py +659 -0
  76. pulumi_gcp/gemini/get_repository_group_iam_policy.py +171 -0
  77. pulumi_gcp/gemini/outputs.py +130 -0
  78. pulumi_gcp/gemini/repository_group.py +586 -0
  79. pulumi_gcp/gemini/repository_group_iam_binding.py +604 -0
  80. pulumi_gcp/gemini/repository_group_iam_member.py +604 -0
  81. pulumi_gcp/gemini/repository_group_iam_policy.py +443 -0
  82. pulumi_gcp/gkehub/_inputs.py +30 -10
  83. pulumi_gcp/gkehub/membership_binding.py +6 -6
  84. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  85. pulumi_gcp/gkehub/namespace.py +4 -4
  86. pulumi_gcp/gkehub/outputs.py +21 -7
  87. pulumi_gcp/gkehub/scope_rbac_role_binding.py +4 -4
  88. pulumi_gcp/iam/__init__.py +1 -0
  89. pulumi_gcp/iam/_inputs.py +137 -0
  90. pulumi_gcp/iam/folders_policy_binding.py +16 -0
  91. pulumi_gcp/iam/organizations_policy_binding.py +16 -0
  92. pulumi_gcp/iam/outputs.py +99 -0
  93. pulumi_gcp/iam/principal_access_boundary_policy.py +16 -0
  94. pulumi_gcp/iam/projects_policy_binding.py +917 -0
  95. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  96. pulumi_gcp/integrationconnectors/_inputs.py +15 -15
  97. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  98. pulumi_gcp/integrationconnectors/outputs.py +10 -10
  99. pulumi_gcp/monitoring/_inputs.py +13 -6
  100. pulumi_gcp/monitoring/outputs.py +10 -4
  101. pulumi_gcp/netapp/_inputs.py +3 -3
  102. pulumi_gcp/netapp/active_directory.py +7 -7
  103. pulumi_gcp/netapp/outputs.py +2 -2
  104. pulumi_gcp/netapp/volume.py +11 -11
  105. pulumi_gcp/networkconnectivity/spoke.py +10 -10
  106. pulumi_gcp/networksecurity/__init__.py +4 -0
  107. pulumi_gcp/networksecurity/_inputs.py +115 -0
  108. pulumi_gcp/networksecurity/mirroring_deployment.py +848 -0
  109. pulumi_gcp/networksecurity/mirroring_deployment_group.py +752 -0
  110. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +737 -0
  111. pulumi_gcp/networksecurity/mirroring_endpoint_group_association.py +840 -0
  112. pulumi_gcp/networksecurity/outputs.py +70 -0
  113. pulumi_gcp/oracledatabase/autonomous_database.py +42 -4
  114. pulumi_gcp/oracledatabase/cloud_exadata_infrastructure.py +42 -4
  115. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +50 -8
  116. pulumi_gcp/oracledatabase/get_autonomous_database.py +12 -1
  117. pulumi_gcp/oracledatabase/get_cloud_exadata_infrastructure.py +12 -1
  118. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +12 -1
  119. pulumi_gcp/oracledatabase/outputs.py +21 -0
  120. pulumi_gcp/orgpolicy/policy.py +2 -2
  121. pulumi_gcp/parallelstore/instance.py +4 -0
  122. pulumi_gcp/provider.py +20 -0
  123. pulumi_gcp/pubsub/subscription.py +6 -6
  124. pulumi_gcp/pulumi-plugin.json +1 -1
  125. pulumi_gcp/redis/_inputs.py +435 -3
  126. pulumi_gcp/redis/cluster.py +287 -16
  127. pulumi_gcp/redis/outputs.py +304 -2
  128. pulumi_gcp/serviceaccount/get_account_id_token.py +2 -2
  129. pulumi_gcp/serviceaccount/get_account_key.py +2 -2
  130. pulumi_gcp/storage/get_bucket.py +2 -2
  131. pulumi_gcp/storage/get_bucket_object_content.py +2 -2
  132. pulumi_gcp/tpu/__init__.py +1 -0
  133. pulumi_gcp/tpu/_inputs.py +188 -6
  134. pulumi_gcp/tpu/outputs.py +164 -4
  135. pulumi_gcp/tpu/v2_queued_resource.py +434 -0
  136. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  137. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  138. pulumi_gcp/vertex/ai_index_endpoint.py +2 -2
  139. {pulumi_gcp-8.10.2a1733856242.dist-info → pulumi_gcp-8.11.0.dist-info}/METADATA +3 -3
  140. {pulumi_gcp-8.10.2a1733856242.dist-info → pulumi_gcp-8.11.0.dist-info}/RECORD +142 -125
  141. {pulumi_gcp-8.10.2a1733856242.dist-info → pulumi_gcp-8.11.0.dist-info}/WHEEL +0 -0
  142. {pulumi_gcp-8.10.2a1733856242.dist-info → pulumi_gcp-8.11.0.dist-info}/top_level.txt +0 -0
@@ -159,6 +159,8 @@ dialogflowCustomEndpoint: Optional[str]
159
159
 
160
160
  dialogflowCxCustomEndpoint: Optional[str]
161
161
 
162
+ disableGlobalProjectWarning: bool
163
+
162
164
  disableGooglePartnerName: Optional[bool]
163
165
 
164
166
  discoveryEngineCustomEndpoint: Optional[str]
@@ -195,6 +197,8 @@ firebaserulesCustomEndpoint: Optional[str]
195
197
 
196
198
  firestoreCustomEndpoint: Optional[str]
197
199
 
200
+ geminiCustomEndpoint: Optional[str]
201
+
198
202
  gkeBackupCustomEndpoint: Optional[str]
199
203
 
200
204
  gkeHub2CustomEndpoint: Optional[str]
pulumi_gcp/config/vars.py CHANGED
@@ -309,6 +309,10 @@ class _ExportableConfig(types.ModuleType):
309
309
  def dialogflow_cx_custom_endpoint(self) -> Optional[str]:
310
310
  return __config__.get('dialogflowCxCustomEndpoint')
311
311
 
312
+ @property
313
+ def disable_global_project_warning(self) -> bool:
314
+ return __config__.get_bool('disableGlobalProjectWarning') or (_utilities.get_env_bool('PULUMI_GCP_DISABLE_GLOBAL_PROJECT_WARNING') or False)
315
+
312
316
  @property
313
317
  def disable_google_partner_name(self) -> Optional[bool]:
314
318
  return __config__.get_bool('disableGooglePartnerName')
@@ -381,6 +385,10 @@ class _ExportableConfig(types.ModuleType):
381
385
  def firestore_custom_endpoint(self) -> Optional[str]:
382
386
  return __config__.get('firestoreCustomEndpoint')
383
387
 
388
+ @property
389
+ def gemini_custom_endpoint(self) -> Optional[str]:
390
+ return __config__.get('geminiCustomEndpoint')
391
+
384
392
  @property
385
393
  def gke_backup_custom_endpoint(self) -> Optional[str]:
386
394
  return __config__.get('gkeBackupCustomEndpoint')
@@ -229,6 +229,8 @@ __all__ = [
229
229
  'ClusterDnsConfigArgsDict',
230
230
  'ClusterEnableK8sBetaApisArgs',
231
231
  'ClusterEnableK8sBetaApisArgsDict',
232
+ 'ClusterEnterpriseConfigArgs',
233
+ 'ClusterEnterpriseConfigArgsDict',
232
234
  'ClusterFleetArgs',
233
235
  'ClusterFleetArgsDict',
234
236
  'ClusterGatewayApiConfigArgs',
@@ -333,6 +335,8 @@ __all__ = [
333
335
  'ClusterNodePoolArgsDict',
334
336
  'ClusterNodePoolAutoConfigArgs',
335
337
  'ClusterNodePoolAutoConfigArgsDict',
338
+ 'ClusterNodePoolAutoConfigLinuxNodeConfigArgs',
339
+ 'ClusterNodePoolAutoConfigLinuxNodeConfigArgsDict',
336
340
  'ClusterNodePoolAutoConfigNetworkTagsArgs',
337
341
  'ClusterNodePoolAutoConfigNetworkTagsArgsDict',
338
342
  'ClusterNodePoolAutoConfigNodeKubeletConfigArgs',
@@ -5770,7 +5774,7 @@ if not MYPY:
5770
5774
  """
5771
5775
  disk_type: NotRequired[pulumi.Input[str]]
5772
5776
  """
5773
- Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 'pd-balanced'). Defaults to `pd-standard`
5777
+ Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd', 'pd-balanced', or 'hyperdisk-balanced'). Defaults to `hyperdisk-balanced` if `hyperdisk-balanced` is supported and `pd-balanced` is not supported for the machine type; otherwise defaults to `pd-balanced`.
5774
5778
  """
5775
5779
  image_type: NotRequired[pulumi.Input[str]]
5776
5780
  """
@@ -5823,7 +5827,7 @@ class ClusterClusterAutoscalingAutoProvisioningDefaultsArgs:
5823
5827
  """
5824
5828
  :param pulumi.Input[str] boot_disk_kms_key: The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption
5825
5829
  :param pulumi.Input[int] disk_size: Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. Defaults to `100`
5826
- :param pulumi.Input[str] disk_type: Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 'pd-balanced'). Defaults to `pd-standard`
5830
+ :param pulumi.Input[str] disk_type: Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd', 'pd-balanced', or 'hyperdisk-balanced'). Defaults to `hyperdisk-balanced` if `hyperdisk-balanced` is supported and `pd-balanced` is not supported for the machine type; otherwise defaults to `pd-balanced`.
5827
5831
  :param pulumi.Input[str] image_type: The default image type used by NAP once a new node pool is being created. Please note that according to the [official documentation](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-provisioning#default-image-type) the value must be one of the [COS_CONTAINERD, COS, UBUNTU_CONTAINERD, UBUNTU]. __NOTE__ : COS AND UBUNTU are deprecated as of `GKE 1.24`
5828
5832
  :param pulumi.Input['ClusterClusterAutoscalingAutoProvisioningDefaultsManagementArgs'] management: NodeManagement configuration for this NodePool. Structure is documented below.
5829
5833
  :param pulumi.Input[str] min_cpu_platform: Minimum CPU platform to be used for NAP created node pools. The instance may be scheduled on the
@@ -5885,7 +5889,7 @@ class ClusterClusterAutoscalingAutoProvisioningDefaultsArgs:
5885
5889
  @pulumi.getter(name="diskType")
5886
5890
  def disk_type(self) -> Optional[pulumi.Input[str]]:
5887
5891
  """
5888
- Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 'pd-balanced'). Defaults to `pd-standard`
5892
+ Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd', 'pd-balanced', or 'hyperdisk-balanced'). Defaults to `hyperdisk-balanced` if `hyperdisk-balanced` is supported and `pd-balanced` is not supported for the machine type; otherwise defaults to `pd-balanced`.
5889
5893
  """
5890
5894
  return pulumi.get(self, "disk_type")
5891
5895
 
@@ -6869,6 +6873,58 @@ class ClusterEnableK8sBetaApisArgs:
6869
6873
  pulumi.set(self, "enabled_apis", value)
6870
6874
 
6871
6875
 
6876
+ if not MYPY:
6877
+ class ClusterEnterpriseConfigArgsDict(TypedDict):
6878
+ cluster_tier: NotRequired[pulumi.Input[str]]
6879
+ """
6880
+ The effective tier of the cluster.
6881
+ """
6882
+ desired_tier: NotRequired[pulumi.Input[str]]
6883
+ """
6884
+ Sets the tier of the cluster. Available options include `STANDARD` and `ENTERPRISE`.
6885
+ """
6886
+ elif False:
6887
+ ClusterEnterpriseConfigArgsDict: TypeAlias = Mapping[str, Any]
6888
+
6889
+ @pulumi.input_type
6890
+ class ClusterEnterpriseConfigArgs:
6891
+ def __init__(__self__, *,
6892
+ cluster_tier: Optional[pulumi.Input[str]] = None,
6893
+ desired_tier: Optional[pulumi.Input[str]] = None):
6894
+ """
6895
+ :param pulumi.Input[str] cluster_tier: The effective tier of the cluster.
6896
+ :param pulumi.Input[str] desired_tier: Sets the tier of the cluster. Available options include `STANDARD` and `ENTERPRISE`.
6897
+ """
6898
+ if cluster_tier is not None:
6899
+ pulumi.set(__self__, "cluster_tier", cluster_tier)
6900
+ if desired_tier is not None:
6901
+ pulumi.set(__self__, "desired_tier", desired_tier)
6902
+
6903
+ @property
6904
+ @pulumi.getter(name="clusterTier")
6905
+ def cluster_tier(self) -> Optional[pulumi.Input[str]]:
6906
+ """
6907
+ The effective tier of the cluster.
6908
+ """
6909
+ return pulumi.get(self, "cluster_tier")
6910
+
6911
+ @cluster_tier.setter
6912
+ def cluster_tier(self, value: Optional[pulumi.Input[str]]):
6913
+ pulumi.set(self, "cluster_tier", value)
6914
+
6915
+ @property
6916
+ @pulumi.getter(name="desiredTier")
6917
+ def desired_tier(self) -> Optional[pulumi.Input[str]]:
6918
+ """
6919
+ Sets the tier of the cluster. Available options include `STANDARD` and `ENTERPRISE`.
6920
+ """
6921
+ return pulumi.get(self, "desired_tier")
6922
+
6923
+ @desired_tier.setter
6924
+ def desired_tier(self, value: Optional[pulumi.Input[str]]):
6925
+ pulumi.set(self, "desired_tier", value)
6926
+
6927
+
6872
6928
  if not MYPY:
6873
6929
  class ClusterFleetArgsDict(TypedDict):
6874
6930
  membership: NotRequired[pulumi.Input[str]]
@@ -8418,6 +8474,13 @@ if not MYPY:
8418
8474
  The amount of local SSD disks that will be
8419
8475
  attached to each cluster node. Defaults to 0.
8420
8476
  """
8477
+ local_ssd_encryption_mode: NotRequired[pulumi.Input[str]]
8478
+ """
8479
+ Possible Local SSD encryption modes:
8480
+ Accepted values are:
8481
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
8482
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
8483
+ """
8421
8484
  logging_variant: NotRequired[pulumi.Input[str]]
8422
8485
  """
8423
8486
  Parameter for specifying the type of logging agent used in a node pool. This will override any cluster-wide default value. Valid values include DEFAULT and MAX_THROUGHPUT. See [Increasing logging agent throughput](https://cloud.google.com/stackdriver/docs/solutions/gke/managing-logs#throughput) for more information.
@@ -8554,6 +8617,7 @@ class ClusterNodeConfigArgs:
8554
8617
  linux_node_config: Optional[pulumi.Input['ClusterNodeConfigLinuxNodeConfigArgs']] = None,
8555
8618
  local_nvme_ssd_block_config: Optional[pulumi.Input['ClusterNodeConfigLocalNvmeSsdBlockConfigArgs']] = None,
8556
8619
  local_ssd_count: Optional[pulumi.Input[int]] = None,
8620
+ local_ssd_encryption_mode: Optional[pulumi.Input[str]] = None,
8557
8621
  logging_variant: Optional[pulumi.Input[str]] = None,
8558
8622
  machine_type: Optional[pulumi.Input[str]] = None,
8559
8623
  metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -8625,6 +8689,10 @@ class ClusterNodeConfigArgs:
8625
8689
  :param pulumi.Input['ClusterNodeConfigLocalNvmeSsdBlockConfigArgs'] local_nvme_ssd_block_config: Parameters for the local NVMe SSDs. Structure is documented below.
8626
8690
  :param pulumi.Input[int] local_ssd_count: The amount of local SSD disks that will be
8627
8691
  attached to each cluster node. Defaults to 0.
8692
+ :param pulumi.Input[str] local_ssd_encryption_mode: Possible Local SSD encryption modes:
8693
+ Accepted values are:
8694
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
8695
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
8628
8696
  :param pulumi.Input[str] logging_variant: Parameter for specifying the type of logging agent used in a node pool. This will override any cluster-wide default value. Valid values include DEFAULT and MAX_THROUGHPUT. See [Increasing logging agent throughput](https://cloud.google.com/stackdriver/docs/solutions/gke/managing-logs#throughput) for more information.
8629
8697
  :param pulumi.Input[str] machine_type: The name of a Google Compute Engine machine type.
8630
8698
  Defaults to `e2-medium`. To create a custom machine type, value should be set as specified
@@ -8717,6 +8785,8 @@ class ClusterNodeConfigArgs:
8717
8785
  pulumi.set(__self__, "local_nvme_ssd_block_config", local_nvme_ssd_block_config)
8718
8786
  if local_ssd_count is not None:
8719
8787
  pulumi.set(__self__, "local_ssd_count", local_ssd_count)
8788
+ if local_ssd_encryption_mode is not None:
8789
+ pulumi.set(__self__, "local_ssd_encryption_mode", local_ssd_encryption_mode)
8720
8790
  if logging_variant is not None:
8721
8791
  pulumi.set(__self__, "logging_variant", logging_variant)
8722
8792
  if machine_type is not None:
@@ -9039,6 +9109,21 @@ class ClusterNodeConfigArgs:
9039
9109
  def local_ssd_count(self, value: Optional[pulumi.Input[int]]):
9040
9110
  pulumi.set(self, "local_ssd_count", value)
9041
9111
 
9112
+ @property
9113
+ @pulumi.getter(name="localSsdEncryptionMode")
9114
+ def local_ssd_encryption_mode(self) -> Optional[pulumi.Input[str]]:
9115
+ """
9116
+ Possible Local SSD encryption modes:
9117
+ Accepted values are:
9118
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
9119
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
9120
+ """
9121
+ return pulumi.get(self, "local_ssd_encryption_mode")
9122
+
9123
+ @local_ssd_encryption_mode.setter
9124
+ def local_ssd_encryption_mode(self, value: Optional[pulumi.Input[str]]):
9125
+ pulumi.set(self, "local_ssd_encryption_mode", value)
9126
+
9042
9127
  @property
9043
9128
  @pulumi.getter(name="loggingVariant")
9044
9129
  def logging_variant(self) -> Optional[pulumi.Input[str]]:
@@ -11198,6 +11283,10 @@ class ClusterNodePoolArgs:
11198
11283
 
11199
11284
  if not MYPY:
11200
11285
  class ClusterNodePoolAutoConfigArgsDict(TypedDict):
11286
+ linux_node_config: NotRequired[pulumi.Input['ClusterNodePoolAutoConfigLinuxNodeConfigArgsDict']]
11287
+ """
11288
+ Linux system configuration for the cluster's automatically provisioned node pools. Only `cgroup_mode` field is supported in `node_pool_auto_config`. Structure is documented below.
11289
+ """
11201
11290
  network_tags: NotRequired[pulumi.Input['ClusterNodePoolAutoConfigNetworkTagsArgsDict']]
11202
11291
  """
11203
11292
  The network tag config for the cluster's automatically provisioned node pools. Structure is documented below.
@@ -11217,15 +11306,19 @@ elif False:
11217
11306
  @pulumi.input_type
11218
11307
  class ClusterNodePoolAutoConfigArgs:
11219
11308
  def __init__(__self__, *,
11309
+ linux_node_config: Optional[pulumi.Input['ClusterNodePoolAutoConfigLinuxNodeConfigArgs']] = None,
11220
11310
  network_tags: Optional[pulumi.Input['ClusterNodePoolAutoConfigNetworkTagsArgs']] = None,
11221
11311
  node_kubelet_config: Optional[pulumi.Input['ClusterNodePoolAutoConfigNodeKubeletConfigArgs']] = None,
11222
11312
  resource_manager_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
11223
11313
  """
11314
+ :param pulumi.Input['ClusterNodePoolAutoConfigLinuxNodeConfigArgs'] linux_node_config: Linux system configuration for the cluster's automatically provisioned node pools. Only `cgroup_mode` field is supported in `node_pool_auto_config`. Structure is documented below.
11224
11315
  :param pulumi.Input['ClusterNodePoolAutoConfigNetworkTagsArgs'] network_tags: The network tag config for the cluster's automatically provisioned node pools. Structure is documented below.
11225
11316
  :param pulumi.Input['ClusterNodePoolAutoConfigNodeKubeletConfigArgs'] node_kubelet_config: Kubelet configuration for Autopilot clusters. Currently, only `insecure_kubelet_readonly_port_enabled` is supported here.
11226
11317
  Structure is documented below.
11227
11318
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] resource_manager_tags: A map of resource manager tag keys and values to be attached to the nodes for managing Compute Engine firewalls using Network Firewall Policies. Tags must be according to specifications found [here](https://cloud.google.com/vpc/docs/tags-firewalls-overview#specifications). A maximum of 5 tag key-value pairs can be specified. Existing tags will be replaced with new values. Tags must be in one of the following formats ([KEY]=[VALUE]) 1. `tagKeys/{tag_key_id}=tagValues/{tag_value_id}` 2. `{org_id}/{tag_key_name}={tag_value_name}` 3. `{project_id}/{tag_key_name}={tag_value_name}`.
11228
11319
  """
11320
+ if linux_node_config is not None:
11321
+ pulumi.set(__self__, "linux_node_config", linux_node_config)
11229
11322
  if network_tags is not None:
11230
11323
  pulumi.set(__self__, "network_tags", network_tags)
11231
11324
  if node_kubelet_config is not None:
@@ -11233,6 +11326,18 @@ class ClusterNodePoolAutoConfigArgs:
11233
11326
  if resource_manager_tags is not None:
11234
11327
  pulumi.set(__self__, "resource_manager_tags", resource_manager_tags)
11235
11328
 
11329
+ @property
11330
+ @pulumi.getter(name="linuxNodeConfig")
11331
+ def linux_node_config(self) -> Optional[pulumi.Input['ClusterNodePoolAutoConfigLinuxNodeConfigArgs']]:
11332
+ """
11333
+ Linux system configuration for the cluster's automatically provisioned node pools. Only `cgroup_mode` field is supported in `node_pool_auto_config`. Structure is documented below.
11334
+ """
11335
+ return pulumi.get(self, "linux_node_config")
11336
+
11337
+ @linux_node_config.setter
11338
+ def linux_node_config(self, value: Optional[pulumi.Input['ClusterNodePoolAutoConfigLinuxNodeConfigArgs']]):
11339
+ pulumi.set(self, "linux_node_config", value)
11340
+
11236
11341
  @property
11237
11342
  @pulumi.getter(name="networkTags")
11238
11343
  def network_tags(self) -> Optional[pulumi.Input['ClusterNodePoolAutoConfigNetworkTagsArgs']]:
@@ -11271,6 +11376,50 @@ class ClusterNodePoolAutoConfigArgs:
11271
11376
  pulumi.set(self, "resource_manager_tags", value)
11272
11377
 
11273
11378
 
11379
+ if not MYPY:
11380
+ class ClusterNodePoolAutoConfigLinuxNodeConfigArgsDict(TypedDict):
11381
+ cgroup_mode: NotRequired[pulumi.Input[str]]
11382
+ """
11383
+ Possible cgroup modes that can be used.
11384
+ Accepted values are:
11385
+ * `CGROUP_MODE_UNSPECIFIED`: CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. The default for the GKE node OS image will be used.
11386
+ * `CGROUP_MODE_V1`: CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on the node image.
11387
+ * `CGROUP_MODE_V2`: CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on the node image.
11388
+ """
11389
+ elif False:
11390
+ ClusterNodePoolAutoConfigLinuxNodeConfigArgsDict: TypeAlias = Mapping[str, Any]
11391
+
11392
+ @pulumi.input_type
11393
+ class ClusterNodePoolAutoConfigLinuxNodeConfigArgs:
11394
+ def __init__(__self__, *,
11395
+ cgroup_mode: Optional[pulumi.Input[str]] = None):
11396
+ """
11397
+ :param pulumi.Input[str] cgroup_mode: Possible cgroup modes that can be used.
11398
+ Accepted values are:
11399
+ * `CGROUP_MODE_UNSPECIFIED`: CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. The default for the GKE node OS image will be used.
11400
+ * `CGROUP_MODE_V1`: CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on the node image.
11401
+ * `CGROUP_MODE_V2`: CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on the node image.
11402
+ """
11403
+ if cgroup_mode is not None:
11404
+ pulumi.set(__self__, "cgroup_mode", cgroup_mode)
11405
+
11406
+ @property
11407
+ @pulumi.getter(name="cgroupMode")
11408
+ def cgroup_mode(self) -> Optional[pulumi.Input[str]]:
11409
+ """
11410
+ Possible cgroup modes that can be used.
11411
+ Accepted values are:
11412
+ * `CGROUP_MODE_UNSPECIFIED`: CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. The default for the GKE node OS image will be used.
11413
+ * `CGROUP_MODE_V1`: CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on the node image.
11414
+ * `CGROUP_MODE_V2`: CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on the node image.
11415
+ """
11416
+ return pulumi.get(self, "cgroup_mode")
11417
+
11418
+ @cgroup_mode.setter
11419
+ def cgroup_mode(self, value: Optional[pulumi.Input[str]]):
11420
+ pulumi.set(self, "cgroup_mode", value)
11421
+
11422
+
11274
11423
  if not MYPY:
11275
11424
  class ClusterNodePoolAutoConfigNetworkTagsArgsDict(TypedDict):
11276
11425
  tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
@@ -12315,6 +12464,13 @@ if not MYPY:
12315
12464
  The amount of local SSD disks that will be
12316
12465
  attached to each cluster node. Defaults to 0.
12317
12466
  """
12467
+ local_ssd_encryption_mode: NotRequired[pulumi.Input[str]]
12468
+ """
12469
+ Possible Local SSD encryption modes:
12470
+ Accepted values are:
12471
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
12472
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
12473
+ """
12318
12474
  logging_variant: NotRequired[pulumi.Input[str]]
12319
12475
  """
12320
12476
  Parameter for specifying the type of logging agent used in a node pool. This will override any cluster-wide default value. Valid values include DEFAULT and MAX_THROUGHPUT. See [Increasing logging agent throughput](https://cloud.google.com/stackdriver/docs/solutions/gke/managing-logs#throughput) for more information.
@@ -12451,6 +12607,7 @@ class ClusterNodePoolNodeConfigArgs:
12451
12607
  linux_node_config: Optional[pulumi.Input['ClusterNodePoolNodeConfigLinuxNodeConfigArgs']] = None,
12452
12608
  local_nvme_ssd_block_config: Optional[pulumi.Input['ClusterNodePoolNodeConfigLocalNvmeSsdBlockConfigArgs']] = None,
12453
12609
  local_ssd_count: Optional[pulumi.Input[int]] = None,
12610
+ local_ssd_encryption_mode: Optional[pulumi.Input[str]] = None,
12454
12611
  logging_variant: Optional[pulumi.Input[str]] = None,
12455
12612
  machine_type: Optional[pulumi.Input[str]] = None,
12456
12613
  metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -12522,6 +12679,10 @@ class ClusterNodePoolNodeConfigArgs:
12522
12679
  :param pulumi.Input['ClusterNodePoolNodeConfigLocalNvmeSsdBlockConfigArgs'] local_nvme_ssd_block_config: Parameters for the local NVMe SSDs. Structure is documented below.
12523
12680
  :param pulumi.Input[int] local_ssd_count: The amount of local SSD disks that will be
12524
12681
  attached to each cluster node. Defaults to 0.
12682
+ :param pulumi.Input[str] local_ssd_encryption_mode: Possible Local SSD encryption modes:
12683
+ Accepted values are:
12684
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
12685
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
12525
12686
  :param pulumi.Input[str] logging_variant: Parameter for specifying the type of logging agent used in a node pool. This will override any cluster-wide default value. Valid values include DEFAULT and MAX_THROUGHPUT. See [Increasing logging agent throughput](https://cloud.google.com/stackdriver/docs/solutions/gke/managing-logs#throughput) for more information.
12526
12687
  :param pulumi.Input[str] machine_type: The name of a Google Compute Engine machine type.
12527
12688
  Defaults to `e2-medium`. To create a custom machine type, value should be set as specified
@@ -12614,6 +12775,8 @@ class ClusterNodePoolNodeConfigArgs:
12614
12775
  pulumi.set(__self__, "local_nvme_ssd_block_config", local_nvme_ssd_block_config)
12615
12776
  if local_ssd_count is not None:
12616
12777
  pulumi.set(__self__, "local_ssd_count", local_ssd_count)
12778
+ if local_ssd_encryption_mode is not None:
12779
+ pulumi.set(__self__, "local_ssd_encryption_mode", local_ssd_encryption_mode)
12617
12780
  if logging_variant is not None:
12618
12781
  pulumi.set(__self__, "logging_variant", logging_variant)
12619
12782
  if machine_type is not None:
@@ -12936,6 +13099,21 @@ class ClusterNodePoolNodeConfigArgs:
12936
13099
  def local_ssd_count(self, value: Optional[pulumi.Input[int]]):
12937
13100
  pulumi.set(self, "local_ssd_count", value)
12938
13101
 
13102
+ @property
13103
+ @pulumi.getter(name="localSsdEncryptionMode")
13104
+ def local_ssd_encryption_mode(self) -> Optional[pulumi.Input[str]]:
13105
+ """
13106
+ Possible Local SSD encryption modes:
13107
+ Accepted values are:
13108
+ * `STANDARD_ENCRYPTION`: The given node will be encrypted using keys managed by Google infrastructure and the keys wll be deleted when the node is deleted.
13109
+ * `EPHEMERAL_KEY_ENCRYPTION`: The given node will opt-in for using ephemeral key for encrypting Local SSDs. The Local SSDs will not be able to recover data in case of node crash.
13110
+ """
13111
+ return pulumi.get(self, "local_ssd_encryption_mode")
13112
+
13113
+ @local_ssd_encryption_mode.setter
13114
+ def local_ssd_encryption_mode(self, value: Optional[pulumi.Input[str]]):
13115
+ pulumi.set(self, "local_ssd_encryption_mode", value)
13116
+
12939
13117
  @property
12940
13118
  @pulumi.getter(name="loggingVariant")
12941
13119
  def logging_variant(self) -> Optional[pulumi.Input[str]]:
@@ -16796,6 +16974,10 @@ if not MYPY:
16796
16974
  """
16797
16975
  The number of local SSD disks to be attached to the node.
16798
16976
  """
16977
+ local_ssd_encryption_mode: NotRequired[pulumi.Input[str]]
16978
+ """
16979
+ LocalSsdEncryptionMode specified the method used for encrypting the local SSDs attached to the node.
16980
+ """
16799
16981
  logging_variant: NotRequired[pulumi.Input[str]]
16800
16982
  """
16801
16983
  Type of logging agent that is used as the default value for node pools in the cluster. Valid values include DEFAULT and MAX_THROUGHPUT.
@@ -16906,6 +17088,7 @@ class NodePoolNodeConfigArgs:
16906
17088
  linux_node_config: Optional[pulumi.Input['NodePoolNodeConfigLinuxNodeConfigArgs']] = None,
16907
17089
  local_nvme_ssd_block_config: Optional[pulumi.Input['NodePoolNodeConfigLocalNvmeSsdBlockConfigArgs']] = None,
16908
17090
  local_ssd_count: Optional[pulumi.Input[int]] = None,
17091
+ local_ssd_encryption_mode: Optional[pulumi.Input[str]] = None,
16909
17092
  logging_variant: Optional[pulumi.Input[str]] = None,
16910
17093
  machine_type: Optional[pulumi.Input[str]] = None,
16911
17094
  metadata: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
@@ -16948,6 +17131,7 @@ class NodePoolNodeConfigArgs:
16948
17131
  :param pulumi.Input['NodePoolNodeConfigLinuxNodeConfigArgs'] linux_node_config: Parameters that can be configured on Linux nodes.
16949
17132
  :param pulumi.Input['NodePoolNodeConfigLocalNvmeSsdBlockConfigArgs'] local_nvme_ssd_block_config: Parameters for raw-block local NVMe SSDs.
16950
17133
  :param pulumi.Input[int] local_ssd_count: The number of local SSD disks to be attached to the node.
17134
+ :param pulumi.Input[str] local_ssd_encryption_mode: LocalSsdEncryptionMode specified the method used for encrypting the local SSDs attached to the node.
16951
17135
  :param pulumi.Input[str] logging_variant: Type of logging agent that is used as the default value for node pools in the cluster. Valid values include DEFAULT and MAX_THROUGHPUT.
16952
17136
  :param pulumi.Input[str] machine_type: The name of a Google Compute Engine machine type.
16953
17137
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] metadata: The metadata key/value pairs assigned to instances in the cluster.
@@ -17014,6 +17198,8 @@ class NodePoolNodeConfigArgs:
17014
17198
  pulumi.set(__self__, "local_nvme_ssd_block_config", local_nvme_ssd_block_config)
17015
17199
  if local_ssd_count is not None:
17016
17200
  pulumi.set(__self__, "local_ssd_count", local_ssd_count)
17201
+ if local_ssd_encryption_mode is not None:
17202
+ pulumi.set(__self__, "local_ssd_encryption_mode", local_ssd_encryption_mode)
17017
17203
  if logging_variant is not None:
17018
17204
  pulumi.set(__self__, "logging_variant", logging_variant)
17019
17205
  if machine_type is not None:
@@ -17307,6 +17493,18 @@ class NodePoolNodeConfigArgs:
17307
17493
  def local_ssd_count(self, value: Optional[pulumi.Input[int]]):
17308
17494
  pulumi.set(self, "local_ssd_count", value)
17309
17495
 
17496
+ @property
17497
+ @pulumi.getter(name="localSsdEncryptionMode")
17498
+ def local_ssd_encryption_mode(self) -> Optional[pulumi.Input[str]]:
17499
+ """
17500
+ LocalSsdEncryptionMode specified the method used for encrypting the local SSDs attached to the node.
17501
+ """
17502
+ return pulumi.get(self, "local_ssd_encryption_mode")
17503
+
17504
+ @local_ssd_encryption_mode.setter
17505
+ def local_ssd_encryption_mode(self, value: Optional[pulumi.Input[str]]):
17506
+ pulumi.set(self, "local_ssd_encryption_mode", value)
17507
+
17310
17508
  @property
17311
17509
  @pulumi.getter(name="loggingVariant")
17312
17510
  def logging_variant(self) -> Optional[pulumi.Input[str]]: