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
@@ -37,7 +37,8 @@ class SubscriptionArgs:
37
37
  project: Optional[pulumi.Input[_builtins.str]] = None,
38
38
  push_config: Optional[pulumi.Input['SubscriptionPushConfigArgs']] = None,
39
39
  retain_acked_messages: Optional[pulumi.Input[_builtins.bool]] = None,
40
- retry_policy: Optional[pulumi.Input['SubscriptionRetryPolicyArgs']] = None):
40
+ retry_policy: Optional[pulumi.Input['SubscriptionRetryPolicyArgs']] = None,
41
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
41
42
  """
42
43
  The set of arguments for constructing a Subscription resource.
43
44
  :param pulumi.Input[_builtins.str] topic: A reference to a Topic resource, of the form projects/{project}/topics/{{name}}
@@ -125,6 +126,14 @@ class SubscriptionArgs:
125
126
  If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers.
126
127
  RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message
127
128
  Structure is documented below.
129
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the subscription. Tag
130
+ keys and values have the same definition as resource manager tags. Keys
131
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
132
+ tagValues/456. The field is ignored when empty. The field is immutable and
133
+ causes resource replacement when mutated. This field is only set at create
134
+ time and modifying this field after creation will trigger recreation. To
135
+ apply tags to an existing resource, see the `tags.TagValue`
136
+ resource.
128
137
  """
129
138
  pulumi.set(__self__, "topic", topic)
130
139
  if ack_deadline_seconds is not None:
@@ -159,6 +168,8 @@ class SubscriptionArgs:
159
168
  pulumi.set(__self__, "retain_acked_messages", retain_acked_messages)
160
169
  if retry_policy is not None:
161
170
  pulumi.set(__self__, "retry_policy", retry_policy)
171
+ if tags is not None:
172
+ pulumi.set(__self__, "tags", tags)
162
173
 
163
174
  @_builtins.property
164
175
  @pulumi.getter
@@ -432,6 +443,25 @@ class SubscriptionArgs:
432
443
  def retry_policy(self, value: Optional[pulumi.Input['SubscriptionRetryPolicyArgs']]):
433
444
  pulumi.set(self, "retry_policy", value)
434
445
 
446
+ @_builtins.property
447
+ @pulumi.getter
448
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
449
+ """
450
+ Input only. Resource manager tags to be bound to the subscription. Tag
451
+ keys and values have the same definition as resource manager tags. Keys
452
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
453
+ tagValues/456. The field is ignored when empty. The field is immutable and
454
+ causes resource replacement when mutated. This field is only set at create
455
+ time and modifying this field after creation will trigger recreation. To
456
+ apply tags to an existing resource, see the `tags.TagValue`
457
+ resource.
458
+ """
459
+ return pulumi.get(self, "tags")
460
+
461
+ @tags.setter
462
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
463
+ pulumi.set(self, "tags", value)
464
+
435
465
 
436
466
  @pulumi.input_type
437
467
  class _SubscriptionState:
@@ -454,6 +484,7 @@ class _SubscriptionState:
454
484
  push_config: Optional[pulumi.Input['SubscriptionPushConfigArgs']] = None,
455
485
  retain_acked_messages: Optional[pulumi.Input[_builtins.bool]] = None,
456
486
  retry_policy: Optional[pulumi.Input['SubscriptionRetryPolicyArgs']] = None,
487
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
457
488
  topic: Optional[pulumi.Input[_builtins.str]] = None):
458
489
  """
459
490
  Input properties used for looking up and filtering Subscription resources.
@@ -542,6 +573,14 @@ class _SubscriptionState:
542
573
  If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers.
543
574
  RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message
544
575
  Structure is documented below.
576
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the subscription. Tag
577
+ keys and values have the same definition as resource manager tags. Keys
578
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
579
+ tagValues/456. The field is ignored when empty. The field is immutable and
580
+ causes resource replacement when mutated. This field is only set at create
581
+ time and modifying this field after creation will trigger recreation. To
582
+ apply tags to an existing resource, see the `tags.TagValue`
583
+ resource.
545
584
  :param pulumi.Input[_builtins.str] topic: A reference to a Topic resource, of the form projects/{project}/topics/{{name}}
546
585
  (as in the id property of a google_pubsub_topic), or just a topic name if
547
586
  the topic is in the same project as the subscription.
@@ -582,6 +621,8 @@ class _SubscriptionState:
582
621
  pulumi.set(__self__, "retain_acked_messages", retain_acked_messages)
583
622
  if retry_policy is not None:
584
623
  pulumi.set(__self__, "retry_policy", retry_policy)
624
+ if tags is not None:
625
+ pulumi.set(__self__, "tags", tags)
585
626
  if topic is not None:
586
627
  pulumi.set(__self__, "topic", topic)
587
628
 
@@ -868,6 +909,25 @@ class _SubscriptionState:
868
909
  def retry_policy(self, value: Optional[pulumi.Input['SubscriptionRetryPolicyArgs']]):
869
910
  pulumi.set(self, "retry_policy", value)
870
911
 
912
+ @_builtins.property
913
+ @pulumi.getter
914
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
915
+ """
916
+ Input only. Resource manager tags to be bound to the subscription. Tag
917
+ keys and values have the same definition as resource manager tags. Keys
918
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
919
+ tagValues/456. The field is ignored when empty. The field is immutable and
920
+ causes resource replacement when mutated. This field is only set at create
921
+ time and modifying this field after creation will trigger recreation. To
922
+ apply tags to an existing resource, see the `tags.TagValue`
923
+ resource.
924
+ """
925
+ return pulumi.get(self, "tags")
926
+
927
+ @tags.setter
928
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
929
+ pulumi.set(self, "tags", value)
930
+
871
931
  @_builtins.property
872
932
  @pulumi.getter
873
933
  def topic(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -905,6 +965,7 @@ class Subscription(pulumi.CustomResource):
905
965
  push_config: Optional[pulumi.Input[Union['SubscriptionPushConfigArgs', 'SubscriptionPushConfigArgsDict']]] = None,
906
966
  retain_acked_messages: Optional[pulumi.Input[_builtins.bool]] = None,
907
967
  retry_policy: Optional[pulumi.Input[Union['SubscriptionRetryPolicyArgs', 'SubscriptionRetryPolicyArgsDict']]] = None,
968
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
908
969
  topic: Optional[pulumi.Input[_builtins.str]] = None,
909
970
  __props__=None):
910
971
  """
@@ -1143,7 +1204,7 @@ class Subscription(pulumi.CustomResource):
1143
1204
  cloud_storage_config={
1144
1205
  "bucket": example.name,
1145
1206
  "filename_prefix": "pre-",
1146
- "filename_suffix": "-_15335",
1207
+ "filename_suffix": "-_26032",
1147
1208
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1148
1209
  "max_bytes": 1000,
1149
1210
  "max_duration": "300s",
@@ -1176,7 +1237,7 @@ class Subscription(pulumi.CustomResource):
1176
1237
  cloud_storage_config={
1177
1238
  "bucket": example.name,
1178
1239
  "filename_prefix": "pre-",
1179
- "filename_suffix": "-_20665",
1240
+ "filename_suffix": "-_8647",
1180
1241
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1181
1242
  "max_bytes": 1000,
1182
1243
  "max_duration": "300s",
@@ -1215,7 +1276,7 @@ class Subscription(pulumi.CustomResource):
1215
1276
  cloud_storage_config={
1216
1277
  "bucket": example.name,
1217
1278
  "filename_prefix": "pre-",
1218
- "filename_suffix": "-_85160",
1279
+ "filename_suffix": "-_50610",
1219
1280
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1220
1281
  "max_bytes": 1000,
1221
1282
  "max_duration": "300s",
@@ -1290,6 +1351,31 @@ class Subscription(pulumi.CustomResource):
1290
1351
  },
1291
1352
  ])
1292
1353
  ```
1354
+ ### Pubsub Subscription Tags
1355
+
1356
+ ```python
1357
+ import pulumi
1358
+ import pulumi_gcp as gcp
1359
+
1360
+ example = gcp.pubsub.Topic("example", name="example-topic")
1361
+ project = gcp.organizations.get_project()
1362
+ tag_key = gcp.tags.TagKey("tag_key",
1363
+ parent=project.id,
1364
+ short_name="tag_key")
1365
+ tag_value = gcp.tags.TagValue("tag_value",
1366
+ parent=tag_key.id,
1367
+ short_name="tag_value")
1368
+ example_subscription = gcp.pubsub.Subscription("example",
1369
+ name="example-subscription",
1370
+ topic=example.id,
1371
+ tags=pulumi.Output.all(
1372
+ namespaced_name=tag_key.namespaced_name,
1373
+ short_name=tag_value.short_name
1374
+ ).apply(lambda resolved_outputs: {
1375
+ resolved_outputs['namespaced_name']: resolved_outputs['short_name'],
1376
+ })
1377
+ )
1378
+ ```
1293
1379
 
1294
1380
  ## Import
1295
1381
 
@@ -1399,6 +1485,14 @@ class Subscription(pulumi.CustomResource):
1399
1485
  If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers.
1400
1486
  RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message
1401
1487
  Structure is documented below.
1488
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the subscription. Tag
1489
+ keys and values have the same definition as resource manager tags. Keys
1490
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
1491
+ tagValues/456. The field is ignored when empty. The field is immutable and
1492
+ causes resource replacement when mutated. This field is only set at create
1493
+ time and modifying this field after creation will trigger recreation. To
1494
+ apply tags to an existing resource, see the `tags.TagValue`
1495
+ resource.
1402
1496
  :param pulumi.Input[_builtins.str] topic: A reference to a Topic resource, of the form projects/{project}/topics/{{name}}
1403
1497
  (as in the id property of a google_pubsub_topic), or just a topic name if
1404
1498
  the topic is in the same project as the subscription.
@@ -1645,7 +1739,7 @@ class Subscription(pulumi.CustomResource):
1645
1739
  cloud_storage_config={
1646
1740
  "bucket": example.name,
1647
1741
  "filename_prefix": "pre-",
1648
- "filename_suffix": "-_15335",
1742
+ "filename_suffix": "-_26032",
1649
1743
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1650
1744
  "max_bytes": 1000,
1651
1745
  "max_duration": "300s",
@@ -1678,7 +1772,7 @@ class Subscription(pulumi.CustomResource):
1678
1772
  cloud_storage_config={
1679
1773
  "bucket": example.name,
1680
1774
  "filename_prefix": "pre-",
1681
- "filename_suffix": "-_20665",
1775
+ "filename_suffix": "-_8647",
1682
1776
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1683
1777
  "max_bytes": 1000,
1684
1778
  "max_duration": "300s",
@@ -1717,7 +1811,7 @@ class Subscription(pulumi.CustomResource):
1717
1811
  cloud_storage_config={
1718
1812
  "bucket": example.name,
1719
1813
  "filename_prefix": "pre-",
1720
- "filename_suffix": "-_85160",
1814
+ "filename_suffix": "-_50610",
1721
1815
  "filename_datetime_format": "YYYY-MM-DD/hh_mm_ssZ",
1722
1816
  "max_bytes": 1000,
1723
1817
  "max_duration": "300s",
@@ -1792,6 +1886,31 @@ class Subscription(pulumi.CustomResource):
1792
1886
  },
1793
1887
  ])
1794
1888
  ```
1889
+ ### Pubsub Subscription Tags
1890
+
1891
+ ```python
1892
+ import pulumi
1893
+ import pulumi_gcp as gcp
1894
+
1895
+ example = gcp.pubsub.Topic("example", name="example-topic")
1896
+ project = gcp.organizations.get_project()
1897
+ tag_key = gcp.tags.TagKey("tag_key",
1898
+ parent=project.id,
1899
+ short_name="tag_key")
1900
+ tag_value = gcp.tags.TagValue("tag_value",
1901
+ parent=tag_key.id,
1902
+ short_name="tag_value")
1903
+ example_subscription = gcp.pubsub.Subscription("example",
1904
+ name="example-subscription",
1905
+ topic=example.id,
1906
+ tags=pulumi.Output.all(
1907
+ namespaced_name=tag_key.namespaced_name,
1908
+ short_name=tag_value.short_name
1909
+ ).apply(lambda resolved_outputs: {
1910
+ resolved_outputs['namespaced_name']: resolved_outputs['short_name'],
1911
+ })
1912
+ )
1913
+ ```
1795
1914
 
1796
1915
  ## Import
1797
1916
 
@@ -1848,6 +1967,7 @@ class Subscription(pulumi.CustomResource):
1848
1967
  push_config: Optional[pulumi.Input[Union['SubscriptionPushConfigArgs', 'SubscriptionPushConfigArgsDict']]] = None,
1849
1968
  retain_acked_messages: Optional[pulumi.Input[_builtins.bool]] = None,
1850
1969
  retry_policy: Optional[pulumi.Input[Union['SubscriptionRetryPolicyArgs', 'SubscriptionRetryPolicyArgsDict']]] = None,
1970
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1851
1971
  topic: Optional[pulumi.Input[_builtins.str]] = None,
1852
1972
  __props__=None):
1853
1973
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1874,6 +1994,7 @@ class Subscription(pulumi.CustomResource):
1874
1994
  __props__.__dict__["push_config"] = push_config
1875
1995
  __props__.__dict__["retain_acked_messages"] = retain_acked_messages
1876
1996
  __props__.__dict__["retry_policy"] = retry_policy
1997
+ __props__.__dict__["tags"] = tags
1877
1998
  if topic is None and not opts.urn:
1878
1999
  raise TypeError("Missing required property 'topic'")
1879
2000
  __props__.__dict__["topic"] = topic
@@ -1909,6 +2030,7 @@ class Subscription(pulumi.CustomResource):
1909
2030
  push_config: Optional[pulumi.Input[Union['SubscriptionPushConfigArgs', 'SubscriptionPushConfigArgsDict']]] = None,
1910
2031
  retain_acked_messages: Optional[pulumi.Input[_builtins.bool]] = None,
1911
2032
  retry_policy: Optional[pulumi.Input[Union['SubscriptionRetryPolicyArgs', 'SubscriptionRetryPolicyArgsDict']]] = None,
2033
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1912
2034
  topic: Optional[pulumi.Input[_builtins.str]] = None) -> 'Subscription':
1913
2035
  """
1914
2036
  Get an existing Subscription resource's state with the given name, id, and optional extra
@@ -2002,6 +2124,14 @@ class Subscription(pulumi.CustomResource):
2002
2124
  If not set, the default retry policy is applied. This generally implies that messages will be retried as soon as possible for healthy subscribers.
2003
2125
  RetryPolicy will be triggered on NACKs or acknowledgement deadline exceeded events for a given message
2004
2126
  Structure is documented below.
2127
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the subscription. Tag
2128
+ keys and values have the same definition as resource manager tags. Keys
2129
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
2130
+ tagValues/456. The field is ignored when empty. The field is immutable and
2131
+ causes resource replacement when mutated. This field is only set at create
2132
+ time and modifying this field after creation will trigger recreation. To
2133
+ apply tags to an existing resource, see the `tags.TagValue`
2134
+ resource.
2005
2135
  :param pulumi.Input[_builtins.str] topic: A reference to a Topic resource, of the form projects/{project}/topics/{{name}}
2006
2136
  (as in the id property of a google_pubsub_topic), or just a topic name if
2007
2137
  the topic is in the same project as the subscription.
@@ -2028,6 +2158,7 @@ class Subscription(pulumi.CustomResource):
2028
2158
  __props__.__dict__["push_config"] = push_config
2029
2159
  __props__.__dict__["retain_acked_messages"] = retain_acked_messages
2030
2160
  __props__.__dict__["retry_policy"] = retry_policy
2161
+ __props__.__dict__["tags"] = tags
2031
2162
  __props__.__dict__["topic"] = topic
2032
2163
  return Subscription(resource_name, opts=opts, __props__=__props__)
2033
2164
 
@@ -2242,6 +2373,21 @@ class Subscription(pulumi.CustomResource):
2242
2373
  """
2243
2374
  return pulumi.get(self, "retry_policy")
2244
2375
 
2376
+ @_builtins.property
2377
+ @pulumi.getter
2378
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
2379
+ """
2380
+ Input only. Resource manager tags to be bound to the subscription. Tag
2381
+ keys and values have the same definition as resource manager tags. Keys
2382
+ must be in the format tagKeys/{tag_key_id}, and values are in the format
2383
+ tagValues/456. The field is ignored when empty. The field is immutable and
2384
+ causes resource replacement when mutated. This field is only set at create
2385
+ time and modifying this field after creation will trigger recreation. To
2386
+ apply tags to an existing resource, see the `tags.TagValue`
2387
+ resource.
2388
+ """
2389
+ return pulumi.get(self, "tags")
2390
+
2245
2391
  @_builtins.property
2246
2392
  @pulumi.getter
2247
2393
  def topic(self) -> pulumi.Output[_builtins.str]:
@@ -29,7 +29,8 @@ class TopicArgs:
29
29
  message_transforms: Optional[pulumi.Input[Sequence[pulumi.Input['TopicMessageTransformArgs']]]] = None,
30
30
  name: Optional[pulumi.Input[_builtins.str]] = None,
31
31
  project: Optional[pulumi.Input[_builtins.str]] = None,
32
- schema_settings: Optional[pulumi.Input['TopicSchemaSettingsArgs']] = None):
32
+ schema_settings: Optional[pulumi.Input['TopicSchemaSettingsArgs']] = None,
33
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
33
34
  """
34
35
  The set of arguments for constructing a Topic resource.
35
36
  :param pulumi.Input['TopicIngestionDataSourceSettingsArgs'] ingestion_data_source_settings: Settings for ingestion from a data source into this topic.
@@ -63,6 +64,14 @@ class TopicArgs:
63
64
  If it is not provided, the provider project is used.
64
65
  :param pulumi.Input['TopicSchemaSettingsArgs'] schema_settings: Settings for validating messages published against a schema.
65
66
  Structure is documented below.
67
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the topic. Tag keys and
68
+ values have the same definition as resource manager tags. Keys must be in
69
+ the format tagKeys/{tag_key_id}, and values are in the format
70
+ tagValues/456. The field is ignored when empty. The field is immutable and
71
+ causes resource replacement when mutated. This field is only set at create
72
+ time and modifying this field after creation will trigger recreation. To
73
+ apply tags to an existing resource, see the `tags.TagValue`
74
+ resource.
66
75
  """
67
76
  if ingestion_data_source_settings is not None:
68
77
  pulumi.set(__self__, "ingestion_data_source_settings", ingestion_data_source_settings)
@@ -82,6 +91,8 @@ class TopicArgs:
82
91
  pulumi.set(__self__, "project", project)
83
92
  if schema_settings is not None:
84
93
  pulumi.set(__self__, "schema_settings", schema_settings)
94
+ if tags is not None:
95
+ pulumi.set(__self__, "tags", tags)
85
96
 
86
97
  @_builtins.property
87
98
  @pulumi.getter(name="ingestionDataSourceSettings")
@@ -213,6 +224,25 @@ class TopicArgs:
213
224
  def schema_settings(self, value: Optional[pulumi.Input['TopicSchemaSettingsArgs']]):
214
225
  pulumi.set(self, "schema_settings", value)
215
226
 
227
+ @_builtins.property
228
+ @pulumi.getter
229
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
230
+ """
231
+ Input only. Resource manager tags to be bound to the topic. Tag keys and
232
+ values have the same definition as resource manager tags. Keys must be in
233
+ the format tagKeys/{tag_key_id}, and values are in the format
234
+ tagValues/456. The field is ignored when empty. The field is immutable and
235
+ causes resource replacement when mutated. This field is only set at create
236
+ time and modifying this field after creation will trigger recreation. To
237
+ apply tags to an existing resource, see the `tags.TagValue`
238
+ resource.
239
+ """
240
+ return pulumi.get(self, "tags")
241
+
242
+ @tags.setter
243
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
244
+ pulumi.set(self, "tags", value)
245
+
216
246
 
217
247
  @pulumi.input_type
218
248
  class _TopicState:
@@ -227,7 +257,8 @@ class _TopicState:
227
257
  name: Optional[pulumi.Input[_builtins.str]] = None,
228
258
  project: Optional[pulumi.Input[_builtins.str]] = None,
229
259
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
230
- schema_settings: Optional[pulumi.Input['TopicSchemaSettingsArgs']] = None):
260
+ schema_settings: Optional[pulumi.Input['TopicSchemaSettingsArgs']] = None,
261
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
231
262
  """
232
263
  Input properties used for looking up and filtering Topic resources.
233
264
  :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.
@@ -264,6 +295,14 @@ class _TopicState:
264
295
  and default labels configured on the provider.
265
296
  :param pulumi.Input['TopicSchemaSettingsArgs'] schema_settings: Settings for validating messages published against a schema.
266
297
  Structure is documented below.
298
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the topic. Tag keys and
299
+ values have the same definition as resource manager tags. Keys must be in
300
+ the format tagKeys/{tag_key_id}, and values are in the format
301
+ tagValues/456. The field is ignored when empty. The field is immutable and
302
+ causes resource replacement when mutated. This field is only set at create
303
+ time and modifying this field after creation will trigger recreation. To
304
+ apply tags to an existing resource, see the `tags.TagValue`
305
+ resource.
267
306
  """
268
307
  if effective_labels is not None:
269
308
  pulumi.set(__self__, "effective_labels", effective_labels)
@@ -287,6 +326,8 @@ class _TopicState:
287
326
  pulumi.set(__self__, "pulumi_labels", pulumi_labels)
288
327
  if schema_settings is not None:
289
328
  pulumi.set(__self__, "schema_settings", schema_settings)
329
+ if tags is not None:
330
+ pulumi.set(__self__, "tags", tags)
290
331
 
291
332
  @_builtins.property
292
333
  @pulumi.getter(name="effectiveLabels")
@@ -443,6 +484,25 @@ class _TopicState:
443
484
  def schema_settings(self, value: Optional[pulumi.Input['TopicSchemaSettingsArgs']]):
444
485
  pulumi.set(self, "schema_settings", value)
445
486
 
487
+ @_builtins.property
488
+ @pulumi.getter
489
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
490
+ """
491
+ Input only. Resource manager tags to be bound to the topic. Tag keys and
492
+ values have the same definition as resource manager tags. Keys must be in
493
+ the format tagKeys/{tag_key_id}, and values are in the format
494
+ tagValues/456. The field is ignored when empty. The field is immutable and
495
+ causes resource replacement when mutated. This field is only set at create
496
+ time and modifying this field after creation will trigger recreation. To
497
+ apply tags to an existing resource, see the `tags.TagValue`
498
+ resource.
499
+ """
500
+ return pulumi.get(self, "tags")
501
+
502
+ @tags.setter
503
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
504
+ pulumi.set(self, "tags", value)
505
+
446
506
 
447
507
  @pulumi.type_token("gcp:pubsub/topic:Topic")
448
508
  class Topic(pulumi.CustomResource):
@@ -459,6 +519,7 @@ class Topic(pulumi.CustomResource):
459
519
  name: Optional[pulumi.Input[_builtins.str]] = None,
460
520
  project: Optional[pulumi.Input[_builtins.str]] = None,
461
521
  schema_settings: Optional[pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']]] = None,
522
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
462
523
  __props__=None):
463
524
  """
464
525
  A named resource to which messages are sent by publishers.
@@ -700,6 +761,29 @@ class Topic(pulumi.CustomResource):
700
761
  },
701
762
  ])
702
763
  ```
764
+ ### Pubsub Topic Tags
765
+
766
+ ```python
767
+ import pulumi
768
+ import pulumi_gcp as gcp
769
+
770
+ project = gcp.organizations.get_project()
771
+ tag_key = gcp.tags.TagKey("tag_key",
772
+ parent=project.id,
773
+ short_name="tag_key")
774
+ tag_value = gcp.tags.TagValue("tag_value",
775
+ parent=tag_key.id,
776
+ short_name="tag_value")
777
+ example = gcp.pubsub.Topic("example",
778
+ name="example-topic",
779
+ tags=pulumi.Output.all(
780
+ namespaced_name=tag_key.namespaced_name,
781
+ short_name=tag_value.short_name
782
+ ).apply(lambda resolved_outputs: {
783
+ resolved_outputs['namespaced_name']: resolved_outputs['short_name'],
784
+ })
785
+ )
786
+ ```
703
787
 
704
788
  ## Import
705
789
 
@@ -758,6 +842,14 @@ class Topic(pulumi.CustomResource):
758
842
  If it is not provided, the provider project is used.
759
843
  :param pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']] schema_settings: Settings for validating messages published against a schema.
760
844
  Structure is documented below.
845
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the topic. Tag keys and
846
+ values have the same definition as resource manager tags. Keys must be in
847
+ the format tagKeys/{tag_key_id}, and values are in the format
848
+ tagValues/456. The field is ignored when empty. The field is immutable and
849
+ causes resource replacement when mutated. This field is only set at create
850
+ time and modifying this field after creation will trigger recreation. To
851
+ apply tags to an existing resource, see the `tags.TagValue`
852
+ resource.
761
853
  """
762
854
  ...
763
855
  @overload
@@ -1005,6 +1097,29 @@ class Topic(pulumi.CustomResource):
1005
1097
  },
1006
1098
  ])
1007
1099
  ```
1100
+ ### Pubsub Topic Tags
1101
+
1102
+ ```python
1103
+ import pulumi
1104
+ import pulumi_gcp as gcp
1105
+
1106
+ project = gcp.organizations.get_project()
1107
+ tag_key = gcp.tags.TagKey("tag_key",
1108
+ parent=project.id,
1109
+ short_name="tag_key")
1110
+ tag_value = gcp.tags.TagValue("tag_value",
1111
+ parent=tag_key.id,
1112
+ short_name="tag_value")
1113
+ example = gcp.pubsub.Topic("example",
1114
+ name="example-topic",
1115
+ tags=pulumi.Output.all(
1116
+ namespaced_name=tag_key.namespaced_name,
1117
+ short_name=tag_value.short_name
1118
+ ).apply(lambda resolved_outputs: {
1119
+ resolved_outputs['namespaced_name']: resolved_outputs['short_name'],
1120
+ })
1121
+ )
1122
+ ```
1008
1123
 
1009
1124
  ## Import
1010
1125
 
@@ -1054,6 +1169,7 @@ class Topic(pulumi.CustomResource):
1054
1169
  name: Optional[pulumi.Input[_builtins.str]] = None,
1055
1170
  project: Optional[pulumi.Input[_builtins.str]] = None,
1056
1171
  schema_settings: Optional[pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']]] = None,
1172
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1057
1173
  __props__=None):
1058
1174
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1059
1175
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1072,6 +1188,7 @@ class Topic(pulumi.CustomResource):
1072
1188
  __props__.__dict__["name"] = name
1073
1189
  __props__.__dict__["project"] = project
1074
1190
  __props__.__dict__["schema_settings"] = schema_settings
1191
+ __props__.__dict__["tags"] = tags
1075
1192
  __props__.__dict__["effective_labels"] = None
1076
1193
  __props__.__dict__["pulumi_labels"] = None
1077
1194
  secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["effectiveLabels", "pulumiLabels"])
@@ -1096,7 +1213,8 @@ class Topic(pulumi.CustomResource):
1096
1213
  name: Optional[pulumi.Input[_builtins.str]] = None,
1097
1214
  project: Optional[pulumi.Input[_builtins.str]] = None,
1098
1215
  pulumi_labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1099
- schema_settings: Optional[pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']]] = None) -> 'Topic':
1216
+ schema_settings: Optional[pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']]] = None,
1217
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None) -> 'Topic':
1100
1218
  """
1101
1219
  Get an existing Topic resource's state with the given name, id, and optional extra
1102
1220
  properties used to qualify the lookup.
@@ -1138,6 +1256,14 @@ class Topic(pulumi.CustomResource):
1138
1256
  and default labels configured on the provider.
1139
1257
  :param pulumi.Input[Union['TopicSchemaSettingsArgs', 'TopicSchemaSettingsArgsDict']] schema_settings: Settings for validating messages published against a schema.
1140
1258
  Structure is documented below.
1259
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] tags: Input only. Resource manager tags to be bound to the topic. Tag keys and
1260
+ values have the same definition as resource manager tags. Keys must be in
1261
+ the format tagKeys/{tag_key_id}, and values are in the format
1262
+ tagValues/456. The field is ignored when empty. The field is immutable and
1263
+ causes resource replacement when mutated. This field is only set at create
1264
+ time and modifying this field after creation will trigger recreation. To
1265
+ apply tags to an existing resource, see the `tags.TagValue`
1266
+ resource.
1141
1267
  """
1142
1268
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1143
1269
 
@@ -1154,6 +1280,7 @@ class Topic(pulumi.CustomResource):
1154
1280
  __props__.__dict__["project"] = project
1155
1281
  __props__.__dict__["pulumi_labels"] = pulumi_labels
1156
1282
  __props__.__dict__["schema_settings"] = schema_settings
1283
+ __props__.__dict__["tags"] = tags
1157
1284
  return Topic(resource_name, opts=opts, __props__=__props__)
1158
1285
 
1159
1286
  @_builtins.property
@@ -1267,3 +1394,18 @@ class Topic(pulumi.CustomResource):
1267
1394
  """
1268
1395
  return pulumi.get(self, "schema_settings")
1269
1396
 
1397
+ @_builtins.property
1398
+ @pulumi.getter
1399
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1400
+ """
1401
+ Input only. Resource manager tags to be bound to the topic. Tag keys and
1402
+ values have the same definition as resource manager tags. Keys must be in
1403
+ the format tagKeys/{tag_key_id}, and values are in the format
1404
+ tagValues/456. The field is ignored when empty. The field is immutable and
1405
+ causes resource replacement when mutated. This field is only set at create
1406
+ time and modifying this field after creation will trigger recreation. To
1407
+ apply tags to an existing resource, see the `tags.TagValue`
1408
+ resource.
1409
+ """
1410
+ return pulumi.get(self, "tags")
1411
+
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "gcp",
4
- "version": "9.3.0-alpha.1759561069"
4
+ "version": "9.4.0-alpha.1759906655"
5
5
  }
@@ -7,6 +7,7 @@ from .. import _utilities
7
7
  import typing
8
8
  # Export this package's modules as members:
9
9
  from .release import *
10
+ from .rollout_kind import *
10
11
  from .saa_s import *
11
12
  from .unit_kind import *
12
13
  from ._inputs import *