pulumi-gcp 7.36.0a1723631483__py3-none-any.whl → 7.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 (53) hide show
  1. pulumi_gcp/__init__.py +72 -0
  2. pulumi_gcp/accesscontextmanager/__init__.py +2 -0
  3. pulumi_gcp/accesscontextmanager/_inputs.py +780 -0
  4. pulumi_gcp/accesscontextmanager/outputs.py +601 -0
  5. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_egress_policy.py +323 -0
  6. pulumi_gcp/accesscontextmanager/service_perimeter_dry_run_ingress_policy.py +332 -0
  7. pulumi_gcp/accesscontextmanager/service_perimeter_egress_policy.py +2 -24
  8. pulumi_gcp/accesscontextmanager/service_perimeter_ingress_policy.py +2 -24
  9. pulumi_gcp/applicationintegration/client.py +2 -2
  10. pulumi_gcp/clouddeploy/_inputs.py +21 -1
  11. pulumi_gcp/clouddeploy/outputs.py +15 -1
  12. pulumi_gcp/cloudrunv2/_inputs.py +40 -0
  13. pulumi_gcp/cloudrunv2/outputs.py +46 -0
  14. pulumi_gcp/compute/region_target_https_proxy.py +28 -0
  15. pulumi_gcp/container/_inputs.py +26 -0
  16. pulumi_gcp/container/outputs.py +29 -0
  17. pulumi_gcp/dataform/repository.py +80 -2
  18. pulumi_gcp/discoveryengine/data_store.py +93 -2
  19. pulumi_gcp/gkehub/_inputs.py +63 -0
  20. pulumi_gcp/gkehub/outputs.py +38 -0
  21. pulumi_gcp/logging/get_log_view_iam_policy.py +28 -2
  22. pulumi_gcp/logging/log_view_iam_binding.py +512 -0
  23. pulumi_gcp/logging/log_view_iam_member.py +512 -0
  24. pulumi_gcp/logging/log_view_iam_policy.py +512 -0
  25. pulumi_gcp/netapp/_inputs.py +6 -6
  26. pulumi_gcp/netapp/outputs.py +4 -4
  27. pulumi_gcp/networkconnectivity/regional_endpoint.py +6 -6
  28. pulumi_gcp/organizations/get_project.py +11 -1
  29. pulumi_gcp/organizations/project.py +76 -21
  30. pulumi_gcp/pulumi-plugin.json +1 -1
  31. pulumi_gcp/securitycenter/__init__.py +8 -0
  32. pulumi_gcp/securitycenter/_inputs.py +191 -0
  33. pulumi_gcp/securitycenter/get_v2_organization_source_iam_policy.py +146 -0
  34. pulumi_gcp/securitycenter/outputs.py +115 -0
  35. pulumi_gcp/securitycenter/v2_folder_mute_config.py +679 -0
  36. pulumi_gcp/securitycenter/v2_organization_source.py +416 -0
  37. pulumi_gcp/securitycenter/v2_organization_source_iam_binding.py +722 -0
  38. pulumi_gcp/securitycenter/v2_organization_source_iam_member.py +722 -0
  39. pulumi_gcp/securitycenter/v2_organization_source_iam_policy.py +561 -0
  40. pulumi_gcp/securitycenter/v2_project_mute_config.py +684 -0
  41. pulumi_gcp/securitycenter/v2_project_notification_config.py +559 -0
  42. pulumi_gcp/spanner/instance.py +0 -7
  43. pulumi_gcp/sql/_inputs.py +3 -3
  44. pulumi_gcp/sql/outputs.py +6 -6
  45. pulumi_gcp/storage/bucket_object.py +28 -0
  46. pulumi_gcp/storage/get_bucket_object.py +14 -1
  47. pulumi_gcp/storage/get_bucket_object_content.py +11 -1
  48. pulumi_gcp/storage/managed_folder.py +72 -2
  49. pulumi_gcp/vmwareengine/network_policy.py +6 -6
  50. {pulumi_gcp-7.36.0a1723631483.dist-info → pulumi_gcp-7.37.0.dist-info}/METADATA +1 -1
  51. {pulumi_gcp-7.36.0a1723631483.dist-info → pulumi_gcp-7.37.0.dist-info}/RECORD +53 -43
  52. {pulumi_gcp-7.36.0a1723631483.dist-info → pulumi_gcp-7.37.0.dist-info}/WHEEL +0 -0
  53. {pulumi_gcp-7.36.0a1723631483.dist-info → pulumi_gcp-7.37.0.dist-info}/top_level.txt +0 -0
@@ -4462,6 +4462,8 @@ class ClusterClusterAutoscaling(dict):
4462
4462
  suggest = None
4463
4463
  if key == "autoProvisioningDefaults":
4464
4464
  suggest = "auto_provisioning_defaults"
4465
+ elif key == "autoProvisioningLocations":
4466
+ suggest = "auto_provisioning_locations"
4465
4467
  elif key == "autoscalingProfile":
4466
4468
  suggest = "autoscaling_profile"
4467
4469
  elif key == "resourceLimits":
@@ -4480,6 +4482,7 @@ class ClusterClusterAutoscaling(dict):
4480
4482
 
4481
4483
  def __init__(__self__, *,
4482
4484
  auto_provisioning_defaults: Optional['outputs.ClusterClusterAutoscalingAutoProvisioningDefaults'] = None,
4485
+ auto_provisioning_locations: Optional[Sequence[str]] = None,
4483
4486
  autoscaling_profile: Optional[str] = None,
4484
4487
  enabled: Optional[bool] = None,
4485
4488
  resource_limits: Optional[Sequence['outputs.ClusterClusterAutoscalingResourceLimit']] = None):
@@ -4487,6 +4490,9 @@ class ClusterClusterAutoscaling(dict):
4487
4490
  :param 'ClusterClusterAutoscalingAutoProvisioningDefaultsArgs' auto_provisioning_defaults: Contains defaults for a node pool created by NAP. A subset of fields also apply to
4488
4491
  GKE Autopilot clusters.
4489
4492
  Structure is documented below.
4493
+ :param Sequence[str] auto_provisioning_locations: The list of Google Compute Engine
4494
+ [zones](https://cloud.google.com/compute/docs/zones#available) in which the
4495
+ NodePool's nodes can be created by NAP.
4490
4496
  :param str autoscaling_profile: Configuration
4491
4497
  options for the [Autoscaling profile](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-autoscaler#autoscaling_profiles)
4492
4498
  feature, which lets you choose whether the cluster autoscaler should optimize for resource utilization or resource availability
@@ -4500,6 +4506,8 @@ class ClusterClusterAutoscaling(dict):
4500
4506
  """
4501
4507
  if auto_provisioning_defaults is not None:
4502
4508
  pulumi.set(__self__, "auto_provisioning_defaults", auto_provisioning_defaults)
4509
+ if auto_provisioning_locations is not None:
4510
+ pulumi.set(__self__, "auto_provisioning_locations", auto_provisioning_locations)
4503
4511
  if autoscaling_profile is not None:
4504
4512
  pulumi.set(__self__, "autoscaling_profile", autoscaling_profile)
4505
4513
  if enabled is not None:
@@ -4517,6 +4525,16 @@ class ClusterClusterAutoscaling(dict):
4517
4525
  """
4518
4526
  return pulumi.get(self, "auto_provisioning_defaults")
4519
4527
 
4528
+ @property
4529
+ @pulumi.getter(name="autoProvisioningLocations")
4530
+ def auto_provisioning_locations(self) -> Optional[Sequence[str]]:
4531
+ """
4532
+ The list of Google Compute Engine
4533
+ [zones](https://cloud.google.com/compute/docs/zones#available) in which the
4534
+ NodePool's nodes can be created by NAP.
4535
+ """
4536
+ return pulumi.get(self, "auto_provisioning_locations")
4537
+
4520
4538
  @property
4521
4539
  @pulumi.getter(name="autoscalingProfile")
4522
4540
  def autoscaling_profile(self) -> Optional[str]:
@@ -15245,16 +15263,19 @@ class GetClusterBinaryAuthorizationResult(dict):
15245
15263
  class GetClusterClusterAutoscalingResult(dict):
15246
15264
  def __init__(__self__, *,
15247
15265
  auto_provisioning_defaults: Sequence['outputs.GetClusterClusterAutoscalingAutoProvisioningDefaultResult'],
15266
+ auto_provisioning_locations: Sequence[str],
15248
15267
  autoscaling_profile: str,
15249
15268
  enabled: bool,
15250
15269
  resource_limits: Sequence['outputs.GetClusterClusterAutoscalingResourceLimitResult']):
15251
15270
  """
15252
15271
  :param Sequence['GetClusterClusterAutoscalingAutoProvisioningDefaultArgs'] auto_provisioning_defaults: Contains defaults for a node pool created by NAP.
15272
+ :param Sequence[str] auto_provisioning_locations: The list of Google Compute Engine zones in which the NodePool's nodes can be created by NAP.
15253
15273
  :param str autoscaling_profile: Configuration options for the Autoscaling profile feature, which lets you choose whether the cluster autoscaler should optimize for resource utilization or resource availability when deciding to remove nodes from a cluster. Can be BALANCED or OPTIMIZE_UTILIZATION. Defaults to BALANCED.
15254
15274
  :param bool enabled: Whether node auto-provisioning is enabled. Resource limits for cpu and memory must be defined to enable node auto-provisioning.
15255
15275
  :param Sequence['GetClusterClusterAutoscalingResourceLimitArgs'] resource_limits: Global constraints for machine resources in the cluster. Configuring the cpu and memory types is required if node auto-provisioning is enabled. These limits will apply to node pool autoscaling in addition to node auto-provisioning.
15256
15276
  """
15257
15277
  pulumi.set(__self__, "auto_provisioning_defaults", auto_provisioning_defaults)
15278
+ pulumi.set(__self__, "auto_provisioning_locations", auto_provisioning_locations)
15258
15279
  pulumi.set(__self__, "autoscaling_profile", autoscaling_profile)
15259
15280
  pulumi.set(__self__, "enabled", enabled)
15260
15281
  pulumi.set(__self__, "resource_limits", resource_limits)
@@ -15267,6 +15288,14 @@ class GetClusterClusterAutoscalingResult(dict):
15267
15288
  """
15268
15289
  return pulumi.get(self, "auto_provisioning_defaults")
15269
15290
 
15291
+ @property
15292
+ @pulumi.getter(name="autoProvisioningLocations")
15293
+ def auto_provisioning_locations(self) -> Sequence[str]:
15294
+ """
15295
+ The list of Google Compute Engine zones in which the NodePool's nodes can be created by NAP.
15296
+ """
15297
+ return pulumi.get(self, "auto_provisioning_locations")
15298
+
15270
15299
  @property
15271
15300
  @pulumi.getter(name="autoscalingProfile")
15272
15301
  def autoscaling_profile(self) -> str:
@@ -23,6 +23,7 @@ class RepositoryArgs:
23
23
  def __init__(__self__, *,
24
24
  display_name: Optional[pulumi.Input[str]] = None,
25
25
  git_remote_settings: Optional[pulumi.Input['RepositoryGitRemoteSettingsArgs']] = None,
26
+ kms_key_name: Optional[pulumi.Input[str]] = None,
26
27
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
27
28
  name: Optional[pulumi.Input[str]] = None,
28
29
  npmrc_environment_variables_secret_version: Optional[pulumi.Input[str]] = None,
@@ -35,6 +36,8 @@ class RepositoryArgs:
35
36
  :param pulumi.Input[str] display_name: Optional. The repository's user-friendly name.
36
37
  :param pulumi.Input['RepositoryGitRemoteSettingsArgs'] git_remote_settings: Optional. If set, configures this repository to be linked to a Git remote.
37
38
  Structure is documented below.
39
+ :param pulumi.Input[str] kms_key_name: Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
40
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
38
41
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Repository user labels.
39
42
  An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
40
43
 
@@ -56,6 +59,8 @@ class RepositoryArgs:
56
59
  pulumi.set(__self__, "display_name", display_name)
57
60
  if git_remote_settings is not None:
58
61
  pulumi.set(__self__, "git_remote_settings", git_remote_settings)
62
+ if kms_key_name is not None:
63
+ pulumi.set(__self__, "kms_key_name", kms_key_name)
59
64
  if labels is not None:
60
65
  pulumi.set(__self__, "labels", labels)
61
66
  if name is not None:
@@ -96,6 +101,19 @@ class RepositoryArgs:
96
101
  def git_remote_settings(self, value: Optional[pulumi.Input['RepositoryGitRemoteSettingsArgs']]):
97
102
  pulumi.set(self, "git_remote_settings", value)
98
103
 
104
+ @property
105
+ @pulumi.getter(name="kmsKeyName")
106
+ def kms_key_name(self) -> Optional[pulumi.Input[str]]:
107
+ """
108
+ Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
109
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
110
+ """
111
+ return pulumi.get(self, "kms_key_name")
112
+
113
+ @kms_key_name.setter
114
+ def kms_key_name(self, value: Optional[pulumi.Input[str]]):
115
+ pulumi.set(self, "kms_key_name", value)
116
+
99
117
  @property
100
118
  @pulumi.getter
101
119
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -196,6 +214,7 @@ class _RepositoryState:
196
214
  display_name: Optional[pulumi.Input[str]] = None,
197
215
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
198
216
  git_remote_settings: Optional[pulumi.Input['RepositoryGitRemoteSettingsArgs']] = None,
217
+ kms_key_name: Optional[pulumi.Input[str]] = None,
199
218
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
200
219
  name: Optional[pulumi.Input[str]] = None,
201
220
  npmrc_environment_variables_secret_version: Optional[pulumi.Input[str]] = None,
@@ -210,6 +229,8 @@ class _RepositoryState:
210
229
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
211
230
  :param pulumi.Input['RepositoryGitRemoteSettingsArgs'] git_remote_settings: Optional. If set, configures this repository to be linked to a Git remote.
212
231
  Structure is documented below.
232
+ :param pulumi.Input[str] kms_key_name: Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
233
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
213
234
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Repository user labels.
214
235
  An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
215
236
 
@@ -235,6 +256,8 @@ class _RepositoryState:
235
256
  pulumi.set(__self__, "effective_labels", effective_labels)
236
257
  if git_remote_settings is not None:
237
258
  pulumi.set(__self__, "git_remote_settings", git_remote_settings)
259
+ if kms_key_name is not None:
260
+ pulumi.set(__self__, "kms_key_name", kms_key_name)
238
261
  if labels is not None:
239
262
  pulumi.set(__self__, "labels", labels)
240
263
  if name is not None:
@@ -289,6 +312,19 @@ class _RepositoryState:
289
312
  def git_remote_settings(self, value: Optional[pulumi.Input['RepositoryGitRemoteSettingsArgs']]):
290
313
  pulumi.set(self, "git_remote_settings", value)
291
314
 
315
+ @property
316
+ @pulumi.getter(name="kmsKeyName")
317
+ def kms_key_name(self) -> Optional[pulumi.Input[str]]:
318
+ """
319
+ Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
320
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
321
+ """
322
+ return pulumi.get(self, "kms_key_name")
323
+
324
+ @kms_key_name.setter
325
+ def kms_key_name(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "kms_key_name", value)
327
+
292
328
  @property
293
329
  @pulumi.getter
294
330
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
@@ -403,6 +439,7 @@ class Repository(pulumi.CustomResource):
403
439
  opts: Optional[pulumi.ResourceOptions] = None,
404
440
  display_name: Optional[pulumi.Input[str]] = None,
405
441
  git_remote_settings: Optional[pulumi.Input[Union['RepositoryGitRemoteSettingsArgs', 'RepositoryGitRemoteSettingsArgsDict']]] = None,
442
+ kms_key_name: Optional[pulumi.Input[str]] = None,
406
443
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
407
444
  name: Optional[pulumi.Input[str]] = None,
408
445
  npmrc_environment_variables_secret_version: Optional[pulumi.Input[str]] = None,
@@ -428,10 +465,21 @@ class Repository(pulumi.CustomResource):
428
465
  secret_version = gcp.secretmanager.SecretVersion("secret_version",
429
466
  secret=secret.id,
430
467
  secret_data="secret-data")
468
+ keyring = gcp.kms.KeyRing("keyring",
469
+ name="example-key-ring",
470
+ location="us-central1")
471
+ example_key = gcp.kms.CryptoKey("example_key",
472
+ name="example-crypto-key-name",
473
+ key_ring=keyring.id)
474
+ crypto_key_binding = gcp.kms.CryptoKeyIAMBinding("crypto_key_binding",
475
+ crypto_key_id=example_key.id,
476
+ role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
477
+ members=[f"serviceAccount:service-{project['number']}@gcp-sa-dataform.iam.gserviceaccount.com"])
431
478
  dataform_repository = gcp.dataform.Repository("dataform_repository",
432
479
  name="dataform_repository",
433
480
  display_name="dataform_repository",
434
481
  npmrc_environment_variables_secret_version=secret_version.id,
482
+ kms_key_name=example_key.id,
435
483
  labels={
436
484
  "label_foo1": "label-bar1",
437
485
  },
@@ -444,7 +492,8 @@ class Repository(pulumi.CustomResource):
444
492
  "default_database": "database",
445
493
  "schema_suffix": "_suffix",
446
494
  "table_prefix": "prefix_",
447
- })
495
+ },
496
+ opts = pulumi.ResourceOptions(depends_on=[crypto_key_binding]))
448
497
  ```
449
498
 
450
499
  ## Import
@@ -482,6 +531,8 @@ class Repository(pulumi.CustomResource):
482
531
  :param pulumi.Input[str] display_name: Optional. The repository's user-friendly name.
483
532
  :param pulumi.Input[Union['RepositoryGitRemoteSettingsArgs', 'RepositoryGitRemoteSettingsArgsDict']] git_remote_settings: Optional. If set, configures this repository to be linked to a Git remote.
484
533
  Structure is documented below.
534
+ :param pulumi.Input[str] kms_key_name: Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
535
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
485
536
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Repository user labels.
486
537
  An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
487
538
 
@@ -522,10 +573,21 @@ class Repository(pulumi.CustomResource):
522
573
  secret_version = gcp.secretmanager.SecretVersion("secret_version",
523
574
  secret=secret.id,
524
575
  secret_data="secret-data")
576
+ keyring = gcp.kms.KeyRing("keyring",
577
+ name="example-key-ring",
578
+ location="us-central1")
579
+ example_key = gcp.kms.CryptoKey("example_key",
580
+ name="example-crypto-key-name",
581
+ key_ring=keyring.id)
582
+ crypto_key_binding = gcp.kms.CryptoKeyIAMBinding("crypto_key_binding",
583
+ crypto_key_id=example_key.id,
584
+ role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
585
+ members=[f"serviceAccount:service-{project['number']}@gcp-sa-dataform.iam.gserviceaccount.com"])
525
586
  dataform_repository = gcp.dataform.Repository("dataform_repository",
526
587
  name="dataform_repository",
527
588
  display_name="dataform_repository",
528
589
  npmrc_environment_variables_secret_version=secret_version.id,
590
+ kms_key_name=example_key.id,
529
591
  labels={
530
592
  "label_foo1": "label-bar1",
531
593
  },
@@ -538,7 +600,8 @@ class Repository(pulumi.CustomResource):
538
600
  "default_database": "database",
539
601
  "schema_suffix": "_suffix",
540
602
  "table_prefix": "prefix_",
541
- })
603
+ },
604
+ opts = pulumi.ResourceOptions(depends_on=[crypto_key_binding]))
542
605
  ```
543
606
 
544
607
  ## Import
@@ -588,6 +651,7 @@ class Repository(pulumi.CustomResource):
588
651
  opts: Optional[pulumi.ResourceOptions] = None,
589
652
  display_name: Optional[pulumi.Input[str]] = None,
590
653
  git_remote_settings: Optional[pulumi.Input[Union['RepositoryGitRemoteSettingsArgs', 'RepositoryGitRemoteSettingsArgsDict']]] = None,
654
+ kms_key_name: Optional[pulumi.Input[str]] = None,
591
655
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
592
656
  name: Optional[pulumi.Input[str]] = None,
593
657
  npmrc_environment_variables_secret_version: Optional[pulumi.Input[str]] = None,
@@ -606,6 +670,7 @@ class Repository(pulumi.CustomResource):
606
670
 
607
671
  __props__.__dict__["display_name"] = display_name
608
672
  __props__.__dict__["git_remote_settings"] = git_remote_settings
673
+ __props__.__dict__["kms_key_name"] = kms_key_name
609
674
  __props__.__dict__["labels"] = labels
610
675
  __props__.__dict__["name"] = name
611
676
  __props__.__dict__["npmrc_environment_variables_secret_version"] = npmrc_environment_variables_secret_version
@@ -630,6 +695,7 @@ class Repository(pulumi.CustomResource):
630
695
  display_name: Optional[pulumi.Input[str]] = None,
631
696
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
632
697
  git_remote_settings: Optional[pulumi.Input[Union['RepositoryGitRemoteSettingsArgs', 'RepositoryGitRemoteSettingsArgsDict']]] = None,
698
+ kms_key_name: Optional[pulumi.Input[str]] = None,
633
699
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
634
700
  name: Optional[pulumi.Input[str]] = None,
635
701
  npmrc_environment_variables_secret_version: Optional[pulumi.Input[str]] = None,
@@ -649,6 +715,8 @@ class Repository(pulumi.CustomResource):
649
715
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
650
716
  :param pulumi.Input[Union['RepositoryGitRemoteSettingsArgs', 'RepositoryGitRemoteSettingsArgsDict']] git_remote_settings: Optional. If set, configures this repository to be linked to a Git remote.
651
717
  Structure is documented below.
718
+ :param pulumi.Input[str] kms_key_name: Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
719
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
652
720
  :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Optional. Repository user labels.
653
721
  An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
654
722
 
@@ -675,6 +743,7 @@ class Repository(pulumi.CustomResource):
675
743
  __props__.__dict__["display_name"] = display_name
676
744
  __props__.__dict__["effective_labels"] = effective_labels
677
745
  __props__.__dict__["git_remote_settings"] = git_remote_settings
746
+ __props__.__dict__["kms_key_name"] = kms_key_name
678
747
  __props__.__dict__["labels"] = labels
679
748
  __props__.__dict__["name"] = name
680
749
  __props__.__dict__["npmrc_environment_variables_secret_version"] = npmrc_environment_variables_secret_version
@@ -710,6 +779,15 @@ class Repository(pulumi.CustomResource):
710
779
  """
711
780
  return pulumi.get(self, "git_remote_settings")
712
781
 
782
+ @property
783
+ @pulumi.getter(name="kmsKeyName")
784
+ def kms_key_name(self) -> pulumi.Output[Optional[str]]:
785
+ """
786
+ Optional. The reference to a KMS encryption key. If provided, it will be used to encrypt user data in the repository and all child resources.
787
+ It is not possible to add or update the encryption key after the repository is created. Example projects/[kms_project_id]/locations/[region]/keyRings/[key_region]/cryptoKeys/[key]
788
+ """
789
+ return pulumi.get(self, "kms_key_name")
790
+
713
791
  @property
714
792
  @pulumi.getter
715
793
  def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
@@ -29,6 +29,7 @@ class DataStoreArgs:
29
29
  create_advanced_site_search: Optional[pulumi.Input[bool]] = None,
30
30
  document_processing_config: Optional[pulumi.Input['DataStoreDocumentProcessingConfigArgs']] = None,
31
31
  project: Optional[pulumi.Input[str]] = None,
32
+ skip_default_schema_creation: Optional[pulumi.Input[bool]] = None,
32
33
  solution_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
33
34
  """
34
35
  The set of arguments for constructing a DataStore resource.
@@ -51,6 +52,13 @@ class DataStoreArgs:
51
52
  Structure is documented below.
52
53
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
53
54
  If it is not provided, the provider project is used.
55
+ :param pulumi.Input[bool] skip_default_schema_creation: A boolean flag indicating whether to skip the default schema creation for
56
+ the data store. Only enable this flag if you are certain that the default
57
+ schema is incompatible with your use case.
58
+ If set to true, you must manually create a schema for the data store
59
+ before any documents can be ingested.
60
+ This flag cannot be specified if `data_store.starting_schema` is
61
+ specified.
54
62
  :param pulumi.Input[Sequence[pulumi.Input[str]]] solution_types: The solutions that the data store enrolls.
55
63
  Each value may be one of: `SOLUTION_TYPE_RECOMMENDATION`, `SOLUTION_TYPE_SEARCH`, `SOLUTION_TYPE_CHAT`.
56
64
  """
@@ -65,6 +73,8 @@ class DataStoreArgs:
65
73
  pulumi.set(__self__, "document_processing_config", document_processing_config)
66
74
  if project is not None:
67
75
  pulumi.set(__self__, "project", project)
76
+ if skip_default_schema_creation is not None:
77
+ pulumi.set(__self__, "skip_default_schema_creation", skip_default_schema_creation)
68
78
  if solution_types is not None:
69
79
  pulumi.set(__self__, "solution_types", solution_types)
70
80
 
@@ -175,6 +185,24 @@ class DataStoreArgs:
175
185
  def project(self, value: Optional[pulumi.Input[str]]):
176
186
  pulumi.set(self, "project", value)
177
187
 
188
+ @property
189
+ @pulumi.getter(name="skipDefaultSchemaCreation")
190
+ def skip_default_schema_creation(self) -> Optional[pulumi.Input[bool]]:
191
+ """
192
+ A boolean flag indicating whether to skip the default schema creation for
193
+ the data store. Only enable this flag if you are certain that the default
194
+ schema is incompatible with your use case.
195
+ If set to true, you must manually create a schema for the data store
196
+ before any documents can be ingested.
197
+ This flag cannot be specified if `data_store.starting_schema` is
198
+ specified.
199
+ """
200
+ return pulumi.get(self, "skip_default_schema_creation")
201
+
202
+ @skip_default_schema_creation.setter
203
+ def skip_default_schema_creation(self, value: Optional[pulumi.Input[bool]]):
204
+ pulumi.set(self, "skip_default_schema_creation", value)
205
+
178
206
  @property
179
207
  @pulumi.getter(name="solutionTypes")
180
208
  def solution_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
@@ -203,6 +231,7 @@ class _DataStoreState:
203
231
  location: Optional[pulumi.Input[str]] = None,
204
232
  name: Optional[pulumi.Input[str]] = None,
205
233
  project: Optional[pulumi.Input[str]] = None,
234
+ skip_default_schema_creation: Optional[pulumi.Input[bool]] = None,
206
235
  solution_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
207
236
  """
208
237
  Input properties used for looking up and filtering DataStore resources.
@@ -231,6 +260,13 @@ class _DataStoreState:
231
260
  characters.
232
261
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
233
262
  If it is not provided, the provider project is used.
263
+ :param pulumi.Input[bool] skip_default_schema_creation: A boolean flag indicating whether to skip the default schema creation for
264
+ the data store. Only enable this flag if you are certain that the default
265
+ schema is incompatible with your use case.
266
+ If set to true, you must manually create a schema for the data store
267
+ before any documents can be ingested.
268
+ This flag cannot be specified if `data_store.starting_schema` is
269
+ specified.
234
270
  :param pulumi.Input[Sequence[pulumi.Input[str]]] solution_types: The solutions that the data store enrolls.
235
271
  Each value may be one of: `SOLUTION_TYPE_RECOMMENDATION`, `SOLUTION_TYPE_SEARCH`, `SOLUTION_TYPE_CHAT`.
236
272
  """
@@ -256,6 +292,8 @@ class _DataStoreState:
256
292
  pulumi.set(__self__, "name", name)
257
293
  if project is not None:
258
294
  pulumi.set(__self__, "project", project)
295
+ if skip_default_schema_creation is not None:
296
+ pulumi.set(__self__, "skip_default_schema_creation", skip_default_schema_creation)
259
297
  if solution_types is not None:
260
298
  pulumi.set(__self__, "solution_types", solution_types)
261
299
 
@@ -405,6 +443,24 @@ class _DataStoreState:
405
443
  def project(self, value: Optional[pulumi.Input[str]]):
406
444
  pulumi.set(self, "project", value)
407
445
 
446
+ @property
447
+ @pulumi.getter(name="skipDefaultSchemaCreation")
448
+ def skip_default_schema_creation(self) -> Optional[pulumi.Input[bool]]:
449
+ """
450
+ A boolean flag indicating whether to skip the default schema creation for
451
+ the data store. Only enable this flag if you are certain that the default
452
+ schema is incompatible with your use case.
453
+ If set to true, you must manually create a schema for the data store
454
+ before any documents can be ingested.
455
+ This flag cannot be specified if `data_store.starting_schema` is
456
+ specified.
457
+ """
458
+ return pulumi.get(self, "skip_default_schema_creation")
459
+
460
+ @skip_default_schema_creation.setter
461
+ def skip_default_schema_creation(self, value: Optional[pulumi.Input[bool]]):
462
+ pulumi.set(self, "skip_default_schema_creation", value)
463
+
408
464
  @property
409
465
  @pulumi.getter(name="solutionTypes")
410
466
  def solution_types(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
@@ -432,6 +488,7 @@ class DataStore(pulumi.CustomResource):
432
488
  industry_vertical: Optional[pulumi.Input[str]] = None,
433
489
  location: Optional[pulumi.Input[str]] = None,
434
490
  project: Optional[pulumi.Input[str]] = None,
491
+ skip_default_schema_creation: Optional[pulumi.Input[bool]] = None,
435
492
  solution_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
436
493
  __props__=None):
437
494
  """
@@ -460,7 +517,8 @@ class DataStore(pulumi.CustomResource):
460
517
  industry_vertical="GENERIC",
461
518
  content_config="NO_CONTENT",
462
519
  solution_types=["SOLUTION_TYPE_SEARCH"],
463
- create_advanced_site_search=False)
520
+ create_advanced_site_search=False,
521
+ skip_default_schema_creation=False)
464
522
  ```
465
523
  ### Discoveryengine Datastore Document Processing Config
466
524
 
@@ -534,6 +592,13 @@ class DataStore(pulumi.CustomResource):
534
592
  only be one of "global", "us" and "eu".
535
593
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
536
594
  If it is not provided, the provider project is used.
595
+ :param pulumi.Input[bool] skip_default_schema_creation: A boolean flag indicating whether to skip the default schema creation for
596
+ the data store. Only enable this flag if you are certain that the default
597
+ schema is incompatible with your use case.
598
+ If set to true, you must manually create a schema for the data store
599
+ before any documents can be ingested.
600
+ This flag cannot be specified if `data_store.starting_schema` is
601
+ specified.
537
602
  :param pulumi.Input[Sequence[pulumi.Input[str]]] solution_types: The solutions that the data store enrolls.
538
603
  Each value may be one of: `SOLUTION_TYPE_RECOMMENDATION`, `SOLUTION_TYPE_SEARCH`, `SOLUTION_TYPE_CHAT`.
539
604
  """
@@ -569,7 +634,8 @@ class DataStore(pulumi.CustomResource):
569
634
  industry_vertical="GENERIC",
570
635
  content_config="NO_CONTENT",
571
636
  solution_types=["SOLUTION_TYPE_SEARCH"],
572
- create_advanced_site_search=False)
637
+ create_advanced_site_search=False,
638
+ skip_default_schema_creation=False)
573
639
  ```
574
640
  ### Discoveryengine Datastore Document Processing Config
575
641
 
@@ -645,6 +711,7 @@ class DataStore(pulumi.CustomResource):
645
711
  industry_vertical: Optional[pulumi.Input[str]] = None,
646
712
  location: Optional[pulumi.Input[str]] = None,
647
713
  project: Optional[pulumi.Input[str]] = None,
714
+ skip_default_schema_creation: Optional[pulumi.Input[bool]] = None,
648
715
  solution_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
649
716
  __props__=None):
650
717
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -673,6 +740,7 @@ class DataStore(pulumi.CustomResource):
673
740
  raise TypeError("Missing required property 'location'")
674
741
  __props__.__dict__["location"] = location
675
742
  __props__.__dict__["project"] = project
743
+ __props__.__dict__["skip_default_schema_creation"] = skip_default_schema_creation
676
744
  __props__.__dict__["solution_types"] = solution_types
677
745
  __props__.__dict__["create_time"] = None
678
746
  __props__.__dict__["default_schema_id"] = None
@@ -698,6 +766,7 @@ class DataStore(pulumi.CustomResource):
698
766
  location: Optional[pulumi.Input[str]] = None,
699
767
  name: Optional[pulumi.Input[str]] = None,
700
768
  project: Optional[pulumi.Input[str]] = None,
769
+ skip_default_schema_creation: Optional[pulumi.Input[bool]] = None,
701
770
  solution_types: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'DataStore':
702
771
  """
703
772
  Get an existing DataStore resource's state with the given name, id, and optional extra
@@ -731,6 +800,13 @@ class DataStore(pulumi.CustomResource):
731
800
  characters.
732
801
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
733
802
  If it is not provided, the provider project is used.
803
+ :param pulumi.Input[bool] skip_default_schema_creation: A boolean flag indicating whether to skip the default schema creation for
804
+ the data store. Only enable this flag if you are certain that the default
805
+ schema is incompatible with your use case.
806
+ If set to true, you must manually create a schema for the data store
807
+ before any documents can be ingested.
808
+ This flag cannot be specified if `data_store.starting_schema` is
809
+ specified.
734
810
  :param pulumi.Input[Sequence[pulumi.Input[str]]] solution_types: The solutions that the data store enrolls.
735
811
  Each value may be one of: `SOLUTION_TYPE_RECOMMENDATION`, `SOLUTION_TYPE_SEARCH`, `SOLUTION_TYPE_CHAT`.
736
812
  """
@@ -749,6 +825,7 @@ class DataStore(pulumi.CustomResource):
749
825
  __props__.__dict__["location"] = location
750
826
  __props__.__dict__["name"] = name
751
827
  __props__.__dict__["project"] = project
828
+ __props__.__dict__["skip_default_schema_creation"] = skip_default_schema_creation
752
829
  __props__.__dict__["solution_types"] = solution_types
753
830
  return DataStore(resource_name, opts=opts, __props__=__props__)
754
831
 
@@ -854,6 +931,20 @@ class DataStore(pulumi.CustomResource):
854
931
  """
855
932
  return pulumi.get(self, "project")
856
933
 
934
+ @property
935
+ @pulumi.getter(name="skipDefaultSchemaCreation")
936
+ def skip_default_schema_creation(self) -> pulumi.Output[Optional[bool]]:
937
+ """
938
+ A boolean flag indicating whether to skip the default schema creation for
939
+ the data store. Only enable this flag if you are certain that the default
940
+ schema is incompatible with your use case.
941
+ If set to true, you must manually create a schema for the data store
942
+ before any documents can be ingested.
943
+ This flag cannot be specified if `data_store.starting_schema` is
944
+ specified.
945
+ """
946
+ return pulumi.get(self, "skip_default_schema_creation")
947
+
857
948
  @property
858
949
  @pulumi.getter(name="solutionTypes")
859
950
  def solution_types(self) -> pulumi.Output[Optional[Sequence[str]]]: