pulumi-gcp 7.3.0a1702567892__py3-none-any.whl → 7.3.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. pulumi_gcp/__init__.py +129 -0
  2. pulumi_gcp/artifactregistry/_inputs.py +88 -0
  3. pulumi_gcp/artifactregistry/outputs.py +148 -0
  4. pulumi_gcp/artifactregistry/repository.py +116 -16
  5. pulumi_gcp/bigquery/_inputs.py +110 -0
  6. pulumi_gcp/bigquery/connection.py +123 -3
  7. pulumi_gcp/bigquery/outputs.py +145 -0
  8. pulumi_gcp/cloudbuild/_inputs.py +241 -1
  9. pulumi_gcp/cloudbuild/outputs.py +353 -2
  10. pulumi_gcp/cloudfunctionsv2/_inputs.py +6 -2
  11. pulumi_gcp/cloudfunctionsv2/outputs.py +6 -2
  12. pulumi_gcp/cloudidentity/_inputs.py +54 -5
  13. pulumi_gcp/cloudidentity/group_membership.py +0 -8
  14. pulumi_gcp/cloudidentity/outputs.py +99 -4
  15. pulumi_gcp/cloudrunv2/_inputs.py +8 -4
  16. pulumi_gcp/cloudrunv2/job.py +44 -0
  17. pulumi_gcp/cloudrunv2/outputs.py +8 -4
  18. pulumi_gcp/cloudrunv2/service.py +42 -0
  19. pulumi_gcp/cloudtasks/queue.py +0 -10
  20. pulumi_gcp/composer/_inputs.py +17 -4
  21. pulumi_gcp/composer/outputs.py +20 -4
  22. pulumi_gcp/compute/_inputs.py +46 -0
  23. pulumi_gcp/compute/get_global_forwarding_rule.py +11 -1
  24. pulumi_gcp/compute/global_forwarding_rule.py +69 -0
  25. pulumi_gcp/compute/outputs.py +75 -0
  26. pulumi_gcp/config/__init__.pyi +6 -0
  27. pulumi_gcp/config/vars.py +12 -0
  28. pulumi_gcp/container/_inputs.py +58 -0
  29. pulumi_gcp/container/node_pool.py +68 -14
  30. pulumi_gcp/container/outputs.py +68 -0
  31. pulumi_gcp/dataform/__init__.py +4 -0
  32. pulumi_gcp/dataform/_inputs.py +80 -0
  33. pulumi_gcp/dataform/get_repository_iam_policy.py +144 -0
  34. pulumi_gcp/dataform/outputs.py +56 -0
  35. pulumi_gcp/dataform/repository_iam_binding.py +325 -0
  36. pulumi_gcp/dataform/repository_iam_member.py +325 -0
  37. pulumi_gcp/dataform/repository_iam_policy.py +254 -0
  38. pulumi_gcp/dataloss/_inputs.py +29 -26
  39. pulumi_gcp/dataloss/outputs.py +28 -25
  40. pulumi_gcp/dataloss/prevention_job_trigger.py +78 -0
  41. pulumi_gcp/datastream/connection_profile.py +82 -4
  42. pulumi_gcp/datastream/stream.py +32 -22
  43. pulumi_gcp/firestore/database.py +146 -28
  44. pulumi_gcp/gkehub/_inputs.py +821 -3
  45. pulumi_gcp/gkehub/feature.py +176 -0
  46. pulumi_gcp/gkehub/feature_membership.py +105 -59
  47. pulumi_gcp/gkehub/fleet.py +70 -2
  48. pulumi_gcp/gkehub/outputs.py +819 -3
  49. pulumi_gcp/gkehub/scope.py +2 -2
  50. pulumi_gcp/iam/_inputs.py +72 -0
  51. pulumi_gcp/iam/outputs.py +79 -0
  52. pulumi_gcp/iam/workforce_pool.py +75 -0
  53. pulumi_gcp/identityplatform/project_default_config.py +4 -0
  54. pulumi_gcp/logging/__init__.py +3 -0
  55. pulumi_gcp/logging/get_folder_settings.py +197 -0
  56. pulumi_gcp/logging/get_organization_settings.py +197 -0
  57. pulumi_gcp/logging/get_project_settings.py +197 -0
  58. pulumi_gcp/migrationcenter/__init__.py +8 -0
  59. pulumi_gcp/migrationcenter/group.py +652 -0
  60. pulumi_gcp/netapp/__init__.py +8 -0
  61. pulumi_gcp/netapp/storage_pool.py +970 -0
  62. pulumi_gcp/projects/iam_custom_role.py +7 -7
  63. pulumi_gcp/provider.py +60 -0
  64. pulumi_gcp/securesourcemanager/__init__.py +14 -0
  65. pulumi_gcp/securesourcemanager/_inputs.py +94 -0
  66. pulumi_gcp/securesourcemanager/get_instance_iam_policy.py +168 -0
  67. pulumi_gcp/securesourcemanager/instance.py +607 -0
  68. pulumi_gcp/securesourcemanager/instance_iam_binding.py +325 -0
  69. pulumi_gcp/securesourcemanager/instance_iam_member.py +325 -0
  70. pulumi_gcp/securesourcemanager/instance_iam_policy.py +254 -0
  71. pulumi_gcp/securesourcemanager/outputs.py +70 -0
  72. pulumi_gcp/securitycenter/__init__.py +1 -0
  73. pulumi_gcp/securitycenter/event_threat_detection_custom_module.py +528 -0
  74. pulumi_gcp/sql/_inputs.py +2 -2
  75. pulumi_gcp/sql/database_instance.py +4 -4
  76. pulumi_gcp/sql/outputs.py +2 -2
  77. pulumi_gcp/storage/_inputs.py +16 -0
  78. pulumi_gcp/storage/outputs.py +21 -0
  79. pulumi_gcp/vertex/__init__.py +4 -0
  80. pulumi_gcp/vertex/_inputs.py +80 -0
  81. pulumi_gcp/vertex/ai_endpoint_iam_binding.py +325 -0
  82. pulumi_gcp/vertex/ai_endpoint_iam_member.py +325 -0
  83. pulumi_gcp/vertex/ai_endpoint_iam_policy.py +254 -0
  84. pulumi_gcp/vertex/get_ai_endpoint_iam_policy.py +140 -0
  85. pulumi_gcp/vertex/outputs.py +56 -0
  86. pulumi_gcp/vmwareengine/__init__.py +5 -0
  87. pulumi_gcp/vmwareengine/_inputs.py +104 -2
  88. pulumi_gcp/vmwareengine/get_network.py +14 -4
  89. pulumi_gcp/vmwareengine/get_network_peering.py +260 -0
  90. pulumi_gcp/vmwareengine/get_network_policy.py +228 -0
  91. pulumi_gcp/vmwareengine/get_nsx_credentials.py +133 -0
  92. pulumi_gcp/vmwareengine/get_private_cloud.py +14 -4
  93. pulumi_gcp/vmwareengine/network.py +41 -7
  94. pulumi_gcp/vmwareengine/network_peering.py +959 -0
  95. pulumi_gcp/vmwareengine/network_policy.py +836 -0
  96. pulumi_gcp/vmwareengine/outputs.py +133 -2
  97. pulumi_gcp/vmwareengine/private_cloud.py +20 -68
  98. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/METADATA +1 -1
  99. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/RECORD +101 -72
  100. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/WHEEL +0 -0
  101. {pulumi_gcp-7.3.0a1702567892.dist-info → pulumi_gcp-7.3.1.dist-info}/top_level.txt +0 -0
@@ -15218,7 +15218,7 @@ class PreventionJobTriggerInspectJobStorageConfigArgs:
15218
15218
  Structure is documented below.
15219
15219
  :param pulumi.Input['PreventionJobTriggerInspectJobStorageConfigHybridOptionsArgs'] hybrid_options: Configuration to control jobs where the content being inspected is outside of Google Cloud Platform.
15220
15220
  Structure is documented below.
15221
- :param pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs'] timespan_config: Information on where to inspect
15221
+ :param pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs'] timespan_config: Configuration of the timespan of the items to include in scanning
15222
15222
  Structure is documented below.
15223
15223
  """
15224
15224
  if big_query_options is not None:
@@ -15288,7 +15288,7 @@ class PreventionJobTriggerInspectJobStorageConfigArgs:
15288
15288
  @pulumi.getter(name="timespanConfig")
15289
15289
  def timespan_config(self) -> Optional[pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs']]:
15290
15290
  """
15291
- Information on where to inspect
15291
+ Configuration of the timespan of the items to include in scanning
15292
15292
  Structure is documented below.
15293
15293
  """
15294
15294
  return pulumi.get(self, "timespan_config")
@@ -16039,39 +16039,28 @@ class PreventionJobTriggerInspectJobStorageConfigHybridOptionsTableOptionsIdenti
16039
16039
  @pulumi.input_type
16040
16040
  class PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs:
16041
16041
  def __init__(__self__, *,
16042
- timestamp_field: pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs'],
16043
16042
  enable_auto_population_of_timespan_config: Optional[pulumi.Input[bool]] = None,
16044
16043
  end_time: Optional[pulumi.Input[str]] = None,
16045
- start_time: Optional[pulumi.Input[str]] = None):
16044
+ start_time: Optional[pulumi.Input[str]] = None,
16045
+ timestamp_field: Optional[pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs']] = None):
16046
16046
  """
16047
- :param pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs'] timestamp_field: Information on where to inspect
16048
- Structure is documented below.
16049
16047
  :param pulumi.Input[bool] enable_auto_population_of_timespan_config: When the job is started by a JobTrigger we will automatically figure out a valid startTime to avoid
16050
16048
  scanning files that have not been modified since the last time the JobTrigger executed. This will
16051
- be based on the time of the execution of the last run of the JobTrigger.
16052
- :param pulumi.Input[str] end_time: Exclude files or rows newer than this value. If set to zero, no upper time limit is applied.
16053
- :param pulumi.Input[str] start_time: Exclude files or rows older than this value.
16049
+ be based on the time of the execution of the last run of the JobTrigger or the timespan endTime
16050
+ used in the last run of the JobTrigger.
16051
+ :param pulumi.Input[str] end_time: Exclude files, tables, or rows newer than this value. If not set, no upper time limit is applied.
16052
+ :param pulumi.Input[str] start_time: Exclude files, tables, or rows older than this value. If not set, no lower time limit is applied.
16053
+ :param pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs'] timestamp_field: Specification of the field containing the timestamp of scanned items.
16054
+ Structure is documented below.
16054
16055
  """
16055
- pulumi.set(__self__, "timestamp_field", timestamp_field)
16056
16056
  if enable_auto_population_of_timespan_config is not None:
16057
16057
  pulumi.set(__self__, "enable_auto_population_of_timespan_config", enable_auto_population_of_timespan_config)
16058
16058
  if end_time is not None:
16059
16059
  pulumi.set(__self__, "end_time", end_time)
16060
16060
  if start_time is not None:
16061
16061
  pulumi.set(__self__, "start_time", start_time)
16062
-
16063
- @property
16064
- @pulumi.getter(name="timestampField")
16065
- def timestamp_field(self) -> pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs']:
16066
- """
16067
- Information on where to inspect
16068
- Structure is documented below.
16069
- """
16070
- return pulumi.get(self, "timestamp_field")
16071
-
16072
- @timestamp_field.setter
16073
- def timestamp_field(self, value: pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs']):
16074
- pulumi.set(self, "timestamp_field", value)
16062
+ if timestamp_field is not None:
16063
+ pulumi.set(__self__, "timestamp_field", timestamp_field)
16075
16064
 
16076
16065
  @property
16077
16066
  @pulumi.getter(name="enableAutoPopulationOfTimespanConfig")
@@ -16079,7 +16068,8 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs:
16079
16068
  """
16080
16069
  When the job is started by a JobTrigger we will automatically figure out a valid startTime to avoid
16081
16070
  scanning files that have not been modified since the last time the JobTrigger executed. This will
16082
- be based on the time of the execution of the last run of the JobTrigger.
16071
+ be based on the time of the execution of the last run of the JobTrigger or the timespan endTime
16072
+ used in the last run of the JobTrigger.
16083
16073
  """
16084
16074
  return pulumi.get(self, "enable_auto_population_of_timespan_config")
16085
16075
 
@@ -16091,7 +16081,7 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs:
16091
16081
  @pulumi.getter(name="endTime")
16092
16082
  def end_time(self) -> Optional[pulumi.Input[str]]:
16093
16083
  """
16094
- Exclude files or rows newer than this value. If set to zero, no upper time limit is applied.
16084
+ Exclude files, tables, or rows newer than this value. If not set, no upper time limit is applied.
16095
16085
  """
16096
16086
  return pulumi.get(self, "end_time")
16097
16087
 
@@ -16103,7 +16093,7 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs:
16103
16093
  @pulumi.getter(name="startTime")
16104
16094
  def start_time(self) -> Optional[pulumi.Input[str]]:
16105
16095
  """
16106
- Exclude files or rows older than this value.
16096
+ Exclude files, tables, or rows older than this value. If not set, no lower time limit is applied.
16107
16097
  """
16108
16098
  return pulumi.get(self, "start_time")
16109
16099
 
@@ -16111,6 +16101,19 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs:
16111
16101
  def start_time(self, value: Optional[pulumi.Input[str]]):
16112
16102
  pulumi.set(self, "start_time", value)
16113
16103
 
16104
+ @property
16105
+ @pulumi.getter(name="timestampField")
16106
+ def timestamp_field(self) -> Optional[pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs']]:
16107
+ """
16108
+ Specification of the field containing the timestamp of scanned items.
16109
+ Structure is documented below.
16110
+ """
16111
+ return pulumi.get(self, "timestamp_field")
16112
+
16113
+ @timestamp_field.setter
16114
+ def timestamp_field(self, value: Optional[pulumi.Input['PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs']]):
16115
+ pulumi.set(self, "timestamp_field", value)
16116
+
16114
16117
 
16115
16118
  @pulumi.input_type
16116
16119
  class PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs:
@@ -15475,7 +15475,7 @@ class PreventionJobTriggerInspectJobStorageConfig(dict):
15475
15475
  Structure is documented below.
15476
15476
  :param 'PreventionJobTriggerInspectJobStorageConfigHybridOptionsArgs' hybrid_options: Configuration to control jobs where the content being inspected is outside of Google Cloud Platform.
15477
15477
  Structure is documented below.
15478
- :param 'PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs' timespan_config: Information on where to inspect
15478
+ :param 'PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs' timespan_config: Configuration of the timespan of the items to include in scanning
15479
15479
  Structure is documented below.
15480
15480
  """
15481
15481
  if big_query_options is not None:
@@ -15529,7 +15529,7 @@ class PreventionJobTriggerInspectJobStorageConfig(dict):
15529
15529
  @pulumi.getter(name="timespanConfig")
15530
15530
  def timespan_config(self) -> Optional['outputs.PreventionJobTriggerInspectJobStorageConfigTimespanConfig']:
15531
15531
  """
15532
- Information on where to inspect
15532
+ Configuration of the timespan of the items to include in scanning
15533
15533
  Structure is documented below.
15534
15534
  """
15535
15535
  return pulumi.get(self, "timespan_config")
@@ -16325,14 +16325,14 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfig(dict):
16325
16325
  @staticmethod
16326
16326
  def __key_warning(key: str):
16327
16327
  suggest = None
16328
- if key == "timestampField":
16329
- suggest = "timestamp_field"
16330
- elif key == "enableAutoPopulationOfTimespanConfig":
16328
+ if key == "enableAutoPopulationOfTimespanConfig":
16331
16329
  suggest = "enable_auto_population_of_timespan_config"
16332
16330
  elif key == "endTime":
16333
16331
  suggest = "end_time"
16334
16332
  elif key == "startTime":
16335
16333
  suggest = "start_time"
16334
+ elif key == "timestampField":
16335
+ suggest = "timestamp_field"
16336
16336
 
16337
16337
  if suggest:
16338
16338
  pulumi.log.warn(f"Key '{key}' not found in PreventionJobTriggerInspectJobStorageConfigTimespanConfig. Access the value via the '{suggest}' property getter instead.")
@@ -16346,35 +16346,28 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfig(dict):
16346
16346
  return super().get(key, default)
16347
16347
 
16348
16348
  def __init__(__self__, *,
16349
- timestamp_field: 'outputs.PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampField',
16350
16349
  enable_auto_population_of_timespan_config: Optional[bool] = None,
16351
16350
  end_time: Optional[str] = None,
16352
- start_time: Optional[str] = None):
16351
+ start_time: Optional[str] = None,
16352
+ timestamp_field: Optional['outputs.PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampField'] = None):
16353
16353
  """
16354
- :param 'PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs' timestamp_field: Information on where to inspect
16355
- Structure is documented below.
16356
16354
  :param bool enable_auto_population_of_timespan_config: When the job is started by a JobTrigger we will automatically figure out a valid startTime to avoid
16357
16355
  scanning files that have not been modified since the last time the JobTrigger executed. This will
16358
- be based on the time of the execution of the last run of the JobTrigger.
16359
- :param str end_time: Exclude files or rows newer than this value. If set to zero, no upper time limit is applied.
16360
- :param str start_time: Exclude files or rows older than this value.
16356
+ be based on the time of the execution of the last run of the JobTrigger or the timespan endTime
16357
+ used in the last run of the JobTrigger.
16358
+ :param str end_time: Exclude files, tables, or rows newer than this value. If not set, no upper time limit is applied.
16359
+ :param str start_time: Exclude files, tables, or rows older than this value. If not set, no lower time limit is applied.
16360
+ :param 'PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampFieldArgs' timestamp_field: Specification of the field containing the timestamp of scanned items.
16361
+ Structure is documented below.
16361
16362
  """
16362
- pulumi.set(__self__, "timestamp_field", timestamp_field)
16363
16363
  if enable_auto_population_of_timespan_config is not None:
16364
16364
  pulumi.set(__self__, "enable_auto_population_of_timespan_config", enable_auto_population_of_timespan_config)
16365
16365
  if end_time is not None:
16366
16366
  pulumi.set(__self__, "end_time", end_time)
16367
16367
  if start_time is not None:
16368
16368
  pulumi.set(__self__, "start_time", start_time)
16369
-
16370
- @property
16371
- @pulumi.getter(name="timestampField")
16372
- def timestamp_field(self) -> 'outputs.PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampField':
16373
- """
16374
- Information on where to inspect
16375
- Structure is documented below.
16376
- """
16377
- return pulumi.get(self, "timestamp_field")
16369
+ if timestamp_field is not None:
16370
+ pulumi.set(__self__, "timestamp_field", timestamp_field)
16378
16371
 
16379
16372
  @property
16380
16373
  @pulumi.getter(name="enableAutoPopulationOfTimespanConfig")
@@ -16382,7 +16375,8 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfig(dict):
16382
16375
  """
16383
16376
  When the job is started by a JobTrigger we will automatically figure out a valid startTime to avoid
16384
16377
  scanning files that have not been modified since the last time the JobTrigger executed. This will
16385
- be based on the time of the execution of the last run of the JobTrigger.
16378
+ be based on the time of the execution of the last run of the JobTrigger or the timespan endTime
16379
+ used in the last run of the JobTrigger.
16386
16380
  """
16387
16381
  return pulumi.get(self, "enable_auto_population_of_timespan_config")
16388
16382
 
@@ -16390,7 +16384,7 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfig(dict):
16390
16384
  @pulumi.getter(name="endTime")
16391
16385
  def end_time(self) -> Optional[str]:
16392
16386
  """
16393
- Exclude files or rows newer than this value. If set to zero, no upper time limit is applied.
16387
+ Exclude files, tables, or rows newer than this value. If not set, no upper time limit is applied.
16394
16388
  """
16395
16389
  return pulumi.get(self, "end_time")
16396
16390
 
@@ -16398,10 +16392,19 @@ class PreventionJobTriggerInspectJobStorageConfigTimespanConfig(dict):
16398
16392
  @pulumi.getter(name="startTime")
16399
16393
  def start_time(self) -> Optional[str]:
16400
16394
  """
16401
- Exclude files or rows older than this value.
16395
+ Exclude files, tables, or rows older than this value. If not set, no lower time limit is applied.
16402
16396
  """
16403
16397
  return pulumi.get(self, "start_time")
16404
16398
 
16399
+ @property
16400
+ @pulumi.getter(name="timestampField")
16401
+ def timestamp_field(self) -> Optional['outputs.PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampField']:
16402
+ """
16403
+ Specification of the field containing the timestamp of scanned items.
16404
+ Structure is documented below.
16405
+ """
16406
+ return pulumi.get(self, "timestamp_field")
16407
+
16405
16408
 
16406
16409
  @pulumi.output_type
16407
16410
  class PreventionJobTriggerInspectJobStorageConfigTimespanConfigTimestampField(dict):
@@ -742,6 +742,45 @@ class PreventionJobTrigger(pulumi.CustomResource):
742
742
  ),
743
743
  )])
744
744
  ```
745
+ ### Dlp Job Trigger Cloud Storage Optional Timespan Autopopulation
746
+
747
+ ```python
748
+ import pulumi
749
+ import pulumi_gcp as gcp
750
+
751
+ basic = gcp.dataloss.PreventionJobTrigger("basic",
752
+ description="Description",
753
+ display_name="Displayname",
754
+ inspect_job=gcp.dataloss.PreventionJobTriggerInspectJobArgs(
755
+ actions=[gcp.dataloss.PreventionJobTriggerInspectJobActionArgs(
756
+ save_findings=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsArgs(
757
+ output_config=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsOutputConfigArgs(
758
+ table=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsOutputConfigTableArgs(
759
+ dataset_id="dataset",
760
+ project_id="project",
761
+ ),
762
+ ),
763
+ ),
764
+ )],
765
+ inspect_template_name="fake",
766
+ storage_config=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigArgs(
767
+ cloud_storage_options=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigCloudStorageOptionsArgs(
768
+ file_set=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigCloudStorageOptionsFileSetArgs(
769
+ url="gs://mybucket/directory/",
770
+ ),
771
+ ),
772
+ timespan_config=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs(
773
+ enable_auto_population_of_timespan_config=True,
774
+ ),
775
+ ),
776
+ ),
777
+ parent="projects/my-project-name",
778
+ triggers=[gcp.dataloss.PreventionJobTriggerTriggerArgs(
779
+ schedule=gcp.dataloss.PreventionJobTriggerTriggerScheduleArgs(
780
+ recurrence_period_duration="86400s",
781
+ ),
782
+ )])
783
+ ```
745
784
 
746
785
  ## Import
747
786
 
@@ -1170,6 +1209,45 @@ class PreventionJobTrigger(pulumi.CustomResource):
1170
1209
  ),
1171
1210
  )])
1172
1211
  ```
1212
+ ### Dlp Job Trigger Cloud Storage Optional Timespan Autopopulation
1213
+
1214
+ ```python
1215
+ import pulumi
1216
+ import pulumi_gcp as gcp
1217
+
1218
+ basic = gcp.dataloss.PreventionJobTrigger("basic",
1219
+ description="Description",
1220
+ display_name="Displayname",
1221
+ inspect_job=gcp.dataloss.PreventionJobTriggerInspectJobArgs(
1222
+ actions=[gcp.dataloss.PreventionJobTriggerInspectJobActionArgs(
1223
+ save_findings=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsArgs(
1224
+ output_config=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsOutputConfigArgs(
1225
+ table=gcp.dataloss.PreventionJobTriggerInspectJobActionSaveFindingsOutputConfigTableArgs(
1226
+ dataset_id="dataset",
1227
+ project_id="project",
1228
+ ),
1229
+ ),
1230
+ ),
1231
+ )],
1232
+ inspect_template_name="fake",
1233
+ storage_config=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigArgs(
1234
+ cloud_storage_options=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigCloudStorageOptionsArgs(
1235
+ file_set=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigCloudStorageOptionsFileSetArgs(
1236
+ url="gs://mybucket/directory/",
1237
+ ),
1238
+ ),
1239
+ timespan_config=gcp.dataloss.PreventionJobTriggerInspectJobStorageConfigTimespanConfigArgs(
1240
+ enable_auto_population_of_timespan_config=True,
1241
+ ),
1242
+ ),
1243
+ ),
1244
+ parent="projects/my-project-name",
1245
+ triggers=[gcp.dataloss.PreventionJobTriggerTriggerArgs(
1246
+ schedule=gcp.dataloss.PreventionJobTriggerTriggerScheduleArgs(
1247
+ recurrence_period_duration="86400s",
1248
+ ),
1249
+ )])
1250
+ ```
1173
1251
 
1174
1252
  ## Import
1175
1253
 
@@ -551,11 +551,12 @@ class ConnectionProfile(pulumi.CustomResource):
551
551
  ),
552
552
  location="us-central1")
553
553
  ```
554
- ### Datastream Connection Profile Bigquery Private Connection
554
+ ### Datastream Connection Profile Postgresql Private Connection
555
555
 
556
556
  ```python
557
557
  import pulumi
558
558
  import pulumi_gcp as gcp
559
+ import pulumi_random as random
559
560
 
560
561
  default_network = gcp.compute.Network("defaultNetwork")
561
562
  private_connection = gcp.datastream.PrivateConnection("privateConnection",
@@ -569,11 +570,49 @@ class ConnectionProfile(pulumi.CustomResource):
569
570
  vpc=default_network.id,
570
571
  subnet="10.0.0.0/29",
571
572
  ))
573
+ instance = gcp.sql.DatabaseInstance("instance",
574
+ database_version="POSTGRES_14",
575
+ region="us-central1",
576
+ settings=gcp.sql.DatabaseInstanceSettingsArgs(
577
+ tier="db-f1-micro",
578
+ ip_configuration=gcp.sql.DatabaseInstanceSettingsIpConfigurationArgs(
579
+ authorized_networks=[
580
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
581
+ value="34.71.242.81",
582
+ ),
583
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
584
+ value="34.72.28.29",
585
+ ),
586
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
587
+ value="34.67.6.157",
588
+ ),
589
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
590
+ value="34.67.234.134",
591
+ ),
592
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
593
+ value="34.72.239.218",
594
+ ),
595
+ ],
596
+ ),
597
+ ),
598
+ deletion_protection=True)
599
+ db = gcp.sql.Database("db", instance=instance.name)
600
+ pwd = random.RandomPassword("pwd",
601
+ length=16,
602
+ special=False)
603
+ user = gcp.sql.User("user",
604
+ instance=instance.name,
605
+ password=pwd.result)
572
606
  default_connection_profile = gcp.datastream.ConnectionProfile("defaultConnectionProfile",
573
607
  display_name="Connection profile",
574
608
  location="us-central1",
575
609
  connection_profile_id="my-profile",
576
- bigquery_profile=gcp.datastream.ConnectionProfileBigqueryProfileArgs(),
610
+ postgresql_profile=gcp.datastream.ConnectionProfilePostgresqlProfileArgs(
611
+ hostname=instance.public_ip_address,
612
+ username=user.name,
613
+ password=user.password,
614
+ database=db.name,
615
+ ),
577
616
  private_connectivity=gcp.datastream.ConnectionProfilePrivateConnectivityArgs(
578
617
  private_connection=private_connection.id,
579
618
  ))
@@ -736,11 +775,12 @@ class ConnectionProfile(pulumi.CustomResource):
736
775
  ),
737
776
  location="us-central1")
738
777
  ```
739
- ### Datastream Connection Profile Bigquery Private Connection
778
+ ### Datastream Connection Profile Postgresql Private Connection
740
779
 
741
780
  ```python
742
781
  import pulumi
743
782
  import pulumi_gcp as gcp
783
+ import pulumi_random as random
744
784
 
745
785
  default_network = gcp.compute.Network("defaultNetwork")
746
786
  private_connection = gcp.datastream.PrivateConnection("privateConnection",
@@ -754,11 +794,49 @@ class ConnectionProfile(pulumi.CustomResource):
754
794
  vpc=default_network.id,
755
795
  subnet="10.0.0.0/29",
756
796
  ))
797
+ instance = gcp.sql.DatabaseInstance("instance",
798
+ database_version="POSTGRES_14",
799
+ region="us-central1",
800
+ settings=gcp.sql.DatabaseInstanceSettingsArgs(
801
+ tier="db-f1-micro",
802
+ ip_configuration=gcp.sql.DatabaseInstanceSettingsIpConfigurationArgs(
803
+ authorized_networks=[
804
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
805
+ value="34.71.242.81",
806
+ ),
807
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
808
+ value="34.72.28.29",
809
+ ),
810
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
811
+ value="34.67.6.157",
812
+ ),
813
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
814
+ value="34.67.234.134",
815
+ ),
816
+ gcp.sql.DatabaseInstanceSettingsIpConfigurationAuthorizedNetworkArgs(
817
+ value="34.72.239.218",
818
+ ),
819
+ ],
820
+ ),
821
+ ),
822
+ deletion_protection=True)
823
+ db = gcp.sql.Database("db", instance=instance.name)
824
+ pwd = random.RandomPassword("pwd",
825
+ length=16,
826
+ special=False)
827
+ user = gcp.sql.User("user",
828
+ instance=instance.name,
829
+ password=pwd.result)
757
830
  default_connection_profile = gcp.datastream.ConnectionProfile("defaultConnectionProfile",
758
831
  display_name="Connection profile",
759
832
  location="us-central1",
760
833
  connection_profile_id="my-profile",
761
- bigquery_profile=gcp.datastream.ConnectionProfileBigqueryProfileArgs(),
834
+ postgresql_profile=gcp.datastream.ConnectionProfilePostgresqlProfileArgs(
835
+ hostname=instance.public_ip_address,
836
+ username=user.name,
837
+ password=user.password,
838
+ database=db.name,
839
+ ),
762
840
  private_connectivity=gcp.datastream.ConnectionProfilePrivateConnectivityArgs(
763
841
  private_connection=private_connection.id,
764
842
  ))
@@ -593,17 +593,22 @@ class Stream(pulumi.CustomResource):
593
593
  include_objects=gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs(
594
594
  mysql_databases=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseArgs(
595
595
  database="my-database",
596
- mysql_tables=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
597
- table="includedTable",
598
- mysql_columns=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgs(
599
- column="includedColumn",
600
- data_type="VARCHAR",
601
- collation="utf8mb4",
602
- primary_key=False,
603
- nullable=False,
604
- ordinal_position=0,
605
- )],
606
- )],
596
+ mysql_tables=[
597
+ gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
598
+ table="includedTable",
599
+ mysql_columns=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgs(
600
+ column="includedColumn",
601
+ data_type="VARCHAR",
602
+ collation="utf8mb4",
603
+ primary_key=False,
604
+ nullable=False,
605
+ ordinal_position=0,
606
+ )],
607
+ ),
608
+ gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
609
+ table="includedTable_2",
610
+ ),
611
+ ],
607
612
  )],
608
613
  ),
609
614
  exclude_objects=gcp.datastream.StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs(
@@ -1150,17 +1155,22 @@ class Stream(pulumi.CustomResource):
1150
1155
  include_objects=gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs(
1151
1156
  mysql_databases=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseArgs(
1152
1157
  database="my-database",
1153
- mysql_tables=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
1154
- table="includedTable",
1155
- mysql_columns=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgs(
1156
- column="includedColumn",
1157
- data_type="VARCHAR",
1158
- collation="utf8mb4",
1159
- primary_key=False,
1160
- nullable=False,
1161
- ordinal_position=0,
1162
- )],
1163
- )],
1158
+ mysql_tables=[
1159
+ gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
1160
+ table="includedTable",
1161
+ mysql_columns=[gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgs(
1162
+ column="includedColumn",
1163
+ data_type="VARCHAR",
1164
+ collation="utf8mb4",
1165
+ primary_key=False,
1166
+ nullable=False,
1167
+ ordinal_position=0,
1168
+ )],
1169
+ ),
1170
+ gcp.datastream.StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTableArgs(
1171
+ table="includedTable_2",
1172
+ ),
1173
+ ],
1164
1174
  )],
1165
1175
  ),
1166
1176
  exclude_objects=gcp.datastream.StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs(