pulumi-gcp 7.27.0a1718247696__py3-none-any.whl → 7.28.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 (59) hide show
  1. pulumi_gcp/__init__.py +59 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +58 -74
  3. pulumi_gcp/accesscontextmanager/access_levels.py +0 -20
  4. pulumi_gcp/accesscontextmanager/outputs.py +58 -74
  5. pulumi_gcp/accesscontextmanager/service_perimeter.py +2 -0
  6. pulumi_gcp/bigtable/_inputs.py +40 -0
  7. pulumi_gcp/bigtable/outputs.py +49 -0
  8. pulumi_gcp/bigtable/table.py +54 -0
  9. pulumi_gcp/cloudbuildv2/_inputs.py +383 -0
  10. pulumi_gcp/cloudbuildv2/connection.py +110 -2
  11. pulumi_gcp/cloudbuildv2/outputs.py +421 -0
  12. pulumi_gcp/composer/__init__.py +3 -0
  13. pulumi_gcp/composer/get_user_workloads_config_map.py +190 -0
  14. pulumi_gcp/composer/get_user_workloads_secret.py +188 -0
  15. pulumi_gcp/composer/user_workloads_config_map.py +475 -0
  16. pulumi_gcp/compute/_inputs.py +4 -2
  17. pulumi_gcp/compute/backend_service.py +28 -48
  18. pulumi_gcp/compute/interconnect.py +4 -4
  19. pulumi_gcp/compute/outputs.py +10 -4
  20. pulumi_gcp/compute/region_backend_service.py +35 -48
  21. pulumi_gcp/compute/region_network_endpoint.py +187 -0
  22. pulumi_gcp/compute/region_network_endpoint_group.py +49 -9
  23. pulumi_gcp/compute/region_target_https_proxy.py +7 -14
  24. pulumi_gcp/compute/target_https_proxy.py +28 -14
  25. pulumi_gcp/config/__init__.pyi +2 -0
  26. pulumi_gcp/config/vars.py +4 -0
  27. pulumi_gcp/container/_inputs.py +2 -2
  28. pulumi_gcp/container/outputs.py +4 -4
  29. pulumi_gcp/discoveryengine/_inputs.py +227 -0
  30. pulumi_gcp/discoveryengine/data_store.py +108 -0
  31. pulumi_gcp/discoveryengine/outputs.py +280 -0
  32. pulumi_gcp/edgecontainer/_inputs.py +107 -1
  33. pulumi_gcp/edgecontainer/outputs.py +123 -1
  34. pulumi_gcp/gkehub/_inputs.py +16 -0
  35. pulumi_gcp/gkehub/outputs.py +15 -1
  36. pulumi_gcp/kms/crypto_key.py +2 -6
  37. pulumi_gcp/logging/folder_sink.py +14 -14
  38. pulumi_gcp/logging/organization_sink.py +14 -14
  39. pulumi_gcp/managedkafka/__init__.py +11 -0
  40. pulumi_gcp/managedkafka/_inputs.py +169 -0
  41. pulumi_gcp/managedkafka/cluster.py +807 -0
  42. pulumi_gcp/managedkafka/outputs.py +197 -0
  43. pulumi_gcp/managedkafka/topic.py +599 -0
  44. pulumi_gcp/netapp/__init__.py +1 -0
  45. pulumi_gcp/netapp/active_directory.py +55 -0
  46. pulumi_gcp/netapp/backup.py +903 -0
  47. pulumi_gcp/provider.py +20 -0
  48. pulumi_gcp/pulumi-plugin.json +1 -1
  49. pulumi_gcp/securitycenter/__init__.py +3 -0
  50. pulumi_gcp/securitycenter/_inputs.py +1105 -0
  51. pulumi_gcp/securitycenter/management_folder_security_health_analytics_custom_module.py +725 -0
  52. pulumi_gcp/securitycenter/management_organization_security_health_analytics_custom_module.py +713 -0
  53. pulumi_gcp/securitycenter/management_project_security_health_analytics_custom_module.py +706 -0
  54. pulumi_gcp/securitycenter/outputs.py +1048 -0
  55. pulumi_gcp/vertex/ai_feature_online_store.py +37 -8
  56. {pulumi_gcp-7.27.0a1718247696.dist-info → pulumi_gcp-7.28.0.dist-info}/METADATA +1 -1
  57. {pulumi_gcp-7.27.0a1718247696.dist-info → pulumi_gcp-7.28.0.dist-info}/RECORD +59 -47
  58. {pulumi_gcp-7.27.0a1718247696.dist-info → pulumi_gcp-7.28.0.dist-info}/WHEEL +1 -1
  59. {pulumi_gcp-7.27.0a1718247696.dist-info → pulumi_gcp-7.28.0.dist-info}/top_level.txt +0 -0
@@ -21,6 +21,8 @@ __all__ = [
21
21
  'ClusterFleet',
22
22
  'ClusterMaintenanceEvent',
23
23
  'ClusterMaintenancePolicy',
24
+ 'ClusterMaintenancePolicyMaintenanceExclusion',
25
+ 'ClusterMaintenancePolicyMaintenanceExclusionWindow',
24
26
  'ClusterMaintenancePolicyWindow',
25
27
  'ClusterMaintenancePolicyWindowRecurringWindow',
26
28
  'ClusterMaintenancePolicyWindowRecurringWindowWindow',
@@ -624,13 +626,37 @@ class ClusterMaintenanceEvent(dict):
624
626
 
625
627
  @pulumi.output_type
626
628
  class ClusterMaintenancePolicy(dict):
629
+ @staticmethod
630
+ def __key_warning(key: str):
631
+ suggest = None
632
+ if key == "maintenanceExclusions":
633
+ suggest = "maintenance_exclusions"
634
+
635
+ if suggest:
636
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenancePolicy. Access the value via the '{suggest}' property getter instead.")
637
+
638
+ def __getitem__(self, key: str) -> Any:
639
+ ClusterMaintenancePolicy.__key_warning(key)
640
+ return super().__getitem__(key)
641
+
642
+ def get(self, key: str, default = None) -> Any:
643
+ ClusterMaintenancePolicy.__key_warning(key)
644
+ return super().get(key, default)
645
+
627
646
  def __init__(__self__, *,
628
- window: 'outputs.ClusterMaintenancePolicyWindow'):
647
+ window: 'outputs.ClusterMaintenancePolicyWindow',
648
+ maintenance_exclusions: Optional[Sequence['outputs.ClusterMaintenancePolicyMaintenanceExclusion']] = None):
629
649
  """
630
650
  :param 'ClusterMaintenancePolicyWindowArgs' window: Specifies the maintenance window in which maintenance may be performed.
631
651
  Structure is documented below.
652
+ :param Sequence['ClusterMaintenancePolicyMaintenanceExclusionArgs'] maintenance_exclusions: Exclusions to automatic maintenance. Non-emergency maintenance should not occur
653
+ in these windows. Each exclusion has a unique name and may be active or expired.
654
+ The max number of maintenance exclusions allowed at a given time is 3.
655
+ Structure is documented below.
632
656
  """
633
657
  pulumi.set(__self__, "window", window)
658
+ if maintenance_exclusions is not None:
659
+ pulumi.set(__self__, "maintenance_exclusions", maintenance_exclusions)
634
660
 
635
661
  @property
636
662
  @pulumi.getter
@@ -641,6 +667,102 @@ class ClusterMaintenancePolicy(dict):
641
667
  """
642
668
  return pulumi.get(self, "window")
643
669
 
670
+ @property
671
+ @pulumi.getter(name="maintenanceExclusions")
672
+ def maintenance_exclusions(self) -> Optional[Sequence['outputs.ClusterMaintenancePolicyMaintenanceExclusion']]:
673
+ """
674
+ Exclusions to automatic maintenance. Non-emergency maintenance should not occur
675
+ in these windows. Each exclusion has a unique name and may be active or expired.
676
+ The max number of maintenance exclusions allowed at a given time is 3.
677
+ Structure is documented below.
678
+ """
679
+ return pulumi.get(self, "maintenance_exclusions")
680
+
681
+
682
+ @pulumi.output_type
683
+ class ClusterMaintenancePolicyMaintenanceExclusion(dict):
684
+ def __init__(__self__, *,
685
+ id: Optional[str] = None,
686
+ window: Optional['outputs.ClusterMaintenancePolicyMaintenanceExclusionWindow'] = None):
687
+ """
688
+ :param str id: A unique (per cluster) id for the window.
689
+ :param 'ClusterMaintenancePolicyMaintenanceExclusionWindowArgs' window: Represents an arbitrary window of time.
690
+ Structure is documented below.
691
+ """
692
+ if id is not None:
693
+ pulumi.set(__self__, "id", id)
694
+ if window is not None:
695
+ pulumi.set(__self__, "window", window)
696
+
697
+ @property
698
+ @pulumi.getter
699
+ def id(self) -> Optional[str]:
700
+ """
701
+ A unique (per cluster) id for the window.
702
+ """
703
+ return pulumi.get(self, "id")
704
+
705
+ @property
706
+ @pulumi.getter
707
+ def window(self) -> Optional['outputs.ClusterMaintenancePolicyMaintenanceExclusionWindow']:
708
+ """
709
+ Represents an arbitrary window of time.
710
+ Structure is documented below.
711
+ """
712
+ return pulumi.get(self, "window")
713
+
714
+
715
+ @pulumi.output_type
716
+ class ClusterMaintenancePolicyMaintenanceExclusionWindow(dict):
717
+ @staticmethod
718
+ def __key_warning(key: str):
719
+ suggest = None
720
+ if key == "endTime":
721
+ suggest = "end_time"
722
+ elif key == "startTime":
723
+ suggest = "start_time"
724
+
725
+ if suggest:
726
+ pulumi.log.warn(f"Key '{key}' not found in ClusterMaintenancePolicyMaintenanceExclusionWindow. Access the value via the '{suggest}' property getter instead.")
727
+
728
+ def __getitem__(self, key: str) -> Any:
729
+ ClusterMaintenancePolicyMaintenanceExclusionWindow.__key_warning(key)
730
+ return super().__getitem__(key)
731
+
732
+ def get(self, key: str, default = None) -> Any:
733
+ ClusterMaintenancePolicyMaintenanceExclusionWindow.__key_warning(key)
734
+ return super().get(key, default)
735
+
736
+ def __init__(__self__, *,
737
+ end_time: Optional[str] = None,
738
+ start_time: Optional[str] = None):
739
+ """
740
+ :param str end_time: The time that the window ends. The end time must take place after the
741
+ start time.
742
+ :param str start_time: The time that the window first starts.
743
+ """
744
+ if end_time is not None:
745
+ pulumi.set(__self__, "end_time", end_time)
746
+ if start_time is not None:
747
+ pulumi.set(__self__, "start_time", start_time)
748
+
749
+ @property
750
+ @pulumi.getter(name="endTime")
751
+ def end_time(self) -> Optional[str]:
752
+ """
753
+ The time that the window ends. The end time must take place after the
754
+ start time.
755
+ """
756
+ return pulumi.get(self, "end_time")
757
+
758
+ @property
759
+ @pulumi.getter(name="startTime")
760
+ def start_time(self) -> Optional[str]:
761
+ """
762
+ The time that the window first starts.
763
+ """
764
+ return pulumi.get(self, "start_time")
765
+
644
766
 
645
767
  @pulumi.output_type
646
768
  class ClusterMaintenancePolicyWindow(dict):
@@ -191,18 +191,22 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs:
191
191
  def __init__(__self__, *,
192
192
  git: Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs']] = None,
193
193
  oci: Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs']] = None,
194
+ prevent_drift: Optional[pulumi.Input[bool]] = None,
194
195
  source_format: Optional[pulumi.Input[str]] = None):
195
196
  """
196
197
  :param pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs'] git: Git repo configuration for the cluster
197
198
  Structure is documented below.
198
199
  :param pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs'] oci: OCI repo configuration for the cluster
199
200
  Structure is documented below.
201
+ :param pulumi.Input[bool] prevent_drift: Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
200
202
  :param pulumi.Input[str] source_format: Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
201
203
  """
202
204
  if git is not None:
203
205
  pulumi.set(__self__, "git", git)
204
206
  if oci is not None:
205
207
  pulumi.set(__self__, "oci", oci)
208
+ if prevent_drift is not None:
209
+ pulumi.set(__self__, "prevent_drift", prevent_drift)
206
210
  if source_format is not None:
207
211
  pulumi.set(__self__, "source_format", source_format)
208
212
 
@@ -232,6 +236,18 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncArgs:
232
236
  def oci(self, value: Optional[pulumi.Input['FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs']]):
233
237
  pulumi.set(self, "oci", value)
234
238
 
239
+ @property
240
+ @pulumi.getter(name="preventDrift")
241
+ def prevent_drift(self) -> Optional[pulumi.Input[bool]]:
242
+ """
243
+ Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
244
+ """
245
+ return pulumi.get(self, "prevent_drift")
246
+
247
+ @prevent_drift.setter
248
+ def prevent_drift(self, value: Optional[pulumi.Input[bool]]):
249
+ pulumi.set(self, "prevent_drift", value)
250
+
235
251
  @property
236
252
  @pulumi.getter(name="sourceFormat")
237
253
  def source_format(self) -> Optional[pulumi.Input[str]]:
@@ -189,7 +189,9 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
189
189
  @staticmethod
190
190
  def __key_warning(key: str):
191
191
  suggest = None
192
- if key == "sourceFormat":
192
+ if key == "preventDrift":
193
+ suggest = "prevent_drift"
194
+ elif key == "sourceFormat":
193
195
  suggest = "source_format"
194
196
 
195
197
  if suggest:
@@ -206,18 +208,22 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
206
208
  def __init__(__self__, *,
207
209
  git: Optional['outputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGit'] = None,
208
210
  oci: Optional['outputs.FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOci'] = None,
211
+ prevent_drift: Optional[bool] = None,
209
212
  source_format: Optional[str] = None):
210
213
  """
211
214
  :param 'FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncGitArgs' git: Git repo configuration for the cluster
212
215
  Structure is documented below.
213
216
  :param 'FeatureFleetDefaultMemberConfigConfigmanagementConfigSyncOciArgs' oci: OCI repo configuration for the cluster
214
217
  Structure is documented below.
218
+ :param bool prevent_drift: Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
215
219
  :param str source_format: Specifies whether the Config Sync Repo is in hierarchical or unstructured mode
216
220
  """
217
221
  if git is not None:
218
222
  pulumi.set(__self__, "git", git)
219
223
  if oci is not None:
220
224
  pulumi.set(__self__, "oci", oci)
225
+ if prevent_drift is not None:
226
+ pulumi.set(__self__, "prevent_drift", prevent_drift)
221
227
  if source_format is not None:
222
228
  pulumi.set(__self__, "source_format", source_format)
223
229
 
@@ -239,6 +245,14 @@ class FeatureFleetDefaultMemberConfigConfigmanagementConfigSync(dict):
239
245
  """
240
246
  return pulumi.get(self, "oci")
241
247
 
248
+ @property
249
+ @pulumi.getter(name="preventDrift")
250
+ def prevent_drift(self) -> Optional[bool]:
251
+ """
252
+ Set to true to enable the Config Sync admission webhook to prevent drifts. If set to `false`, disables the Config Sync admission webhook and does not prevent drifts.
253
+ """
254
+ return pulumi.get(self, "prevent_drift")
255
+
242
256
  @property
243
257
  @pulumi.getter(name="sourceFormat")
244
258
  def source_format(self) -> Optional[str]:
@@ -498,9 +498,7 @@ class CryptoKey(pulumi.CustomResource):
498
498
  and delete all CryptoKeyVersions, rendering the key unusable, but *will
499
499
  not delete the resource from the project.* When the provider destroys these keys,
500
500
  any data previously encrypted with these keys will be irrecoverable.
501
- For this reason, it is strongly recommended that you add
502
- lifecycle
503
- hooks to the resource to prevent accidental destruction.
501
+ For this reason, it is strongly recommended that you use Pulumi's [protect resource option](https://www.pulumi.com/docs/concepts/options/protect/).
504
502
 
505
503
  To get more information about CryptoKey, see:
506
504
 
@@ -605,9 +603,7 @@ class CryptoKey(pulumi.CustomResource):
605
603
  and delete all CryptoKeyVersions, rendering the key unusable, but *will
606
604
  not delete the resource from the project.* When the provider destroys these keys,
607
605
  any data previously encrypted with these keys will be irrecoverable.
608
- For this reason, it is strongly recommended that you add
609
- lifecycle
610
- hooks to the resource to prevent accidental destruction.
606
+ For this reason, it is strongly recommended that you use Pulumi's [protect resource option](https://www.pulumi.com/docs/concepts/options/protect/).
611
607
 
612
608
  To get more information about CryptoKey, see:
613
609
 
@@ -48,8 +48,8 @@ class FolderSinkArgs:
48
48
  write a filter.
49
49
  :param pulumi.Input[bool] include_children: Whether or not to include children folders in the sink export. If true, logs
50
50
  associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
51
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
52
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
51
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
52
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
53
53
  :param pulumi.Input[str] name: The name of the logging sink.
54
54
  """
55
55
  pulumi.set(__self__, "destination", destination)
@@ -183,8 +183,8 @@ class FolderSinkArgs:
183
183
  @pulumi.getter(name="interceptChildren")
184
184
  def intercept_children(self) -> Optional[pulumi.Input[bool]]:
185
185
  """
186
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
187
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
186
+ Whether or not to intercept logs from child projects. If true, matching logs will not
187
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
188
188
  """
189
189
  return pulumi.get(self, "intercept_children")
190
190
 
@@ -241,8 +241,8 @@ class _FolderSinkState:
241
241
  accepted.
242
242
  :param pulumi.Input[bool] include_children: Whether or not to include children folders in the sink export. If true, logs
243
243
  associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
244
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
245
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
244
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
245
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
246
246
  :param pulumi.Input[str] name: The name of the logging sink.
247
247
  :param pulumi.Input[str] writer_identity: The identity associated with this sink. This identity must be granted write access to the
248
248
  configured `destination`.
@@ -382,8 +382,8 @@ class _FolderSinkState:
382
382
  @pulumi.getter(name="interceptChildren")
383
383
  def intercept_children(self) -> Optional[pulumi.Input[bool]]:
384
384
  """
385
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
386
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
385
+ Whether or not to intercept logs from child projects. If true, matching logs will not
386
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
387
387
  """
388
388
  return pulumi.get(self, "intercept_children")
389
389
 
@@ -497,8 +497,8 @@ class FolderSink(pulumi.CustomResource):
497
497
  accepted.
498
498
  :param pulumi.Input[bool] include_children: Whether or not to include children folders in the sink export. If true, logs
499
499
  associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
500
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
501
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
500
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
501
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
502
502
  :param pulumi.Input[str] name: The name of the logging sink.
503
503
  """
504
504
  ...
@@ -646,8 +646,8 @@ class FolderSink(pulumi.CustomResource):
646
646
  accepted.
647
647
  :param pulumi.Input[bool] include_children: Whether or not to include children folders in the sink export. If true, logs
648
648
  associated with child projects are also exported; otherwise only logs relating to the provided folder are included.
649
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
650
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
649
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
650
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
651
651
  :param pulumi.Input[str] name: The name of the logging sink.
652
652
  :param pulumi.Input[str] writer_identity: The identity associated with this sink. This identity must be granted write access to the
653
653
  configured `destination`.
@@ -749,8 +749,8 @@ class FolderSink(pulumi.CustomResource):
749
749
  @pulumi.getter(name="interceptChildren")
750
750
  def intercept_children(self) -> pulumi.Output[Optional[bool]]:
751
751
  """
752
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
753
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
752
+ Whether or not to intercept logs from child projects. If true, matching logs will not
753
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
754
754
  """
755
755
  return pulumi.get(self, "intercept_children")
756
756
 
@@ -47,8 +47,8 @@ class OrganizationSinkArgs:
47
47
  write a filter.
48
48
  :param pulumi.Input[bool] include_children: Whether or not to include children organizations in the sink export. If true, logs
49
49
  associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
50
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
51
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
50
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
51
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
52
52
  :param pulumi.Input[str] name: The name of the logging sink.
53
53
  """
54
54
  pulumi.set(__self__, "destination", destination)
@@ -181,8 +181,8 @@ class OrganizationSinkArgs:
181
181
  @pulumi.getter(name="interceptChildren")
182
182
  def intercept_children(self) -> Optional[pulumi.Input[bool]]:
183
183
  """
184
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
185
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
184
+ Whether or not to intercept logs from child projects. If true, matching logs will not
185
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
186
186
  """
187
187
  return pulumi.get(self, "intercept_children")
188
188
 
@@ -237,8 +237,8 @@ class _OrganizationSinkState:
237
237
  write a filter.
238
238
  :param pulumi.Input[bool] include_children: Whether or not to include children organizations in the sink export. If true, logs
239
239
  associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
240
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
241
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
240
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
241
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
242
242
  :param pulumi.Input[str] name: The name of the logging sink.
243
243
  :param pulumi.Input[str] org_id: The numeric ID of the organization to be exported to the sink.
244
244
  :param pulumi.Input[str] writer_identity: The identity associated with this sink. This identity must be granted write access to the
@@ -366,8 +366,8 @@ class _OrganizationSinkState:
366
366
  @pulumi.getter(name="interceptChildren")
367
367
  def intercept_children(self) -> Optional[pulumi.Input[bool]]:
368
368
  """
369
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
370
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
369
+ Whether or not to intercept logs from child projects. If true, matching logs will not
370
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
371
371
  """
372
372
  return pulumi.get(self, "intercept_children")
373
373
 
@@ -488,8 +488,8 @@ class OrganizationSink(pulumi.CustomResource):
488
488
  write a filter.
489
489
  :param pulumi.Input[bool] include_children: Whether or not to include children organizations in the sink export. If true, logs
490
490
  associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
491
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
492
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
491
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
492
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
493
493
  :param pulumi.Input[str] name: The name of the logging sink.
494
494
  :param pulumi.Input[str] org_id: The numeric ID of the organization to be exported to the sink.
495
495
  """
@@ -633,8 +633,8 @@ class OrganizationSink(pulumi.CustomResource):
633
633
  write a filter.
634
634
  :param pulumi.Input[bool] include_children: Whether or not to include children organizations in the sink export. If true, logs
635
635
  associated with child projects are also exported; otherwise only logs relating to the provided organization are included.
636
- :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
637
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
636
+ :param pulumi.Input[bool] intercept_children: Whether or not to intercept logs from child projects. If true, matching logs will not
637
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
638
638
  :param pulumi.Input[str] name: The name of the logging sink.
639
639
  :param pulumi.Input[str] org_id: The numeric ID of the organization to be exported to the sink.
640
640
  :param pulumi.Input[str] writer_identity: The identity associated with this sink. This identity must be granted write access to the
@@ -728,8 +728,8 @@ class OrganizationSink(pulumi.CustomResource):
728
728
  @pulumi.getter(name="interceptChildren")
729
729
  def intercept_children(self) -> pulumi.Output[Optional[bool]]:
730
730
  """
731
- Whether or not to intercept logs from child projects. If true, matching logs will not match with sinks in child
732
- resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
731
+ Whether or not to intercept logs from child projects. If true, matching logs will not
732
+ match with sinks in child resources, except _Required sinks. This sink will be visible to child resources when listing sinks.
733
733
  """
734
734
  return pulumi.get(self, "intercept_children")
735
735
 
@@ -0,0 +1,11 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ from .. import _utilities
6
+ import typing
7
+ # Export this package's modules as members:
8
+ from .cluster import *
9
+ from .topic import *
10
+ from ._inputs import *
11
+ from . import outputs
@@ -0,0 +1,169 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+
12
+ __all__ = [
13
+ 'ClusterCapacityConfigArgs',
14
+ 'ClusterGcpConfigArgs',
15
+ 'ClusterGcpConfigAccessConfigArgs',
16
+ 'ClusterGcpConfigAccessConfigNetworkConfigArgs',
17
+ 'ClusterRebalanceConfigArgs',
18
+ ]
19
+
20
+ @pulumi.input_type
21
+ class ClusterCapacityConfigArgs:
22
+ def __init__(__self__, *,
23
+ memory_bytes: pulumi.Input[str],
24
+ vcpu_count: pulumi.Input[str]):
25
+ """
26
+ :param pulumi.Input[str] memory_bytes: The memory to provision for the cluster in bytes. The value must be between 1 GiB and 8 GiB per vCPU. Ex. 1024Mi, 4Gi.
27
+
28
+ - - -
29
+ :param pulumi.Input[str] vcpu_count: The number of vCPUs to provision for the cluster. The minimum is 3.
30
+ """
31
+ pulumi.set(__self__, "memory_bytes", memory_bytes)
32
+ pulumi.set(__self__, "vcpu_count", vcpu_count)
33
+
34
+ @property
35
+ @pulumi.getter(name="memoryBytes")
36
+ def memory_bytes(self) -> pulumi.Input[str]:
37
+ """
38
+ The memory to provision for the cluster in bytes. The value must be between 1 GiB and 8 GiB per vCPU. Ex. 1024Mi, 4Gi.
39
+
40
+ - - -
41
+ """
42
+ return pulumi.get(self, "memory_bytes")
43
+
44
+ @memory_bytes.setter
45
+ def memory_bytes(self, value: pulumi.Input[str]):
46
+ pulumi.set(self, "memory_bytes", value)
47
+
48
+ @property
49
+ @pulumi.getter(name="vcpuCount")
50
+ def vcpu_count(self) -> pulumi.Input[str]:
51
+ """
52
+ The number of vCPUs to provision for the cluster. The minimum is 3.
53
+ """
54
+ return pulumi.get(self, "vcpu_count")
55
+
56
+ @vcpu_count.setter
57
+ def vcpu_count(self, value: pulumi.Input[str]):
58
+ pulumi.set(self, "vcpu_count", value)
59
+
60
+
61
+ @pulumi.input_type
62
+ class ClusterGcpConfigArgs:
63
+ def __init__(__self__, *,
64
+ access_config: pulumi.Input['ClusterGcpConfigAccessConfigArgs'],
65
+ kms_key: Optional[pulumi.Input[str]] = None):
66
+ """
67
+ :param pulumi.Input['ClusterGcpConfigAccessConfigArgs'] access_config: The configuration of access to the Kafka cluster.
68
+ Structure is documented below.
69
+ :param pulumi.Input[str] kms_key: The Cloud KMS Key name to use for encryption. The key must be located in the same region as the cluster and cannot be changed. Must be in the format `projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY`.
70
+ """
71
+ pulumi.set(__self__, "access_config", access_config)
72
+ if kms_key is not None:
73
+ pulumi.set(__self__, "kms_key", kms_key)
74
+
75
+ @property
76
+ @pulumi.getter(name="accessConfig")
77
+ def access_config(self) -> pulumi.Input['ClusterGcpConfigAccessConfigArgs']:
78
+ """
79
+ The configuration of access to the Kafka cluster.
80
+ Structure is documented below.
81
+ """
82
+ return pulumi.get(self, "access_config")
83
+
84
+ @access_config.setter
85
+ def access_config(self, value: pulumi.Input['ClusterGcpConfigAccessConfigArgs']):
86
+ pulumi.set(self, "access_config", value)
87
+
88
+ @property
89
+ @pulumi.getter(name="kmsKey")
90
+ def kms_key(self) -> Optional[pulumi.Input[str]]:
91
+ """
92
+ The Cloud KMS Key name to use for encryption. The key must be located in the same region as the cluster and cannot be changed. Must be in the format `projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY`.
93
+ """
94
+ return pulumi.get(self, "kms_key")
95
+
96
+ @kms_key.setter
97
+ def kms_key(self, value: Optional[pulumi.Input[str]]):
98
+ pulumi.set(self, "kms_key", value)
99
+
100
+
101
+ @pulumi.input_type
102
+ class ClusterGcpConfigAccessConfigArgs:
103
+ def __init__(__self__, *,
104
+ network_configs: pulumi.Input[Sequence[pulumi.Input['ClusterGcpConfigAccessConfigNetworkConfigArgs']]]):
105
+ """
106
+ :param pulumi.Input[Sequence[pulumi.Input['ClusterGcpConfigAccessConfigNetworkConfigArgs']]] network_configs: Virtual Private Cloud (VPC) networks that must be granted direct access to the Kafka cluster. Minimum of 1 network is required. Maximum of 10 networks can be specified.
107
+ Structure is documented below.
108
+ """
109
+ pulumi.set(__self__, "network_configs", network_configs)
110
+
111
+ @property
112
+ @pulumi.getter(name="networkConfigs")
113
+ def network_configs(self) -> pulumi.Input[Sequence[pulumi.Input['ClusterGcpConfigAccessConfigNetworkConfigArgs']]]:
114
+ """
115
+ Virtual Private Cloud (VPC) networks that must be granted direct access to the Kafka cluster. Minimum of 1 network is required. Maximum of 10 networks can be specified.
116
+ Structure is documented below.
117
+ """
118
+ return pulumi.get(self, "network_configs")
119
+
120
+ @network_configs.setter
121
+ def network_configs(self, value: pulumi.Input[Sequence[pulumi.Input['ClusterGcpConfigAccessConfigNetworkConfigArgs']]]):
122
+ pulumi.set(self, "network_configs", value)
123
+
124
+
125
+ @pulumi.input_type
126
+ class ClusterGcpConfigAccessConfigNetworkConfigArgs:
127
+ def __init__(__self__, *,
128
+ subnet: pulumi.Input[str]):
129
+ """
130
+ :param pulumi.Input[str] subnet: Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. The subnet must be located in the same region as the cluster. The project may differ. A minimum of 1 subnet is required. A maximum of 10 subnets can be specified. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
131
+ """
132
+ pulumi.set(__self__, "subnet", subnet)
133
+
134
+ @property
135
+ @pulumi.getter
136
+ def subnet(self) -> pulumi.Input[str]:
137
+ """
138
+ Name of the VPC subnet from which the cluster is accessible. Both broker and bootstrap server IP addresses and DNS entries are automatically created in the subnet. The subnet must be located in the same region as the cluster. The project may differ. A minimum of 1 subnet is required. A maximum of 10 subnets can be specified. The name of the subnet must be in the format `projects/PROJECT_ID/regions/REGION/subnetworks/SUBNET`.
139
+ """
140
+ return pulumi.get(self, "subnet")
141
+
142
+ @subnet.setter
143
+ def subnet(self, value: pulumi.Input[str]):
144
+ pulumi.set(self, "subnet", value)
145
+
146
+
147
+ @pulumi.input_type
148
+ class ClusterRebalanceConfigArgs:
149
+ def __init__(__self__, *,
150
+ mode: Optional[pulumi.Input[str]] = None):
151
+ """
152
+ :param pulumi.Input[str] mode: The rebalance behavior for the cluster. When not specified, defaults to `NO_REBALANCE`. Possible values: `MODE_UNSPECIFIED`, `NO_REBALANCE`, `AUTO_REBALANCE_ON_SCALE_UP`.
153
+ """
154
+ if mode is not None:
155
+ pulumi.set(__self__, "mode", mode)
156
+
157
+ @property
158
+ @pulumi.getter
159
+ def mode(self) -> Optional[pulumi.Input[str]]:
160
+ """
161
+ The rebalance behavior for the cluster. When not specified, defaults to `NO_REBALANCE`. Possible values: `MODE_UNSPECIFIED`, `NO_REBALANCE`, `AUTO_REBALANCE_ON_SCALE_UP`.
162
+ """
163
+ return pulumi.get(self, "mode")
164
+
165
+ @mode.setter
166
+ def mode(self, value: Optional[pulumi.Input[str]]):
167
+ pulumi.set(self, "mode", value)
168
+
169
+