pulumi-gcp 9.3.0a1759561069__py3-none-any.whl → 9.4.0a1759906655__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 (76) hide show
  1. pulumi_gcp/__init__.py +32 -0
  2. pulumi_gcp/apigee/__init__.py +1 -0
  3. pulumi_gcp/apigee/api_deployment.py +372 -0
  4. pulumi_gcp/apihub/plugin.py +1 -1
  5. pulumi_gcp/artifactregistry/__init__.py +2 -0
  6. pulumi_gcp/artifactregistry/get_maven_artifacts.py +164 -0
  7. pulumi_gcp/artifactregistry/get_npm_packages.py +164 -0
  8. pulumi_gcp/artifactregistry/outputs.py +165 -0
  9. pulumi_gcp/cloudrunv2/_inputs.py +823 -15
  10. pulumi_gcp/cloudrunv2/outputs.py +1749 -743
  11. pulumi_gcp/cloudrunv2/worker_pool.py +110 -0
  12. pulumi_gcp/compute/_inputs.py +28 -0
  13. pulumi_gcp/compute/outputs.py +20 -1
  14. pulumi_gcp/compute/vpn_tunnel.py +97 -23
  15. pulumi_gcp/compute/wire_group.py +2 -0
  16. pulumi_gcp/dataloss/_inputs.py +970 -30
  17. pulumi_gcp/dataloss/outputs.py +850 -20
  18. pulumi_gcp/dataloss/prevention_discovery_config.py +54 -0
  19. pulumi_gcp/diagflow/_inputs.py +66 -0
  20. pulumi_gcp/diagflow/conversation_profile.py +84 -0
  21. pulumi_gcp/diagflow/outputs.py +57 -0
  22. pulumi_gcp/discoveryengine/__init__.py +1 -0
  23. pulumi_gcp/discoveryengine/_inputs.py +187 -0
  24. pulumi_gcp/discoveryengine/data_connector.py +1368 -0
  25. pulumi_gcp/discoveryengine/outputs.py +135 -0
  26. pulumi_gcp/discoveryengine/search_engine.py +47 -0
  27. pulumi_gcp/gkebackup/_inputs.py +111 -0
  28. pulumi_gcp/gkebackup/backup_plan.py +72 -0
  29. pulumi_gcp/gkebackup/outputs.py +84 -0
  30. pulumi_gcp/kms/__init__.py +1 -0
  31. pulumi_gcp/kms/_inputs.py +43 -0
  32. pulumi_gcp/kms/organization_kaj_policy_config.py +290 -0
  33. pulumi_gcp/kms/outputs.py +43 -0
  34. pulumi_gcp/logging/metric.py +2 -2
  35. pulumi_gcp/looker/instance.py +51 -0
  36. pulumi_gcp/managedkafka/connect_cluster.py +20 -82
  37. pulumi_gcp/managedkafka/connector.py +24 -94
  38. pulumi_gcp/netapp/_inputs.py +28 -5
  39. pulumi_gcp/netapp/outputs.py +19 -3
  40. pulumi_gcp/netapp/storage_pool.py +56 -0
  41. pulumi_gcp/netapp/volume.py +28 -0
  42. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  43. pulumi_gcp/networksecurity/mirroring_endpoint_group.py +211 -23
  44. pulumi_gcp/oracledatabase/odb_network.py +101 -2
  45. pulumi_gcp/orgpolicy/policy.py +2 -2
  46. pulumi_gcp/privilegedaccessmanager/_inputs.py +27 -4
  47. pulumi_gcp/privilegedaccessmanager/outputs.py +31 -6
  48. pulumi_gcp/pubsub/get_subscription.py +12 -1
  49. pulumi_gcp/pubsub/get_topic.py +15 -4
  50. pulumi_gcp/pubsub/subscription.py +153 -7
  51. pulumi_gcp/pubsub/topic.py +145 -3
  52. pulumi_gcp/pulumi-plugin.json +1 -1
  53. pulumi_gcp/saasruntime/__init__.py +1 -0
  54. pulumi_gcp/saasruntime/_inputs.py +60 -0
  55. pulumi_gcp/saasruntime/outputs.py +55 -0
  56. pulumi_gcp/saasruntime/rollout_kind.py +1086 -0
  57. pulumi_gcp/sql/_inputs.py +122 -3
  58. pulumi_gcp/sql/database_instance.py +47 -0
  59. pulumi_gcp/sql/get_database_instance.py +12 -1
  60. pulumi_gcp/sql/outputs.py +233 -2
  61. pulumi_gcp/storage/bucket.py +52 -24
  62. pulumi_gcp/storage/get_insights_dataset_config.py +12 -1
  63. pulumi_gcp/storage/insights_dataset_config.py +49 -0
  64. pulumi_gcp/storage/insights_report_config.py +47 -0
  65. pulumi_gcp/vertex/_inputs.py +339 -1
  66. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  67. pulumi_gcp/vertex/ai_endpoint_with_model_garden_deployment.py +102 -0
  68. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  69. pulumi_gcp/vertex/ai_index.py +74 -2
  70. pulumi_gcp/vertex/ai_index_endpoint.py +54 -0
  71. pulumi_gcp/vertex/get_ai_index.py +12 -1
  72. pulumi_gcp/vertex/outputs.py +303 -1
  73. {pulumi_gcp-9.3.0a1759561069.dist-info → pulumi_gcp-9.4.0a1759906655.dist-info}/METADATA +1 -1
  74. {pulumi_gcp-9.3.0a1759561069.dist-info → pulumi_gcp-9.4.0a1759906655.dist-info}/RECORD +76 -70
  75. {pulumi_gcp-9.3.0a1759561069.dist-info → pulumi_gcp-9.4.0a1759906655.dist-info}/WHEEL +0 -0
  76. {pulumi_gcp-9.3.0a1759561069.dist-info → pulumi_gcp-9.4.0a1759906655.dist-info}/top_level.txt +0 -0
@@ -23,6 +23,7 @@ class OdbNetworkArgs:
23
23
  network: pulumi.Input[_builtins.str],
24
24
  odb_network_id: pulumi.Input[_builtins.str],
25
25
  deletion_protection: Optional[pulumi.Input[_builtins.bool]] = None,
26
+ gcp_oracle_zone: Optional[pulumi.Input[_builtins.str]] = None,
26
27
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
27
28
  project: Optional[pulumi.Input[_builtins.str]] = None):
28
29
  """
@@ -34,6 +35,9 @@ class OdbNetworkArgs:
34
35
  to (^a-z?$) and must be a maximum of 63
35
36
  characters in length. The value must start with a letter and end with
36
37
  a letter or a number.
38
+ :param pulumi.Input[_builtins.str] gcp_oracle_zone: The GCP Oracle zone where OdbNetwork is hosted.
39
+ Example: us-east4-b-r2.
40
+ If not specified, the system will pick a zone based on availability.
37
41
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Labels or tags associated with the resource.
38
42
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
39
43
  Please refer to the field `effective_labels` for all of the labels present on the resource.
@@ -45,6 +49,8 @@ class OdbNetworkArgs:
45
49
  pulumi.set(__self__, "odb_network_id", odb_network_id)
46
50
  if deletion_protection is not None:
47
51
  pulumi.set(__self__, "deletion_protection", deletion_protection)
52
+ if gcp_oracle_zone is not None:
53
+ pulumi.set(__self__, "gcp_oracle_zone", gcp_oracle_zone)
48
54
  if labels is not None:
49
55
  pulumi.set(__self__, "labels", labels)
50
56
  if project is not None:
@@ -99,6 +105,20 @@ class OdbNetworkArgs:
99
105
  def deletion_protection(self, value: Optional[pulumi.Input[_builtins.bool]]):
100
106
  pulumi.set(self, "deletion_protection", value)
101
107
 
108
+ @_builtins.property
109
+ @pulumi.getter(name="gcpOracleZone")
110
+ def gcp_oracle_zone(self) -> Optional[pulumi.Input[_builtins.str]]:
111
+ """
112
+ The GCP Oracle zone where OdbNetwork is hosted.
113
+ Example: us-east4-b-r2.
114
+ If not specified, the system will pick a zone based on availability.
115
+ """
116
+ return pulumi.get(self, "gcp_oracle_zone")
117
+
118
+ @gcp_oracle_zone.setter
119
+ def gcp_oracle_zone(self, value: Optional[pulumi.Input[_builtins.str]]):
120
+ pulumi.set(self, "gcp_oracle_zone", value)
121
+
102
122
  @_builtins.property
103
123
  @pulumi.getter
104
124
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
@@ -134,6 +154,7 @@ class _OdbNetworkState:
134
154
  deletion_protection: Optional[pulumi.Input[_builtins.bool]] = None,
135
155
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
136
156
  entitlement_id: Optional[pulumi.Input[_builtins.str]] = None,
157
+ gcp_oracle_zone: Optional[pulumi.Input[_builtins.str]] = None,
137
158
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
138
159
  location: Optional[pulumi.Input[_builtins.str]] = None,
139
160
  name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -147,6 +168,9 @@ class _OdbNetworkState:
147
168
  :param pulumi.Input[_builtins.str] create_time: The date and time that the OdbNetwork was created.
148
169
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
149
170
  :param pulumi.Input[_builtins.str] entitlement_id: The ID of the subscription entitlement associated with the OdbNetwork.
171
+ :param pulumi.Input[_builtins.str] gcp_oracle_zone: The GCP Oracle zone where OdbNetwork is hosted.
172
+ Example: us-east4-b-r2.
173
+ If not specified, the system will pick a zone based on availability.
150
174
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Labels or tags associated with the resource.
151
175
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
152
176
  Please refer to the field `effective_labels` for all of the labels present on the resource.
@@ -178,6 +202,8 @@ class _OdbNetworkState:
178
202
  pulumi.set(__self__, "effective_labels", effective_labels)
179
203
  if entitlement_id is not None:
180
204
  pulumi.set(__self__, "entitlement_id", entitlement_id)
205
+ if gcp_oracle_zone is not None:
206
+ pulumi.set(__self__, "gcp_oracle_zone", gcp_oracle_zone)
181
207
  if labels is not None:
182
208
  pulumi.set(__self__, "labels", labels)
183
209
  if location is not None:
@@ -240,6 +266,20 @@ class _OdbNetworkState:
240
266
  def entitlement_id(self, value: Optional[pulumi.Input[_builtins.str]]):
241
267
  pulumi.set(self, "entitlement_id", value)
242
268
 
269
+ @_builtins.property
270
+ @pulumi.getter(name="gcpOracleZone")
271
+ def gcp_oracle_zone(self) -> Optional[pulumi.Input[_builtins.str]]:
272
+ """
273
+ The GCP Oracle zone where OdbNetwork is hosted.
274
+ Example: us-east4-b-r2.
275
+ If not specified, the system will pick a zone based on availability.
276
+ """
277
+ return pulumi.get(self, "gcp_oracle_zone")
278
+
279
+ @gcp_oracle_zone.setter
280
+ def gcp_oracle_zone(self, value: Optional[pulumi.Input[_builtins.str]]):
281
+ pulumi.set(self, "gcp_oracle_zone", value)
282
+
243
283
  @_builtins.property
244
284
  @pulumi.getter
245
285
  def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
@@ -358,6 +398,7 @@ class OdbNetwork(pulumi.CustomResource):
358
398
  resource_name: str,
359
399
  opts: Optional[pulumi.ResourceOptions] = None,
360
400
  deletion_protection: Optional[pulumi.Input[_builtins.bool]] = None,
401
+ gcp_oracle_zone: Optional[pulumi.Input[_builtins.str]] = None,
361
402
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
362
403
  location: Optional[pulumi.Input[_builtins.str]] = None,
363
404
  network: Optional[pulumi.Input[_builtins.str]] = None,
@@ -373,7 +414,25 @@ class OdbNetwork(pulumi.CustomResource):
373
414
 
374
415
  ## Example Usage
375
416
 
376
- ### Oracledatabase Odbnetwork
417
+ ### Oracledatabase Odbnetwork Basic
418
+
419
+ ```python
420
+ import pulumi
421
+ import pulumi_gcp as gcp
422
+
423
+ default = gcp.compute.get_network(name="new",
424
+ project="my-project")
425
+ my_odbnetwork = gcp.oracledatabase.OdbNetwork("my-odbnetwork",
426
+ odb_network_id="my-odbnetwork",
427
+ location="us-west3",
428
+ project="my-project",
429
+ network=default.id,
430
+ labels={
431
+ "terraform_created": "true",
432
+ },
433
+ deletion_protection=True)
434
+ ```
435
+ ### Oracledatabase Odbnetwork Full
377
436
 
378
437
  ```python
379
438
  import pulumi
@@ -386,6 +445,7 @@ class OdbNetwork(pulumi.CustomResource):
386
445
  location="us-west3",
387
446
  project="my-project",
388
447
  network=default.id,
448
+ gcp_oracle_zone="us-west3-a-r1",
389
449
  labels={
390
450
  "terraform_created": "true",
391
451
  },
@@ -418,6 +478,9 @@ class OdbNetwork(pulumi.CustomResource):
418
478
 
419
479
  :param str resource_name: The name of the resource.
420
480
  :param pulumi.ResourceOptions opts: Options for the resource.
481
+ :param pulumi.Input[_builtins.str] gcp_oracle_zone: The GCP Oracle zone where OdbNetwork is hosted.
482
+ Example: us-east4-b-r2.
483
+ If not specified, the system will pick a zone based on availability.
421
484
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Labels or tags associated with the resource.
422
485
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
423
486
  Please refer to the field `effective_labels` for all of the labels present on the resource.
@@ -446,7 +509,25 @@ class OdbNetwork(pulumi.CustomResource):
446
509
 
447
510
  ## Example Usage
448
511
 
449
- ### Oracledatabase Odbnetwork
512
+ ### Oracledatabase Odbnetwork Basic
513
+
514
+ ```python
515
+ import pulumi
516
+ import pulumi_gcp as gcp
517
+
518
+ default = gcp.compute.get_network(name="new",
519
+ project="my-project")
520
+ my_odbnetwork = gcp.oracledatabase.OdbNetwork("my-odbnetwork",
521
+ odb_network_id="my-odbnetwork",
522
+ location="us-west3",
523
+ project="my-project",
524
+ network=default.id,
525
+ labels={
526
+ "terraform_created": "true",
527
+ },
528
+ deletion_protection=True)
529
+ ```
530
+ ### Oracledatabase Odbnetwork Full
450
531
 
451
532
  ```python
452
533
  import pulumi
@@ -459,6 +540,7 @@ class OdbNetwork(pulumi.CustomResource):
459
540
  location="us-west3",
460
541
  project="my-project",
461
542
  network=default.id,
543
+ gcp_oracle_zone="us-west3-a-r1",
462
544
  labels={
463
545
  "terraform_created": "true",
464
546
  },
@@ -505,6 +587,7 @@ class OdbNetwork(pulumi.CustomResource):
505
587
  resource_name: str,
506
588
  opts: Optional[pulumi.ResourceOptions] = None,
507
589
  deletion_protection: Optional[pulumi.Input[_builtins.bool]] = None,
590
+ gcp_oracle_zone: Optional[pulumi.Input[_builtins.str]] = None,
508
591
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
509
592
  location: Optional[pulumi.Input[_builtins.str]] = None,
510
593
  network: Optional[pulumi.Input[_builtins.str]] = None,
@@ -520,6 +603,7 @@ class OdbNetwork(pulumi.CustomResource):
520
603
  __props__ = OdbNetworkArgs.__new__(OdbNetworkArgs)
521
604
 
522
605
  __props__.__dict__["deletion_protection"] = deletion_protection
606
+ __props__.__dict__["gcp_oracle_zone"] = gcp_oracle_zone
523
607
  __props__.__dict__["labels"] = labels
524
608
  if location is None and not opts.urn:
525
609
  raise TypeError("Missing required property 'location'")
@@ -553,6 +637,7 @@ class OdbNetwork(pulumi.CustomResource):
553
637
  deletion_protection: Optional[pulumi.Input[_builtins.bool]] = None,
554
638
  effective_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
555
639
  entitlement_id: Optional[pulumi.Input[_builtins.str]] = None,
640
+ gcp_oracle_zone: Optional[pulumi.Input[_builtins.str]] = None,
556
641
  labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
557
642
  location: Optional[pulumi.Input[_builtins.str]] = None,
558
643
  name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -571,6 +656,9 @@ class OdbNetwork(pulumi.CustomResource):
571
656
  :param pulumi.Input[_builtins.str] create_time: The date and time that the OdbNetwork was created.
572
657
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] effective_labels: All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
573
658
  :param pulumi.Input[_builtins.str] entitlement_id: The ID of the subscription entitlement associated with the OdbNetwork.
659
+ :param pulumi.Input[_builtins.str] gcp_oracle_zone: The GCP Oracle zone where OdbNetwork is hosted.
660
+ Example: us-east4-b-r2.
661
+ If not specified, the system will pick a zone based on availability.
574
662
  :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: Labels or tags associated with the resource.
575
663
  **Note**: This field is non-authoritative, and will only manage the labels present in your configuration.
576
664
  Please refer to the field `effective_labels` for all of the labels present on the resource.
@@ -602,6 +690,7 @@ class OdbNetwork(pulumi.CustomResource):
602
690
  __props__.__dict__["deletion_protection"] = deletion_protection
603
691
  __props__.__dict__["effective_labels"] = effective_labels
604
692
  __props__.__dict__["entitlement_id"] = entitlement_id
693
+ __props__.__dict__["gcp_oracle_zone"] = gcp_oracle_zone
605
694
  __props__.__dict__["labels"] = labels
606
695
  __props__.__dict__["location"] = location
607
696
  __props__.__dict__["name"] = name
@@ -641,6 +730,16 @@ class OdbNetwork(pulumi.CustomResource):
641
730
  """
642
731
  return pulumi.get(self, "entitlement_id")
643
732
 
733
+ @_builtins.property
734
+ @pulumi.getter(name="gcpOracleZone")
735
+ def gcp_oracle_zone(self) -> pulumi.Output[_builtins.str]:
736
+ """
737
+ The GCP Oracle zone where OdbNetwork is hosted.
738
+ Example: us-east4-b-r2.
739
+ If not specified, the system will pick a zone based on availability.
740
+ """
741
+ return pulumi.get(self, "gcp_oracle_zone")
742
+
644
743
  @_builtins.property
645
744
  @pulumi.getter
646
745
  def labels(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
@@ -302,7 +302,7 @@ class Policy(pulumi.CustomResource):
302
302
  import pulumi_gcp as gcp
303
303
 
304
304
  constraint = gcp.orgpolicy.CustomConstraint("constraint",
305
- name="custom.disableGkeAutoUpgrade_77124",
305
+ name="custom.disableGkeAutoUpgrade_1443",
306
306
  parent="organizations/123456789",
307
307
  display_name="Disable GKE auto upgrade",
308
308
  description="Only allow GKE NodePool resource to be created or updated if AutoUpgrade is not enabled where this custom constraint is enforced.",
@@ -488,7 +488,7 @@ class Policy(pulumi.CustomResource):
488
488
  import pulumi_gcp as gcp
489
489
 
490
490
  constraint = gcp.orgpolicy.CustomConstraint("constraint",
491
- name="custom.disableGkeAutoUpgrade_77124",
491
+ name="custom.disableGkeAutoUpgrade_1443",
492
492
  parent="organizations/123456789",
493
493
  display_name="Disable GKE auto upgrade",
494
494
  description="Only allow GKE NodePool resource to be created or updated if AutoUpgrade is not enabled where this custom constraint is enforced.",
@@ -151,7 +151,7 @@ if not MYPY:
151
151
  class EntitlementApprovalWorkflowManualApprovalsArgsDict(TypedDict):
152
152
  steps: pulumi.Input[Sequence[pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepArgsDict']]]
153
153
  """
154
- List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
154
+ List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
155
155
  Structure is documented below.
156
156
  """
157
157
  require_approver_justification: NotRequired[pulumi.Input[_builtins.bool]]
@@ -167,7 +167,7 @@ class EntitlementApprovalWorkflowManualApprovalsArgs:
167
167
  steps: pulumi.Input[Sequence[pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepArgs']]],
168
168
  require_approver_justification: Optional[pulumi.Input[_builtins.bool]] = None):
169
169
  """
170
- :param pulumi.Input[Sequence[pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepArgs']]] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
170
+ :param pulumi.Input[Sequence[pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepArgs']]] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
171
171
  Structure is documented below.
172
172
  :param pulumi.Input[_builtins.bool] require_approver_justification: Optional. Do the approvers need to provide a justification for their actions?
173
173
  """
@@ -179,7 +179,7 @@ class EntitlementApprovalWorkflowManualApprovalsArgs:
179
179
  @pulumi.getter
180
180
  def steps(self) -> pulumi.Input[Sequence[pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepArgs']]]:
181
181
  """
182
- List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
182
+ List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
183
183
  Structure is documented below.
184
184
  """
185
185
  return pulumi.get(self, "steps")
@@ -219,6 +219,11 @@ if not MYPY:
219
219
  """
220
220
  Optional. Additional email addresses to be notified when a grant is pending approval.
221
221
  """
222
+ id: NotRequired[pulumi.Input[_builtins.str]]
223
+ """
224
+ (Output, Beta)
225
+ Output Only. The ID of the approval step.
226
+ """
222
227
  elif False:
223
228
  EntitlementApprovalWorkflowManualApprovalsStepArgsDict: TypeAlias = Mapping[str, Any]
224
229
 
@@ -227,7 +232,8 @@ class EntitlementApprovalWorkflowManualApprovalsStepArgs:
227
232
  def __init__(__self__, *,
228
233
  approvers: pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepApproversArgs'],
229
234
  approvals_needed: Optional[pulumi.Input[_builtins.int]] = None,
230
- approver_email_recipients: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None):
235
+ approver_email_recipients: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
236
+ id: Optional[pulumi.Input[_builtins.str]] = None):
231
237
  """
232
238
  :param pulumi.Input['EntitlementApprovalWorkflowManualApprovalsStepApproversArgs'] approvers: The potential set of approvers in this step. This list should contain at only one entry.
233
239
  Structure is documented below.
@@ -236,12 +242,16 @@ class EntitlementApprovalWorkflowManualApprovalsStepArgs:
236
242
  will indefinitely block. Should always be greater than 0. Currently 1 is the only
237
243
  supported value.
238
244
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] approver_email_recipients: Optional. Additional email addresses to be notified when a grant is pending approval.
245
+ :param pulumi.Input[_builtins.str] id: (Output, Beta)
246
+ Output Only. The ID of the approval step.
239
247
  """
240
248
  pulumi.set(__self__, "approvers", approvers)
241
249
  if approvals_needed is not None:
242
250
  pulumi.set(__self__, "approvals_needed", approvals_needed)
243
251
  if approver_email_recipients is not None:
244
252
  pulumi.set(__self__, "approver_email_recipients", approver_email_recipients)
253
+ if id is not None:
254
+ pulumi.set(__self__, "id", id)
245
255
 
246
256
  @_builtins.property
247
257
  @pulumi.getter
@@ -283,6 +293,19 @@ class EntitlementApprovalWorkflowManualApprovalsStepArgs:
283
293
  def approver_email_recipients(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
284
294
  pulumi.set(self, "approver_email_recipients", value)
285
295
 
296
+ @_builtins.property
297
+ @pulumi.getter
298
+ def id(self) -> Optional[pulumi.Input[_builtins.str]]:
299
+ """
300
+ (Output, Beta)
301
+ Output Only. The ID of the approval step.
302
+ """
303
+ return pulumi.get(self, "id")
304
+
305
+ @id.setter
306
+ def id(self, value: Optional[pulumi.Input[_builtins.str]]):
307
+ pulumi.set(self, "id", value)
308
+
286
309
 
287
310
  if not MYPY:
288
311
  class EntitlementApprovalWorkflowManualApprovalsStepApproversArgsDict(TypedDict):
@@ -164,7 +164,7 @@ class EntitlementApprovalWorkflowManualApprovals(dict):
164
164
  steps: Sequence['outputs.EntitlementApprovalWorkflowManualApprovalsStep'],
165
165
  require_approver_justification: Optional[_builtins.bool] = None):
166
166
  """
167
- :param Sequence['EntitlementApprovalWorkflowManualApprovalsStepArgs'] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
167
+ :param Sequence['EntitlementApprovalWorkflowManualApprovalsStepArgs'] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
168
168
  Structure is documented below.
169
169
  :param _builtins.bool require_approver_justification: Optional. Do the approvers need to provide a justification for their actions?
170
170
  """
@@ -176,7 +176,7 @@ class EntitlementApprovalWorkflowManualApprovals(dict):
176
176
  @pulumi.getter
177
177
  def steps(self) -> Sequence['outputs.EntitlementApprovalWorkflowManualApprovalsStep']:
178
178
  """
179
- List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
179
+ List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
180
180
  Structure is documented below.
181
181
  """
182
182
  return pulumi.get(self, "steps")
@@ -214,7 +214,8 @@ class EntitlementApprovalWorkflowManualApprovalsStep(dict):
214
214
  def __init__(__self__, *,
215
215
  approvers: 'outputs.EntitlementApprovalWorkflowManualApprovalsStepApprovers',
216
216
  approvals_needed: Optional[_builtins.int] = None,
217
- approver_email_recipients: Optional[Sequence[_builtins.str]] = None):
217
+ approver_email_recipients: Optional[Sequence[_builtins.str]] = None,
218
+ id: Optional[_builtins.str] = None):
218
219
  """
219
220
  :param 'EntitlementApprovalWorkflowManualApprovalsStepApproversArgs' approvers: The potential set of approvers in this step. This list should contain at only one entry.
220
221
  Structure is documented below.
@@ -223,12 +224,16 @@ class EntitlementApprovalWorkflowManualApprovalsStep(dict):
223
224
  will indefinitely block. Should always be greater than 0. Currently 1 is the only
224
225
  supported value.
225
226
  :param Sequence[_builtins.str] approver_email_recipients: Optional. Additional email addresses to be notified when a grant is pending approval.
227
+ :param _builtins.str id: (Output, Beta)
228
+ Output Only. The ID of the approval step.
226
229
  """
227
230
  pulumi.set(__self__, "approvers", approvers)
228
231
  if approvals_needed is not None:
229
232
  pulumi.set(__self__, "approvals_needed", approvals_needed)
230
233
  if approver_email_recipients is not None:
231
234
  pulumi.set(__self__, "approver_email_recipients", approver_email_recipients)
235
+ if id is not None:
236
+ pulumi.set(__self__, "id", id)
232
237
 
233
238
  @_builtins.property
234
239
  @pulumi.getter
@@ -258,6 +263,15 @@ class EntitlementApprovalWorkflowManualApprovalsStep(dict):
258
263
  """
259
264
  return pulumi.get(self, "approver_email_recipients")
260
265
 
266
+ @_builtins.property
267
+ @pulumi.getter
268
+ def id(self) -> Optional[_builtins.str]:
269
+ """
270
+ (Output, Beta)
271
+ Output Only. The ID of the approval step.
272
+ """
273
+ return pulumi.get(self, "id")
274
+
261
275
 
262
276
  @pulumi.output_type
263
277
  class EntitlementApprovalWorkflowManualApprovalsStepApprovers(dict):
@@ -582,7 +596,7 @@ class GetEntitlementApprovalWorkflowManualApprovalResult(dict):
582
596
  steps: Sequence['outputs.GetEntitlementApprovalWorkflowManualApprovalStepResult']):
583
597
  """
584
598
  :param _builtins.bool require_approver_justification: Optional. Do the approvers need to provide a justification for their actions?
585
- :param Sequence['GetEntitlementApprovalWorkflowManualApprovalStepArgs'] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
599
+ :param Sequence['GetEntitlementApprovalWorkflowManualApprovalStepArgs'] steps: List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
586
600
  """
587
601
  pulumi.set(__self__, "require_approver_justification", require_approver_justification)
588
602
  pulumi.set(__self__, "steps", steps)
@@ -599,7 +613,7 @@ class GetEntitlementApprovalWorkflowManualApprovalResult(dict):
599
613
  @pulumi.getter
600
614
  def steps(self) -> Sequence['outputs.GetEntitlementApprovalWorkflowManualApprovalStepResult']:
601
615
  """
602
- List of approval steps in this workflow. These steps would be followed in the specified order sequentially. 1 step is supported for now.
616
+ List of approval steps in this workflow. These steps would be followed in the specified order sequentially.
603
617
  """
604
618
  return pulumi.get(self, "steps")
605
619
 
@@ -609,7 +623,8 @@ class GetEntitlementApprovalWorkflowManualApprovalStepResult(dict):
609
623
  def __init__(__self__, *,
610
624
  approvals_needed: _builtins.int,
611
625
  approver_email_recipients: Sequence[_builtins.str],
612
- approvers: Sequence['outputs.GetEntitlementApprovalWorkflowManualApprovalStepApproverResult']):
626
+ approvers: Sequence['outputs.GetEntitlementApprovalWorkflowManualApprovalStepApproverResult'],
627
+ id: _builtins.str):
613
628
  """
614
629
  :param _builtins.int approvals_needed: How many users from the above list need to approve.
615
630
  If there are not enough distinct users in the list above then the workflow
@@ -617,10 +632,12 @@ class GetEntitlementApprovalWorkflowManualApprovalStepResult(dict):
617
632
  supported value.
618
633
  :param Sequence[_builtins.str] approver_email_recipients: Optional. Additional email addresses to be notified when a grant is pending approval.
619
634
  :param Sequence['GetEntitlementApprovalWorkflowManualApprovalStepApproverArgs'] approvers: The potential set of approvers in this step. This list should contain at only one entry.
635
+ :param _builtins.str id: Output Only. The ID of the approval step.
620
636
  """
621
637
  pulumi.set(__self__, "approvals_needed", approvals_needed)
622
638
  pulumi.set(__self__, "approver_email_recipients", approver_email_recipients)
623
639
  pulumi.set(__self__, "approvers", approvers)
640
+ pulumi.set(__self__, "id", id)
624
641
 
625
642
  @_builtins.property
626
643
  @pulumi.getter(name="approvalsNeeded")
@@ -649,6 +666,14 @@ class GetEntitlementApprovalWorkflowManualApprovalStepResult(dict):
649
666
  """
650
667
  return pulumi.get(self, "approvers")
651
668
 
669
+ @_builtins.property
670
+ @pulumi.getter
671
+ def id(self) -> _builtins.str:
672
+ """
673
+ Output Only. The ID of the approval step.
674
+ """
675
+ return pulumi.get(self, "id")
676
+
652
677
 
653
678
  @pulumi.output_type
654
679
  class GetEntitlementApprovalWorkflowManualApprovalStepApproverResult(dict):
@@ -27,7 +27,7 @@ class GetSubscriptionResult:
27
27
  """
28
28
  A collection of values returned by getSubscription.
29
29
  """
30
- def __init__(__self__, ack_deadline_seconds=None, bigquery_configs=None, cloud_storage_configs=None, dead_letter_policies=None, effective_labels=None, enable_exactly_once_delivery=None, enable_message_ordering=None, expiration_policies=None, filter=None, id=None, labels=None, message_retention_duration=None, message_transforms=None, name=None, project=None, pulumi_labels=None, push_configs=None, retain_acked_messages=None, retry_policies=None, topic=None):
30
+ def __init__(__self__, ack_deadline_seconds=None, bigquery_configs=None, cloud_storage_configs=None, dead_letter_policies=None, effective_labels=None, enable_exactly_once_delivery=None, enable_message_ordering=None, expiration_policies=None, filter=None, id=None, labels=None, message_retention_duration=None, message_transforms=None, name=None, project=None, pulumi_labels=None, push_configs=None, retain_acked_messages=None, retry_policies=None, tags=None, topic=None):
31
31
  if ack_deadline_seconds and not isinstance(ack_deadline_seconds, int):
32
32
  raise TypeError("Expected argument 'ack_deadline_seconds' to be a int")
33
33
  pulumi.set(__self__, "ack_deadline_seconds", ack_deadline_seconds)
@@ -85,6 +85,9 @@ class GetSubscriptionResult:
85
85
  if retry_policies and not isinstance(retry_policies, list):
86
86
  raise TypeError("Expected argument 'retry_policies' to be a list")
87
87
  pulumi.set(__self__, "retry_policies", retry_policies)
88
+ if tags and not isinstance(tags, dict):
89
+ raise TypeError("Expected argument 'tags' to be a dict")
90
+ pulumi.set(__self__, "tags", tags)
88
91
  if topic and not isinstance(topic, str):
89
92
  raise TypeError("Expected argument 'topic' to be a str")
90
93
  pulumi.set(__self__, "topic", topic)
@@ -187,6 +190,11 @@ class GetSubscriptionResult:
187
190
  def retry_policies(self) -> Sequence['outputs.GetSubscriptionRetryPolicyResult']:
188
191
  return pulumi.get(self, "retry_policies")
189
192
 
193
+ @_builtins.property
194
+ @pulumi.getter
195
+ def tags(self) -> Mapping[str, _builtins.str]:
196
+ return pulumi.get(self, "tags")
197
+
190
198
  @_builtins.property
191
199
  @pulumi.getter
192
200
  def topic(self) -> _builtins.str:
@@ -218,6 +226,7 @@ class AwaitableGetSubscriptionResult(GetSubscriptionResult):
218
226
  push_configs=self.push_configs,
219
227
  retain_acked_messages=self.retain_acked_messages,
220
228
  retry_policies=self.retry_policies,
229
+ tags=self.tags,
221
230
  topic=self.topic)
222
231
 
223
232
 
@@ -271,6 +280,7 @@ def get_subscription(name: Optional[_builtins.str] = None,
271
280
  push_configs=pulumi.get(__ret__, 'push_configs'),
272
281
  retain_acked_messages=pulumi.get(__ret__, 'retain_acked_messages'),
273
282
  retry_policies=pulumi.get(__ret__, 'retry_policies'),
283
+ tags=pulumi.get(__ret__, 'tags'),
274
284
  topic=pulumi.get(__ret__, 'topic'))
275
285
  def get_subscription_output(name: Optional[pulumi.Input[_builtins.str]] = None,
276
286
  project: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
@@ -321,4 +331,5 @@ def get_subscription_output(name: Optional[pulumi.Input[_builtins.str]] = None,
321
331
  push_configs=pulumi.get(__response__, 'push_configs'),
322
332
  retain_acked_messages=pulumi.get(__response__, 'retain_acked_messages'),
323
333
  retry_policies=pulumi.get(__response__, 'retry_policies'),
334
+ tags=pulumi.get(__response__, 'tags'),
324
335
  topic=pulumi.get(__response__, 'topic')))
@@ -27,7 +27,7 @@ class GetTopicResult:
27
27
  """
28
28
  A collection of values returned by getTopic.
29
29
  """
30
- def __init__(__self__, effective_labels=None, id=None, ingestion_data_source_settings=None, kms_key_name=None, labels=None, message_retention_duration=None, message_storage_policies=None, message_transforms=None, name=None, project=None, pulumi_labels=None, schema_settings=None):
30
+ def __init__(__self__, effective_labels=None, id=None, ingestion_data_source_settings=None, kms_key_name=None, labels=None, message_retention_duration=None, message_storage_policies=None, message_transforms=None, name=None, project=None, pulumi_labels=None, schema_settings=None, tags=None):
31
31
  if effective_labels and not isinstance(effective_labels, dict):
32
32
  raise TypeError("Expected argument 'effective_labels' to be a dict")
33
33
  pulumi.set(__self__, "effective_labels", effective_labels)
@@ -64,6 +64,9 @@ class GetTopicResult:
64
64
  if schema_settings and not isinstance(schema_settings, list):
65
65
  raise TypeError("Expected argument 'schema_settings' to be a list")
66
66
  pulumi.set(__self__, "schema_settings", schema_settings)
67
+ if tags and not isinstance(tags, dict):
68
+ raise TypeError("Expected argument 'tags' to be a dict")
69
+ pulumi.set(__self__, "tags", tags)
67
70
 
68
71
  @_builtins.property
69
72
  @pulumi.getter(name="effectiveLabels")
@@ -128,6 +131,11 @@ class GetTopicResult:
128
131
  def schema_settings(self) -> Sequence['outputs.GetTopicSchemaSettingResult']:
129
132
  return pulumi.get(self, "schema_settings")
130
133
 
134
+ @_builtins.property
135
+ @pulumi.getter
136
+ def tags(self) -> Mapping[str, _builtins.str]:
137
+ return pulumi.get(self, "tags")
138
+
131
139
 
132
140
  class AwaitableGetTopicResult(GetTopicResult):
133
141
  # pylint: disable=using-constant-test
@@ -146,7 +154,8 @@ class AwaitableGetTopicResult(GetTopicResult):
146
154
  name=self.name,
147
155
  project=self.project,
148
156
  pulumi_labels=self.pulumi_labels,
149
- schema_settings=self.schema_settings)
157
+ schema_settings=self.schema_settings,
158
+ tags=self.tags)
150
159
 
151
160
 
152
161
  def get_topic(name: Optional[_builtins.str] = None,
@@ -191,7 +200,8 @@ def get_topic(name: Optional[_builtins.str] = None,
191
200
  name=pulumi.get(__ret__, 'name'),
192
201
  project=pulumi.get(__ret__, 'project'),
193
202
  pulumi_labels=pulumi.get(__ret__, 'pulumi_labels'),
194
- schema_settings=pulumi.get(__ret__, 'schema_settings'))
203
+ schema_settings=pulumi.get(__ret__, 'schema_settings'),
204
+ tags=pulumi.get(__ret__, 'tags'))
195
205
  def get_topic_output(name: Optional[pulumi.Input[_builtins.str]] = None,
196
206
  project: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
197
207
  opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetTopicResult]:
@@ -233,4 +243,5 @@ def get_topic_output(name: Optional[pulumi.Input[_builtins.str]] = None,
233
243
  name=pulumi.get(__response__, 'name'),
234
244
  project=pulumi.get(__response__, 'project'),
235
245
  pulumi_labels=pulumi.get(__response__, 'pulumi_labels'),
236
- schema_settings=pulumi.get(__response__, 'schema_settings')))
246
+ schema_settings=pulumi.get(__response__, 'schema_settings'),
247
+ tags=pulumi.get(__response__, 'tags')))