pulumi-gcp 8.13.0a1736231082__py3-none-any.whl → 8.13.1__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 (90) hide show
  1. pulumi_gcp/__init__.py +43 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +3 -3
  3. pulumi_gcp/accesscontextmanager/outputs.py +2 -2
  4. pulumi_gcp/artifactregistry/_inputs.py +83 -0
  5. pulumi_gcp/artifactregistry/get_repository.py +15 -4
  6. pulumi_gcp/artifactregistry/outputs.py +112 -0
  7. pulumi_gcp/artifactregistry/repository.py +93 -7
  8. pulumi_gcp/backupdisasterrecovery/get_backup.py +38 -2
  9. pulumi_gcp/backupdisasterrecovery/get_data_source.py +38 -2
  10. pulumi_gcp/backupdisasterrecovery/outputs.py +8 -8
  11. pulumi_gcp/bigquery/_inputs.py +369 -0
  12. pulumi_gcp/bigquery/dataset_access.py +61 -0
  13. pulumi_gcp/bigquery/job.py +6 -18
  14. pulumi_gcp/bigquery/outputs.py +350 -0
  15. pulumi_gcp/bigquery/table.py +47 -0
  16. pulumi_gcp/chronicle/__init__.py +10 -0
  17. pulumi_gcp/chronicle/_inputs.py +169 -0
  18. pulumi_gcp/chronicle/outputs.py +107 -0
  19. pulumi_gcp/chronicle/watchlist.py +776 -0
  20. pulumi_gcp/cloudrunv2/_inputs.py +6 -3
  21. pulumi_gcp/cloudrunv2/outputs.py +10 -6
  22. pulumi_gcp/composer/_inputs.py +80 -5
  23. pulumi_gcp/composer/outputs.py +111 -4
  24. pulumi_gcp/compute/_inputs.py +181 -87
  25. pulumi_gcp/compute/firewall_policy_association.py +50 -39
  26. pulumi_gcp/compute/get_network.py +17 -2
  27. pulumi_gcp/compute/get_subnetwork.py +18 -4
  28. pulumi_gcp/compute/network.py +39 -2
  29. pulumi_gcp/compute/outputs.py +157 -58
  30. pulumi_gcp/compute/region_network_endpoint_group.py +1 -1
  31. pulumi_gcp/compute/resize_request.py +26 -40
  32. pulumi_gcp/config/__init__.pyi +2 -0
  33. pulumi_gcp/config/vars.py +4 -0
  34. pulumi_gcp/dataproc/batch.py +4 -18
  35. pulumi_gcp/datastream/_inputs.py +68 -0
  36. pulumi_gcp/datastream/outputs.py +41 -1
  37. pulumi_gcp/developerconnect/connection.py +58 -12
  38. pulumi_gcp/diagflow/_inputs.py +3 -3
  39. pulumi_gcp/diagflow/outputs.py +2 -2
  40. pulumi_gcp/filestore/backup.py +71 -3
  41. pulumi_gcp/firebase/hosting_custom_domain.py +4 -4
  42. pulumi_gcp/firestore/_inputs.py +3 -3
  43. pulumi_gcp/firestore/outputs.py +2 -2
  44. pulumi_gcp/gkehub/__init__.py +1 -0
  45. pulumi_gcp/gkehub/get_feature.py +226 -0
  46. pulumi_gcp/gkehub/outputs.py +1153 -0
  47. pulumi_gcp/gkeonprem/__init__.py +1 -0
  48. pulumi_gcp/gkeonprem/_inputs.py +2364 -0
  49. pulumi_gcp/gkeonprem/outputs.py +1780 -0
  50. pulumi_gcp/gkeonprem/vmware_admin_cluster.py +1715 -0
  51. pulumi_gcp/integrationconnectors/_inputs.py +6 -6
  52. pulumi_gcp/integrationconnectors/connection.py +7 -7
  53. pulumi_gcp/integrationconnectors/outputs.py +4 -4
  54. pulumi_gcp/kms/__init__.py +2 -0
  55. pulumi_gcp/kms/get_autokey_config.py +121 -0
  56. pulumi_gcp/kms/get_key_handle.py +185 -0
  57. pulumi_gcp/netapp/kmsconfig.py +2 -14
  58. pulumi_gcp/networkconnectivity/hub.py +108 -0
  59. pulumi_gcp/networkconnectivity/spoke.py +195 -0
  60. pulumi_gcp/networkmanagement/vpc_flow_logs_config.py +4 -0
  61. pulumi_gcp/networksecurity/__init__.py +2 -0
  62. pulumi_gcp/networksecurity/_inputs.py +78 -0
  63. pulumi_gcp/networksecurity/intercept_endpoint_group.py +723 -0
  64. pulumi_gcp/networksecurity/intercept_endpoint_group_association.py +815 -0
  65. pulumi_gcp/networksecurity/outputs.py +48 -0
  66. pulumi_gcp/oracledatabase/autonomous_database.py +2 -2
  67. pulumi_gcp/orgpolicy/policy.py +2 -2
  68. pulumi_gcp/parallelstore/instance.py +149 -0
  69. pulumi_gcp/projects/usage_export_bucket.py +42 -110
  70. pulumi_gcp/provider.py +20 -0
  71. pulumi_gcp/pubsub/subscription.py +6 -6
  72. pulumi_gcp/pulumi-plugin.json +1 -1
  73. pulumi_gcp/securesourcemanager/instance.py +4 -16
  74. pulumi_gcp/spanner/instance_iam_binding.py +14 -0
  75. pulumi_gcp/spanner/instance_iam_member.py +14 -0
  76. pulumi_gcp/sql/database_instance.py +7 -7
  77. pulumi_gcp/storage/__init__.py +1 -0
  78. pulumi_gcp/storage/_inputs.py +431 -0
  79. pulumi_gcp/storage/folder.py +483 -0
  80. pulumi_gcp/storage/outputs.py +363 -0
  81. pulumi_gcp/storage/transfer_job.py +84 -38
  82. pulumi_gcp/vertex/_inputs.py +26 -25
  83. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  84. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  85. pulumi_gcp/vertex/outputs.py +15 -14
  86. pulumi_gcp/workstations/workstation.py +55 -1
  87. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/METADATA +2 -2
  88. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/RECORD +90 -79
  89. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/WHEEL +1 -1
  90. {pulumi_gcp-8.13.0a1736231082.dist-info → pulumi_gcp-8.13.1.dist-info}/top_level.txt +0 -0
@@ -1481,7 +1481,7 @@ class RegionNetworkEndpointGroup(pulumi.CustomResource):
1481
1481
 
1482
1482
  @property
1483
1483
  @pulumi.getter(name="pscData")
1484
- def psc_data(self) -> pulumi.Output[Optional['outputs.RegionNetworkEndpointGroupPscData']]:
1484
+ def psc_data(self) -> pulumi.Output['outputs.RegionNetworkEndpointGroupPscData']:
1485
1485
  """
1486
1486
  This field is only used for PSC NEGs.
1487
1487
  Structure is documented below.
@@ -30,14 +30,12 @@ class ResizeRequestArgs:
30
30
  requested_run_duration: Optional[pulumi.Input['ResizeRequestRequestedRunDurationArgs']] = None):
31
31
  """
32
32
  The set of arguments for constructing a ResizeRequest resource.
33
- :param pulumi.Input[str] instance_group_manager: The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
34
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
35
- *compute.instanceGroupManagers.update
33
+ :param pulumi.Input[str] instance_group_manager: The reference of the instance group manager this ResizeRequest is a part of.
36
34
 
37
35
 
38
36
  - - -
39
37
  :param pulumi.Input[int] resize_by: The number of instances to be created by this resize request. The group's target size will be increased by this number.
40
- :param pulumi.Input[str] zone: Name of the compute zone scoping this request. Name should conform to RFC1035.
38
+ :param pulumi.Input[str] zone: The reference of the compute zone scoping this request.
41
39
  :param pulumi.Input[str] description: An optional description of this resize-request.
42
40
  :param pulumi.Input[str] name: The name of this resize request. The name must be 1-63 characters long, and comply with RFC1035.
43
41
  :param pulumi.Input[str] project: The ID of the project in which the resource belongs.
@@ -61,9 +59,7 @@ class ResizeRequestArgs:
61
59
  @pulumi.getter(name="instanceGroupManager")
62
60
  def instance_group_manager(self) -> pulumi.Input[str]:
63
61
  """
64
- The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
65
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
66
- *compute.instanceGroupManagers.update
62
+ The reference of the instance group manager this ResizeRequest is a part of.
67
63
 
68
64
 
69
65
  - - -
@@ -90,7 +86,7 @@ class ResizeRequestArgs:
90
86
  @pulumi.getter
91
87
  def zone(self) -> pulumi.Input[str]:
92
88
  """
93
- Name of the compute zone scoping this request. Name should conform to RFC1035.
89
+ The reference of the compute zone scoping this request.
94
90
  """
95
91
  return pulumi.get(self, "zone")
96
92
 
@@ -166,9 +162,7 @@ class _ResizeRequestState:
166
162
  Input properties used for looking up and filtering ResizeRequest resources.
167
163
  :param pulumi.Input[str] creation_timestamp: The creation timestamp for this resize request in RFC3339 text format.
168
164
  :param pulumi.Input[str] description: An optional description of this resize-request.
169
- :param pulumi.Input[str] instance_group_manager: The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
170
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
171
- *compute.instanceGroupManagers.update
165
+ :param pulumi.Input[str] instance_group_manager: The reference of the instance group manager this ResizeRequest is a part of.
172
166
 
173
167
 
174
168
  - - -
@@ -178,10 +172,10 @@ class _ResizeRequestState:
178
172
  :param pulumi.Input['ResizeRequestRequestedRunDurationArgs'] requested_run_duration: Requested run duration for instances that will be created by this request. At the end of the run duration instance will be deleted.
179
173
  Structure is documented below.
180
174
  :param pulumi.Input[int] resize_by: The number of instances to be created by this resize request. The group's target size will be increased by this number.
181
- :param pulumi.Input[str] state: [Output only] Current state of the request.
182
- :param pulumi.Input[Sequence[pulumi.Input['ResizeRequestStatusArgs']]] statuses: [Output only] Status of the request.
175
+ :param pulumi.Input[str] state: Current state of the request.
176
+ :param pulumi.Input[Sequence[pulumi.Input['ResizeRequestStatusArgs']]] statuses: Status of the request.
183
177
  Structure is documented below.
184
- :param pulumi.Input[str] zone: Name of the compute zone scoping this request. Name should conform to RFC1035.
178
+ :param pulumi.Input[str] zone: The reference of the compute zone scoping this request.
185
179
  """
186
180
  if creation_timestamp is not None:
187
181
  pulumi.set(__self__, "creation_timestamp", creation_timestamp)
@@ -232,9 +226,7 @@ class _ResizeRequestState:
232
226
  @pulumi.getter(name="instanceGroupManager")
233
227
  def instance_group_manager(self) -> Optional[pulumi.Input[str]]:
234
228
  """
235
- The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
236
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
237
- *compute.instanceGroupManagers.update
229
+ The reference of the instance group manager this ResizeRequest is a part of.
238
230
 
239
231
 
240
232
  - - -
@@ -299,7 +291,7 @@ class _ResizeRequestState:
299
291
  @pulumi.getter
300
292
  def state(self) -> Optional[pulumi.Input[str]]:
301
293
  """
302
- [Output only] Current state of the request.
294
+ Current state of the request.
303
295
  """
304
296
  return pulumi.get(self, "state")
305
297
 
@@ -311,7 +303,7 @@ class _ResizeRequestState:
311
303
  @pulumi.getter
312
304
  def statuses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ResizeRequestStatusArgs']]]]:
313
305
  """
314
- [Output only] Status of the request.
306
+ Status of the request.
315
307
  Structure is documented below.
316
308
  """
317
309
  return pulumi.get(self, "statuses")
@@ -324,7 +316,7 @@ class _ResizeRequestState:
324
316
  @pulumi.getter
325
317
  def zone(self) -> Optional[pulumi.Input[str]]:
326
318
  """
327
- Name of the compute zone scoping this request. Name should conform to RFC1035.
319
+ The reference of the compute zone scoping this request.
328
320
  """
329
321
  return pulumi.get(self, "zone")
330
322
 
@@ -351,13 +343,13 @@ class ResizeRequest(pulumi.CustomResource):
351
343
 
352
344
  Resize Requests are the Managed Instance Group implementation of Dynamic Workload Scheduler Flex Start.
353
345
 
354
- With Dynamic Workload Scheduler in Flex Start mode, you submit a GPU capacity request for your AI/ML jobs by indicating how many you need, a duration, and your preferred region. Dynamic Workload Scheduler intelligently persists the request; once the capacity becomes available, it automatically provisions your VMs enabling your workloads to run continuously for the entire duration of the capacity allocation.
346
+ With Dynamic Workload Scheduler in Flex Start mode, you submit a GPU capacity request for your AI/ML jobs by indicating how many you need, a duration, and your preferred zone. Dynamic Workload Scheduler intelligently persists the request; once the capacity becomes available, it automatically provisions your VMs enabling your workloads to run continuously for the entire duration of the capacity allocation.
355
347
 
356
348
  To get more information about ResizeRequest, see:
357
349
 
358
350
  * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagerResizeRequests)
359
351
  * How-to Guides
360
- * [QUICKSTART_TITLE](https://cloud.google.com/compute/docs/instance-groups/create-resize-requests-mig)
352
+ * [About resize requests in a MIG](https://cloud.google.com/compute/docs/instance-groups/about-resize-requests-mig)
361
353
 
362
354
  ## Example Usage
363
355
 
@@ -456,9 +448,7 @@ class ResizeRequest(pulumi.CustomResource):
456
448
  :param str resource_name: The name of the resource.
457
449
  :param pulumi.ResourceOptions opts: Options for the resource.
458
450
  :param pulumi.Input[str] description: An optional description of this resize-request.
459
- :param pulumi.Input[str] instance_group_manager: The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
460
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
461
- *compute.instanceGroupManagers.update
451
+ :param pulumi.Input[str] instance_group_manager: The reference of the instance group manager this ResizeRequest is a part of.
462
452
 
463
453
 
464
454
  - - -
@@ -468,7 +458,7 @@ class ResizeRequest(pulumi.CustomResource):
468
458
  :param pulumi.Input[Union['ResizeRequestRequestedRunDurationArgs', 'ResizeRequestRequestedRunDurationArgsDict']] requested_run_duration: Requested run duration for instances that will be created by this request. At the end of the run duration instance will be deleted.
469
459
  Structure is documented below.
470
460
  :param pulumi.Input[int] resize_by: The number of instances to be created by this resize request. The group's target size will be increased by this number.
471
- :param pulumi.Input[str] zone: Name of the compute zone scoping this request. Name should conform to RFC1035.
461
+ :param pulumi.Input[str] zone: The reference of the compute zone scoping this request.
472
462
  """
473
463
  ...
474
464
  @overload
@@ -481,13 +471,13 @@ class ResizeRequest(pulumi.CustomResource):
481
471
 
482
472
  Resize Requests are the Managed Instance Group implementation of Dynamic Workload Scheduler Flex Start.
483
473
 
484
- With Dynamic Workload Scheduler in Flex Start mode, you submit a GPU capacity request for your AI/ML jobs by indicating how many you need, a duration, and your preferred region. Dynamic Workload Scheduler intelligently persists the request; once the capacity becomes available, it automatically provisions your VMs enabling your workloads to run continuously for the entire duration of the capacity allocation.
474
+ With Dynamic Workload Scheduler in Flex Start mode, you submit a GPU capacity request for your AI/ML jobs by indicating how many you need, a duration, and your preferred zone. Dynamic Workload Scheduler intelligently persists the request; once the capacity becomes available, it automatically provisions your VMs enabling your workloads to run continuously for the entire duration of the capacity allocation.
485
475
 
486
476
  To get more information about ResizeRequest, see:
487
477
 
488
478
  * [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/instanceGroupManagerResizeRequests)
489
479
  * How-to Guides
490
- * [QUICKSTART_TITLE](https://cloud.google.com/compute/docs/instance-groups/create-resize-requests-mig)
480
+ * [About resize requests in a MIG](https://cloud.google.com/compute/docs/instance-groups/about-resize-requests-mig)
491
481
 
492
482
  ## Example Usage
493
483
 
@@ -659,9 +649,7 @@ class ResizeRequest(pulumi.CustomResource):
659
649
  :param pulumi.ResourceOptions opts: Options for the resource.
660
650
  :param pulumi.Input[str] creation_timestamp: The creation timestamp for this resize request in RFC3339 text format.
661
651
  :param pulumi.Input[str] description: An optional description of this resize-request.
662
- :param pulumi.Input[str] instance_group_manager: The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
663
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
664
- *compute.instanceGroupManagers.update
652
+ :param pulumi.Input[str] instance_group_manager: The reference of the instance group manager this ResizeRequest is a part of.
665
653
 
666
654
 
667
655
  - - -
@@ -671,10 +659,10 @@ class ResizeRequest(pulumi.CustomResource):
671
659
  :param pulumi.Input[Union['ResizeRequestRequestedRunDurationArgs', 'ResizeRequestRequestedRunDurationArgsDict']] requested_run_duration: Requested run duration for instances that will be created by this request. At the end of the run duration instance will be deleted.
672
660
  Structure is documented below.
673
661
  :param pulumi.Input[int] resize_by: The number of instances to be created by this resize request. The group's target size will be increased by this number.
674
- :param pulumi.Input[str] state: [Output only] Current state of the request.
675
- :param pulumi.Input[Sequence[pulumi.Input[Union['ResizeRequestStatusArgs', 'ResizeRequestStatusArgsDict']]]] statuses: [Output only] Status of the request.
662
+ :param pulumi.Input[str] state: Current state of the request.
663
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ResizeRequestStatusArgs', 'ResizeRequestStatusArgsDict']]]] statuses: Status of the request.
676
664
  Structure is documented below.
677
- :param pulumi.Input[str] zone: Name of the compute zone scoping this request. Name should conform to RFC1035.
665
+ :param pulumi.Input[str] zone: The reference of the compute zone scoping this request.
678
666
  """
679
667
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
680
668
 
@@ -712,9 +700,7 @@ class ResizeRequest(pulumi.CustomResource):
712
700
  @pulumi.getter(name="instanceGroupManager")
713
701
  def instance_group_manager(self) -> pulumi.Output[str]:
714
702
  """
715
- The name of the managed instance group. The name should conform to RFC1035 or be a resource ID.
716
- Authorization requires the following IAM permission on the specified resource instanceGroupManager:
717
- *compute.instanceGroupManagers.update
703
+ The reference of the instance group manager this ResizeRequest is a part of.
718
704
 
719
705
 
720
706
  - - -
@@ -759,7 +745,7 @@ class ResizeRequest(pulumi.CustomResource):
759
745
  @pulumi.getter
760
746
  def state(self) -> pulumi.Output[str]:
761
747
  """
762
- [Output only] Current state of the request.
748
+ Current state of the request.
763
749
  """
764
750
  return pulumi.get(self, "state")
765
751
 
@@ -767,7 +753,7 @@ class ResizeRequest(pulumi.CustomResource):
767
753
  @pulumi.getter
768
754
  def statuses(self) -> pulumi.Output[Sequence['outputs.ResizeRequestStatus']]:
769
755
  """
770
- [Output only] Status of the request.
756
+ Status of the request.
771
757
  Structure is documented below.
772
758
  """
773
759
  return pulumi.get(self, "statuses")
@@ -776,7 +762,7 @@ class ResizeRequest(pulumi.CustomResource):
776
762
  @pulumi.getter
777
763
  def zone(self) -> pulumi.Output[str]:
778
764
  """
779
- Name of the compute zone scoping this request. Name should conform to RFC1035.
765
+ The reference of the compute zone scoping this request.
780
766
  """
781
767
  return pulumi.get(self, "zone")
782
768
 
@@ -73,6 +73,8 @@ blockchainNodeEngineCustomEndpoint: Optional[str]
73
73
 
74
74
  certificateManagerCustomEndpoint: Optional[str]
75
75
 
76
+ chronicleCustomEndpoint: Optional[str]
77
+
76
78
  cloudAssetCustomEndpoint: Optional[str]
77
79
 
78
80
  cloudBillingCustomEndpoint: Optional[str]
pulumi_gcp/config/vars.py CHANGED
@@ -137,6 +137,10 @@ class _ExportableConfig(types.ModuleType):
137
137
  def certificate_manager_custom_endpoint(self) -> Optional[str]:
138
138
  return __config__.get('certificateManagerCustomEndpoint')
139
139
 
140
+ @property
141
+ def chronicle_custom_endpoint(self) -> Optional[str]:
142
+ return __config__.get('chronicleCustomEndpoint')
143
+
140
144
  @property
141
145
  def cloud_asset_custom_endpoint(self) -> Optional[str]:
142
146
  return __config__.get('cloudAssetCustomEndpoint')
@@ -672,15 +672,8 @@ class Batch(pulumi.CustomResource):
672
672
  name="dataproc-bucket",
673
673
  location="US",
674
674
  force_destroy=True)
675
- key_ring = gcp.kms.KeyRing("key_ring",
676
- name="example-keyring",
677
- location="us-central1")
678
- crypto_key = gcp.kms.CryptoKey("crypto_key",
679
- name="example-key",
680
- key_ring=key_ring.id,
681
- purpose="ENCRYPT_DECRYPT")
682
675
  crypto_key_member1 = gcp.kms.CryptoKeyIAMMember("crypto_key_member_1",
683
- crypto_key_id=crypto_key.id,
676
+ crypto_key_id="example-key",
684
677
  role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
685
678
  member=f"serviceAccount:service-{project.number}@dataproc-accounts.iam.gserviceaccount.com")
686
679
  ms = gcp.dataproc.MetastoreService("ms",
@@ -736,7 +729,7 @@ class Batch(pulumi.CustomResource):
736
729
  "execution_config": {
737
730
  "ttl": "3600s",
738
731
  "network_tags": ["tag1"],
739
- "kms_key": crypto_key.id,
732
+ "kms_key": "example-key",
740
733
  "network_uri": "default",
741
734
  "service_account": f"{project.number}-compute@developer.gserviceaccount.com",
742
735
  "staging_bucket": bucket.name,
@@ -995,15 +988,8 @@ class Batch(pulumi.CustomResource):
995
988
  name="dataproc-bucket",
996
989
  location="US",
997
990
  force_destroy=True)
998
- key_ring = gcp.kms.KeyRing("key_ring",
999
- name="example-keyring",
1000
- location="us-central1")
1001
- crypto_key = gcp.kms.CryptoKey("crypto_key",
1002
- name="example-key",
1003
- key_ring=key_ring.id,
1004
- purpose="ENCRYPT_DECRYPT")
1005
991
  crypto_key_member1 = gcp.kms.CryptoKeyIAMMember("crypto_key_member_1",
1006
- crypto_key_id=crypto_key.id,
992
+ crypto_key_id="example-key",
1007
993
  role="roles/cloudkms.cryptoKeyEncrypterDecrypter",
1008
994
  member=f"serviceAccount:service-{project.number}@dataproc-accounts.iam.gserviceaccount.com")
1009
995
  ms = gcp.dataproc.MetastoreService("ms",
@@ -1059,7 +1045,7 @@ class Batch(pulumi.CustomResource):
1059
1045
  "execution_config": {
1060
1046
  "ttl": "3600s",
1061
1047
  "network_tags": ["tag1"],
1062
- "kms_key": crypto_key.id,
1048
+ "kms_key": "example-key",
1063
1049
  "network_uri": "default",
1064
1050
  "service_account": f"{project.number}-compute@developer.gserviceaccount.com",
1065
1051
  "staging_bucket": bucket.name,
@@ -97,6 +97,8 @@ __all__ = [
97
97
  'StreamSourceConfigArgsDict',
98
98
  'StreamSourceConfigMysqlSourceConfigArgs',
99
99
  'StreamSourceConfigMysqlSourceConfigArgsDict',
100
+ 'StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs',
101
+ 'StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgsDict',
100
102
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs',
101
103
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsArgsDict',
102
104
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseArgs',
@@ -105,6 +107,8 @@ __all__ = [
105
107
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableArgsDict',
106
108
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgs',
107
109
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableMysqlColumnArgsDict',
110
+ 'StreamSourceConfigMysqlSourceConfigGtidArgs',
111
+ 'StreamSourceConfigMysqlSourceConfigGtidArgsDict',
108
112
  'StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs',
109
113
  'StreamSourceConfigMysqlSourceConfigIncludeObjectsArgsDict',
110
114
  'StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseArgs',
@@ -3284,11 +3288,19 @@ class StreamSourceConfigArgs:
3284
3288
 
3285
3289
  if not MYPY:
3286
3290
  class StreamSourceConfigMysqlSourceConfigArgsDict(TypedDict):
3291
+ binary_log_position: NotRequired[pulumi.Input['StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgsDict']]
3292
+ """
3293
+ CDC reader reads from binary logs replication cdc method.
3294
+ """
3287
3295
  exclude_objects: NotRequired[pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsArgsDict']]
3288
3296
  """
3289
3297
  MySQL objects to exclude from the stream.
3290
3298
  Structure is documented below.
3291
3299
  """
3300
+ gtid: NotRequired[pulumi.Input['StreamSourceConfigMysqlSourceConfigGtidArgsDict']]
3301
+ """
3302
+ CDC reader reads from gtid based replication.
3303
+ """
3292
3304
  include_objects: NotRequired[pulumi.Input['StreamSourceConfigMysqlSourceConfigIncludeObjectsArgsDict']]
3293
3305
  """
3294
3306
  MySQL objects to retrieve from the source.
@@ -3310,13 +3322,17 @@ elif False:
3310
3322
  @pulumi.input_type
3311
3323
  class StreamSourceConfigMysqlSourceConfigArgs:
3312
3324
  def __init__(__self__, *,
3325
+ binary_log_position: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs']] = None,
3313
3326
  exclude_objects: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs']] = None,
3327
+ gtid: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigGtidArgs']] = None,
3314
3328
  include_objects: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs']] = None,
3315
3329
  max_concurrent_backfill_tasks: Optional[pulumi.Input[int]] = None,
3316
3330
  max_concurrent_cdc_tasks: Optional[pulumi.Input[int]] = None):
3317
3331
  """
3332
+ :param pulumi.Input['StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs'] binary_log_position: CDC reader reads from binary logs replication cdc method.
3318
3333
  :param pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs'] exclude_objects: MySQL objects to exclude from the stream.
3319
3334
  Structure is documented below.
3335
+ :param pulumi.Input['StreamSourceConfigMysqlSourceConfigGtidArgs'] gtid: CDC reader reads from gtid based replication.
3320
3336
  :param pulumi.Input['StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs'] include_objects: MySQL objects to retrieve from the source.
3321
3337
  Structure is documented below.
3322
3338
  :param pulumi.Input[int] max_concurrent_backfill_tasks: Maximum number of concurrent backfill tasks. The number should be non negative.
@@ -3324,8 +3340,12 @@ class StreamSourceConfigMysqlSourceConfigArgs:
3324
3340
  :param pulumi.Input[int] max_concurrent_cdc_tasks: Maximum number of concurrent CDC tasks. The number should be non negative.
3325
3341
  If not set (or set to 0), the system's default value will be used.
3326
3342
  """
3343
+ if binary_log_position is not None:
3344
+ pulumi.set(__self__, "binary_log_position", binary_log_position)
3327
3345
  if exclude_objects is not None:
3328
3346
  pulumi.set(__self__, "exclude_objects", exclude_objects)
3347
+ if gtid is not None:
3348
+ pulumi.set(__self__, "gtid", gtid)
3329
3349
  if include_objects is not None:
3330
3350
  pulumi.set(__self__, "include_objects", include_objects)
3331
3351
  if max_concurrent_backfill_tasks is not None:
@@ -3333,6 +3353,18 @@ class StreamSourceConfigMysqlSourceConfigArgs:
3333
3353
  if max_concurrent_cdc_tasks is not None:
3334
3354
  pulumi.set(__self__, "max_concurrent_cdc_tasks", max_concurrent_cdc_tasks)
3335
3355
 
3356
+ @property
3357
+ @pulumi.getter(name="binaryLogPosition")
3358
+ def binary_log_position(self) -> Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs']]:
3359
+ """
3360
+ CDC reader reads from binary logs replication cdc method.
3361
+ """
3362
+ return pulumi.get(self, "binary_log_position")
3363
+
3364
+ @binary_log_position.setter
3365
+ def binary_log_position(self, value: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs']]):
3366
+ pulumi.set(self, "binary_log_position", value)
3367
+
3336
3368
  @property
3337
3369
  @pulumi.getter(name="excludeObjects")
3338
3370
  def exclude_objects(self) -> Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs']]:
@@ -3346,6 +3378,18 @@ class StreamSourceConfigMysqlSourceConfigArgs:
3346
3378
  def exclude_objects(self, value: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs']]):
3347
3379
  pulumi.set(self, "exclude_objects", value)
3348
3380
 
3381
+ @property
3382
+ @pulumi.getter
3383
+ def gtid(self) -> Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigGtidArgs']]:
3384
+ """
3385
+ CDC reader reads from gtid based replication.
3386
+ """
3387
+ return pulumi.get(self, "gtid")
3388
+
3389
+ @gtid.setter
3390
+ def gtid(self, value: Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigGtidArgs']]):
3391
+ pulumi.set(self, "gtid", value)
3392
+
3349
3393
  @property
3350
3394
  @pulumi.getter(name="includeObjects")
3351
3395
  def include_objects(self) -> Optional[pulumi.Input['StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs']]:
@@ -3386,6 +3430,18 @@ class StreamSourceConfigMysqlSourceConfigArgs:
3386
3430
  pulumi.set(self, "max_concurrent_cdc_tasks", value)
3387
3431
 
3388
3432
 
3433
+ if not MYPY:
3434
+ class StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgsDict(TypedDict):
3435
+ pass
3436
+ elif False:
3437
+ StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgsDict: TypeAlias = Mapping[str, Any]
3438
+
3439
+ @pulumi.input_type
3440
+ class StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs:
3441
+ def __init__(__self__):
3442
+ pass
3443
+
3444
+
3389
3445
  if not MYPY:
3390
3446
  class StreamSourceConfigMysqlSourceConfigExcludeObjectsArgsDict(TypedDict):
3391
3447
  mysql_databases: pulumi.Input[Sequence[pulumi.Input['StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseArgsDict']]]
@@ -3686,6 +3742,18 @@ class StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableMy
3686
3742
  pulumi.set(self, "primary_key", value)
3687
3743
 
3688
3744
 
3745
+ if not MYPY:
3746
+ class StreamSourceConfigMysqlSourceConfigGtidArgsDict(TypedDict):
3747
+ pass
3748
+ elif False:
3749
+ StreamSourceConfigMysqlSourceConfigGtidArgsDict: TypeAlias = Mapping[str, Any]
3750
+
3751
+ @pulumi.input_type
3752
+ class StreamSourceConfigMysqlSourceConfigGtidArgs:
3753
+ def __init__(__self__):
3754
+ pass
3755
+
3756
+
3689
3757
  if not MYPY:
3690
3758
  class StreamSourceConfigMysqlSourceConfigIncludeObjectsArgsDict(TypedDict):
3691
3759
  mysql_databases: pulumi.Input[Sequence[pulumi.Input['StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseArgsDict']]]
@@ -57,10 +57,12 @@ __all__ = [
57
57
  'StreamDestinationConfigGcsDestinationConfigJsonFileFormat',
58
58
  'StreamSourceConfig',
59
59
  'StreamSourceConfigMysqlSourceConfig',
60
+ 'StreamSourceConfigMysqlSourceConfigBinaryLogPosition',
60
61
  'StreamSourceConfigMysqlSourceConfigExcludeObjects',
61
62
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabase',
62
63
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTable',
63
64
  'StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableMysqlColumn',
65
+ 'StreamSourceConfigMysqlSourceConfigGtid',
64
66
  'StreamSourceConfigMysqlSourceConfigIncludeObjects',
65
67
  'StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabase',
66
68
  'StreamSourceConfigMysqlSourceConfigIncludeObjectsMysqlDatabaseMysqlTable',
@@ -2490,7 +2492,9 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2490
2492
  @staticmethod
2491
2493
  def __key_warning(key: str):
2492
2494
  suggest = None
2493
- if key == "excludeObjects":
2495
+ if key == "binaryLogPosition":
2496
+ suggest = "binary_log_position"
2497
+ elif key == "excludeObjects":
2494
2498
  suggest = "exclude_objects"
2495
2499
  elif key == "includeObjects":
2496
2500
  suggest = "include_objects"
@@ -2511,13 +2515,17 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2511
2515
  return super().get(key, default)
2512
2516
 
2513
2517
  def __init__(__self__, *,
2518
+ binary_log_position: Optional['outputs.StreamSourceConfigMysqlSourceConfigBinaryLogPosition'] = None,
2514
2519
  exclude_objects: Optional['outputs.StreamSourceConfigMysqlSourceConfigExcludeObjects'] = None,
2520
+ gtid: Optional['outputs.StreamSourceConfigMysqlSourceConfigGtid'] = None,
2515
2521
  include_objects: Optional['outputs.StreamSourceConfigMysqlSourceConfigIncludeObjects'] = None,
2516
2522
  max_concurrent_backfill_tasks: Optional[int] = None,
2517
2523
  max_concurrent_cdc_tasks: Optional[int] = None):
2518
2524
  """
2525
+ :param 'StreamSourceConfigMysqlSourceConfigBinaryLogPositionArgs' binary_log_position: CDC reader reads from binary logs replication cdc method.
2519
2526
  :param 'StreamSourceConfigMysqlSourceConfigExcludeObjectsArgs' exclude_objects: MySQL objects to exclude from the stream.
2520
2527
  Structure is documented below.
2528
+ :param 'StreamSourceConfigMysqlSourceConfigGtidArgs' gtid: CDC reader reads from gtid based replication.
2521
2529
  :param 'StreamSourceConfigMysqlSourceConfigIncludeObjectsArgs' include_objects: MySQL objects to retrieve from the source.
2522
2530
  Structure is documented below.
2523
2531
  :param int max_concurrent_backfill_tasks: Maximum number of concurrent backfill tasks. The number should be non negative.
@@ -2525,8 +2533,12 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2525
2533
  :param int max_concurrent_cdc_tasks: Maximum number of concurrent CDC tasks. The number should be non negative.
2526
2534
  If not set (or set to 0), the system's default value will be used.
2527
2535
  """
2536
+ if binary_log_position is not None:
2537
+ pulumi.set(__self__, "binary_log_position", binary_log_position)
2528
2538
  if exclude_objects is not None:
2529
2539
  pulumi.set(__self__, "exclude_objects", exclude_objects)
2540
+ if gtid is not None:
2541
+ pulumi.set(__self__, "gtid", gtid)
2530
2542
  if include_objects is not None:
2531
2543
  pulumi.set(__self__, "include_objects", include_objects)
2532
2544
  if max_concurrent_backfill_tasks is not None:
@@ -2534,6 +2546,14 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2534
2546
  if max_concurrent_cdc_tasks is not None:
2535
2547
  pulumi.set(__self__, "max_concurrent_cdc_tasks", max_concurrent_cdc_tasks)
2536
2548
 
2549
+ @property
2550
+ @pulumi.getter(name="binaryLogPosition")
2551
+ def binary_log_position(self) -> Optional['outputs.StreamSourceConfigMysqlSourceConfigBinaryLogPosition']:
2552
+ """
2553
+ CDC reader reads from binary logs replication cdc method.
2554
+ """
2555
+ return pulumi.get(self, "binary_log_position")
2556
+
2537
2557
  @property
2538
2558
  @pulumi.getter(name="excludeObjects")
2539
2559
  def exclude_objects(self) -> Optional['outputs.StreamSourceConfigMysqlSourceConfigExcludeObjects']:
@@ -2543,6 +2563,14 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2543
2563
  """
2544
2564
  return pulumi.get(self, "exclude_objects")
2545
2565
 
2566
+ @property
2567
+ @pulumi.getter
2568
+ def gtid(self) -> Optional['outputs.StreamSourceConfigMysqlSourceConfigGtid']:
2569
+ """
2570
+ CDC reader reads from gtid based replication.
2571
+ """
2572
+ return pulumi.get(self, "gtid")
2573
+
2546
2574
  @property
2547
2575
  @pulumi.getter(name="includeObjects")
2548
2576
  def include_objects(self) -> Optional['outputs.StreamSourceConfigMysqlSourceConfigIncludeObjects']:
@@ -2571,6 +2599,12 @@ class StreamSourceConfigMysqlSourceConfig(dict):
2571
2599
  return pulumi.get(self, "max_concurrent_cdc_tasks")
2572
2600
 
2573
2601
 
2602
+ @pulumi.output_type
2603
+ class StreamSourceConfigMysqlSourceConfigBinaryLogPosition(dict):
2604
+ def __init__(__self__):
2605
+ pass
2606
+
2607
+
2574
2608
  @pulumi.output_type
2575
2609
  class StreamSourceConfigMysqlSourceConfigExcludeObjects(dict):
2576
2610
  @staticmethod
@@ -2822,6 +2856,12 @@ class StreamSourceConfigMysqlSourceConfigExcludeObjectsMysqlDatabaseMysqlTableMy
2822
2856
  return pulumi.get(self, "primary_key")
2823
2857
 
2824
2858
 
2859
+ @pulumi.output_type
2860
+ class StreamSourceConfigMysqlSourceConfigGtid(dict):
2861
+ def __init__(__self__):
2862
+ pass
2863
+
2864
+
2825
2865
  @pulumi.output_type
2826
2866
  class StreamSourceConfigMysqlSourceConfigIncludeObjects(dict):
2827
2867
  @staticmethod