pulumi-gcp 8.40.0a1754721948__py3-none-any.whl → 8.41.0a1754981061__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 (157) hide show
  1. pulumi_gcp/__init__.py +128 -0
  2. pulumi_gcp/accesscontextmanager/_inputs.py +24 -4
  3. pulumi_gcp/accesscontextmanager/outputs.py +15 -3
  4. pulumi_gcp/apigee/__init__.py +2 -0
  5. pulumi_gcp/apigee/_inputs.py +1435 -0
  6. pulumi_gcp/apigee/api_product.py +1698 -0
  7. pulumi_gcp/apigee/outputs.py +1081 -0
  8. pulumi_gcp/apigee/security_action.py +1010 -0
  9. pulumi_gcp/artifactregistry/__init__.py +1 -0
  10. pulumi_gcp/artifactregistry/get_docker_images.py +164 -0
  11. pulumi_gcp/artifactregistry/outputs.py +109 -2
  12. pulumi_gcp/artifactregistry/repository.py +6 -6
  13. pulumi_gcp/backupdisasterrecovery/backup_vault.py +56 -0
  14. pulumi_gcp/backupdisasterrecovery/get_backup_vault.py +12 -1
  15. pulumi_gcp/bigquery/_inputs.py +6 -0
  16. pulumi_gcp/bigquery/get_table.py +23 -1
  17. pulumi_gcp/bigquery/outputs.py +4 -0
  18. pulumi_gcp/bigquery/table.py +62 -0
  19. pulumi_gcp/bigqueryanalyticshub/_inputs.py +180 -0
  20. pulumi_gcp/bigqueryanalyticshub/data_exchange.py +80 -0
  21. pulumi_gcp/bigqueryanalyticshub/listing.py +322 -2
  22. pulumi_gcp/bigqueryanalyticshub/listing_subscription.py +32 -0
  23. pulumi_gcp/bigqueryanalyticshub/outputs.py +159 -0
  24. pulumi_gcp/bigtable/__init__.py +1 -0
  25. pulumi_gcp/bigtable/_inputs.py +33 -0
  26. pulumi_gcp/bigtable/outputs.py +36 -0
  27. pulumi_gcp/bigtable/schema_bundle.py +568 -0
  28. pulumi_gcp/cloudfunctions/_inputs.py +48 -0
  29. pulumi_gcp/cloudfunctions/function.py +94 -0
  30. pulumi_gcp/cloudfunctions/get_function.py +23 -1
  31. pulumi_gcp/cloudfunctions/outputs.py +70 -0
  32. pulumi_gcp/cloudrunv2/_inputs.py +20 -0
  33. pulumi_gcp/cloudrunv2/job.py +2 -0
  34. pulumi_gcp/cloudrunv2/outputs.py +25 -0
  35. pulumi_gcp/cloudrunv2/worker_pool.py +2 -0
  36. pulumi_gcp/compute/__init__.py +1 -0
  37. pulumi_gcp/compute/_inputs.py +713 -22
  38. pulumi_gcp/compute/firewall_policy_with_rules.py +66 -0
  39. pulumi_gcp/compute/forwarding_rule.py +0 -21
  40. pulumi_gcp/compute/get_router.py +12 -1
  41. pulumi_gcp/compute/outputs.py +562 -22
  42. pulumi_gcp/compute/preview_feature.py +396 -0
  43. pulumi_gcp/compute/region_url_map.py +392 -0
  44. pulumi_gcp/compute/reservation.py +4 -4
  45. pulumi_gcp/compute/router.py +54 -0
  46. pulumi_gcp/compute/storage_pool.py +154 -0
  47. pulumi_gcp/compute/subnetwork.py +54 -0
  48. pulumi_gcp/config/__init__.pyi +2 -0
  49. pulumi_gcp/config/vars.py +4 -0
  50. pulumi_gcp/container/_inputs.py +278 -8
  51. pulumi_gcp/container/cluster.py +61 -21
  52. pulumi_gcp/container/get_cluster.py +12 -1
  53. pulumi_gcp/container/outputs.py +352 -8
  54. pulumi_gcp/dataproc/_inputs.py +249 -14
  55. pulumi_gcp/dataproc/batch.py +6 -0
  56. pulumi_gcp/dataproc/cluster.py +2 -0
  57. pulumi_gcp/dataproc/outputs.py +215 -12
  58. pulumi_gcp/dataproc/session_template.py +14 -2
  59. pulumi_gcp/developerconnect/__init__.py +1 -0
  60. pulumi_gcp/developerconnect/_inputs.py +583 -0
  61. pulumi_gcp/developerconnect/insights_config.py +895 -0
  62. pulumi_gcp/developerconnect/outputs.py +442 -0
  63. pulumi_gcp/diagflow/__init__.py +1 -0
  64. pulumi_gcp/diagflow/_inputs.py +1165 -58
  65. pulumi_gcp/diagflow/cx_generator.py +636 -0
  66. pulumi_gcp/diagflow/cx_tool.py +2 -2
  67. pulumi_gcp/diagflow/cx_webhook.py +380 -36
  68. pulumi_gcp/diagflow/outputs.py +848 -25
  69. pulumi_gcp/discoveryengine/__init__.py +2 -0
  70. pulumi_gcp/discoveryengine/_inputs.py +465 -0
  71. pulumi_gcp/discoveryengine/cmek_config.py +707 -0
  72. pulumi_gcp/discoveryengine/outputs.py +412 -0
  73. pulumi_gcp/discoveryengine/recommendation_engine.py +813 -0
  74. pulumi_gcp/firestore/field.py +6 -6
  75. pulumi_gcp/gemini/gemini_gcp_enablement_setting.py +107 -9
  76. pulumi_gcp/gemini/gemini_gcp_enablement_setting_binding.py +2 -2
  77. pulumi_gcp/gkehub/membership_binding.py +6 -6
  78. pulumi_gcp/gkehub/membership_rbac_role_binding.py +4 -4
  79. pulumi_gcp/gkehub/namespace.py +4 -4
  80. pulumi_gcp/gkehub/scope_rbac_role_binding.py +8 -8
  81. pulumi_gcp/iam/__init__.py +4 -0
  82. pulumi_gcp/iam/_inputs.py +98 -0
  83. pulumi_gcp/iam/get_workforce_pool_iam_policy.py +161 -0
  84. pulumi_gcp/iam/outputs.py +56 -0
  85. pulumi_gcp/iam/workforce_pool_iam_binding.py +761 -0
  86. pulumi_gcp/iam/workforce_pool_iam_member.py +761 -0
  87. pulumi_gcp/iam/workforce_pool_iam_policy.py +600 -0
  88. pulumi_gcp/iap/tunnel_dest_group.py +2 -2
  89. pulumi_gcp/integrationconnectors/managed_zone.py +8 -8
  90. pulumi_gcp/looker/instance.py +28 -7
  91. pulumi_gcp/managedkafka/_inputs.py +127 -0
  92. pulumi_gcp/managedkafka/cluster.py +131 -1
  93. pulumi_gcp/managedkafka/connect_cluster.py +4 -4
  94. pulumi_gcp/managedkafka/connector.py +4 -4
  95. pulumi_gcp/managedkafka/outputs.py +128 -0
  96. pulumi_gcp/memorystore/instance.py +8 -12
  97. pulumi_gcp/modelarmor/__init__.py +1 -0
  98. pulumi_gcp/modelarmor/_inputs.py +683 -0
  99. pulumi_gcp/modelarmor/floorsetting.py +736 -0
  100. pulumi_gcp/modelarmor/outputs.py +618 -0
  101. pulumi_gcp/networkconnectivity/_inputs.py +60 -0
  102. pulumi_gcp/networkconnectivity/internal_range.py +136 -0
  103. pulumi_gcp/networkconnectivity/outputs.py +55 -0
  104. pulumi_gcp/networkconnectivity/spoke.py +14 -14
  105. pulumi_gcp/oracledatabase/__init__.py +2 -0
  106. pulumi_gcp/oracledatabase/autonomous_database.py +262 -38
  107. pulumi_gcp/oracledatabase/cloud_vm_cluster.py +314 -50
  108. pulumi_gcp/oracledatabase/get_autonomous_database.py +23 -1
  109. pulumi_gcp/oracledatabase/get_cloud_vm_cluster.py +34 -1
  110. pulumi_gcp/oracledatabase/odb_network.py +721 -0
  111. pulumi_gcp/oracledatabase/odb_subnet.py +803 -0
  112. pulumi_gcp/oracledatabase/outputs.py +83 -0
  113. pulumi_gcp/orgpolicy/policy.py +2 -2
  114. pulumi_gcp/parametermanager/parameter_version.py +62 -0
  115. pulumi_gcp/parametermanager/regional_parameter_version.py +64 -0
  116. pulumi_gcp/provider.py +20 -0
  117. pulumi_gcp/pubsub/subscription.py +46 -6
  118. pulumi_gcp/pubsub/topic.py +36 -0
  119. pulumi_gcp/pulumi-plugin.json +1 -1
  120. pulumi_gcp/redis/cluster.py +70 -0
  121. pulumi_gcp/redis/get_cluster.py +12 -1
  122. pulumi_gcp/redis/instance.py +8 -12
  123. pulumi_gcp/secretmanager/get_regional_secret.py +12 -1
  124. pulumi_gcp/secretmanager/get_secret.py +12 -1
  125. pulumi_gcp/secretmanager/outputs.py +30 -0
  126. pulumi_gcp/secretmanager/regional_secret.py +61 -0
  127. pulumi_gcp/secretmanager/secret.py +61 -0
  128. pulumi_gcp/securesourcemanager/branch_rule.py +16 -8
  129. pulumi_gcp/securesourcemanager/instance.py +112 -4
  130. pulumi_gcp/securesourcemanager/repository.py +112 -8
  131. pulumi_gcp/serviceaccount/get_account_key.py +1 -0
  132. pulumi_gcp/sql/_inputs.py +6 -6
  133. pulumi_gcp/sql/database.py +0 -12
  134. pulumi_gcp/sql/outputs.py +4 -4
  135. pulumi_gcp/storage/__init__.py +2 -0
  136. pulumi_gcp/storage/_inputs.py +451 -0
  137. pulumi_gcp/storage/bucket.py +7 -7
  138. pulumi_gcp/storage/bucket_object.py +34 -0
  139. pulumi_gcp/storage/get_bucket_object.py +12 -1
  140. pulumi_gcp/storage/get_bucket_object_content.py +12 -1
  141. pulumi_gcp/storage/get_insights_dataset_config.py +363 -0
  142. pulumi_gcp/storage/insights_dataset_config.py +1280 -0
  143. pulumi_gcp/storage/outputs.py +619 -0
  144. pulumi_gcp/vertex/__init__.py +1 -0
  145. pulumi_gcp/vertex/_inputs.py +3646 -3
  146. pulumi_gcp/vertex/ai_endpoint.py +4 -4
  147. pulumi_gcp/vertex/ai_endpoint_with_model_garden_deployment.py +940 -0
  148. pulumi_gcp/vertex/ai_feature_online_store_featureview.py +4 -4
  149. pulumi_gcp/vertex/outputs.py +2609 -2
  150. pulumi_gcp/vmwareengine/network_peering.py +7 -7
  151. pulumi_gcp/workbench/_inputs.py +118 -0
  152. pulumi_gcp/workbench/instance.py +171 -2
  153. pulumi_gcp/workbench/outputs.py +91 -0
  154. {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.41.0a1754981061.dist-info}/METADATA +1 -1
  155. {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.41.0a1754981061.dist-info}/RECORD +157 -138
  156. {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.41.0a1754981061.dist-info}/WHEEL +0 -0
  157. {pulumi_gcp-8.40.0a1754721948.dist-info → pulumi_gcp-8.41.0a1754981061.dist-info}/top_level.txt +0 -0
@@ -25,10 +25,13 @@ class ListingArgs:
25
25
  display_name: pulumi.Input[_builtins.str],
26
26
  listing_id: pulumi.Input[_builtins.str],
27
27
  location: pulumi.Input[_builtins.str],
28
+ allow_only_metadata_sharing: Optional[pulumi.Input[_builtins.bool]] = None,
28
29
  bigquery_dataset: Optional[pulumi.Input['ListingBigqueryDatasetArgs']] = None,
29
30
  categories: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
30
31
  data_provider: Optional[pulumi.Input['ListingDataProviderArgs']] = None,
32
+ delete_commercial: Optional[pulumi.Input[_builtins.bool]] = None,
31
33
  description: Optional[pulumi.Input[_builtins.str]] = None,
34
+ discovery_type: Optional[pulumi.Input[_builtins.str]] = None,
32
35
  documentation: Optional[pulumi.Input[_builtins.str]] = None,
33
36
  icon: Optional[pulumi.Input[_builtins.str]] = None,
34
37
  log_linked_dataset_query_user_email: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -44,12 +47,16 @@ class ListingArgs:
44
47
  :param pulumi.Input[_builtins.str] display_name: Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces.
45
48
  :param pulumi.Input[_builtins.str] listing_id: The ID of the listing. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces.
46
49
  :param pulumi.Input[_builtins.str] location: The name of the location this data exchange listing.
50
+ :param pulumi.Input[_builtins.bool] allow_only_metadata_sharing: If true, the listing is only available to get the resource metadata. Listing is non subscribable.
47
51
  :param pulumi.Input['ListingBigqueryDatasetArgs'] bigquery_dataset: Shared dataset i.e. BigQuery dataset source.
48
52
  Structure is documented below.
49
53
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] categories: Categories of the listing. Up to two categories are allowed.
50
54
  :param pulumi.Input['ListingDataProviderArgs'] data_provider: Details of the data provider who owns the source data.
51
55
  Structure is documented below.
56
+ :param pulumi.Input[_builtins.bool] delete_commercial: If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
52
57
  :param pulumi.Input[_builtins.str] description: Short description of the listing. The description must not contain Unicode non-characters and C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF).
58
+ :param pulumi.Input[_builtins.str] discovery_type: Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
59
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
53
60
  :param pulumi.Input[_builtins.str] documentation: Documentation describing the listing.
54
61
  :param pulumi.Input[_builtins.str] icon: Base64 encoded image representing the listing.
55
62
  :param pulumi.Input[_builtins.bool] log_linked_dataset_query_user_email: If true, subscriber email logging is enabled and all queries on the linked dataset will log the email address of the querying user. Once enabled, this setting cannot be turned off.
@@ -68,14 +75,20 @@ class ListingArgs:
68
75
  pulumi.set(__self__, "display_name", display_name)
69
76
  pulumi.set(__self__, "listing_id", listing_id)
70
77
  pulumi.set(__self__, "location", location)
78
+ if allow_only_metadata_sharing is not None:
79
+ pulumi.set(__self__, "allow_only_metadata_sharing", allow_only_metadata_sharing)
71
80
  if bigquery_dataset is not None:
72
81
  pulumi.set(__self__, "bigquery_dataset", bigquery_dataset)
73
82
  if categories is not None:
74
83
  pulumi.set(__self__, "categories", categories)
75
84
  if data_provider is not None:
76
85
  pulumi.set(__self__, "data_provider", data_provider)
86
+ if delete_commercial is not None:
87
+ pulumi.set(__self__, "delete_commercial", delete_commercial)
77
88
  if description is not None:
78
89
  pulumi.set(__self__, "description", description)
90
+ if discovery_type is not None:
91
+ pulumi.set(__self__, "discovery_type", discovery_type)
79
92
  if documentation is not None:
80
93
  pulumi.set(__self__, "documentation", documentation)
81
94
  if icon is not None:
@@ -143,6 +156,18 @@ class ListingArgs:
143
156
  def location(self, value: pulumi.Input[_builtins.str]):
144
157
  pulumi.set(self, "location", value)
145
158
 
159
+ @_builtins.property
160
+ @pulumi.getter(name="allowOnlyMetadataSharing")
161
+ def allow_only_metadata_sharing(self) -> Optional[pulumi.Input[_builtins.bool]]:
162
+ """
163
+ If true, the listing is only available to get the resource metadata. Listing is non subscribable.
164
+ """
165
+ return pulumi.get(self, "allow_only_metadata_sharing")
166
+
167
+ @allow_only_metadata_sharing.setter
168
+ def allow_only_metadata_sharing(self, value: Optional[pulumi.Input[_builtins.bool]]):
169
+ pulumi.set(self, "allow_only_metadata_sharing", value)
170
+
146
171
  @_builtins.property
147
172
  @pulumi.getter(name="bigqueryDataset")
148
173
  def bigquery_dataset(self) -> Optional[pulumi.Input['ListingBigqueryDatasetArgs']]:
@@ -181,6 +206,18 @@ class ListingArgs:
181
206
  def data_provider(self, value: Optional[pulumi.Input['ListingDataProviderArgs']]):
182
207
  pulumi.set(self, "data_provider", value)
183
208
 
209
+ @_builtins.property
210
+ @pulumi.getter(name="deleteCommercial")
211
+ def delete_commercial(self) -> Optional[pulumi.Input[_builtins.bool]]:
212
+ """
213
+ If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
214
+ """
215
+ return pulumi.get(self, "delete_commercial")
216
+
217
+ @delete_commercial.setter
218
+ def delete_commercial(self, value: Optional[pulumi.Input[_builtins.bool]]):
219
+ pulumi.set(self, "delete_commercial", value)
220
+
184
221
  @_builtins.property
185
222
  @pulumi.getter
186
223
  def description(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -193,6 +230,19 @@ class ListingArgs:
193
230
  def description(self, value: Optional[pulumi.Input[_builtins.str]]):
194
231
  pulumi.set(self, "description", value)
195
232
 
233
+ @_builtins.property
234
+ @pulumi.getter(name="discoveryType")
235
+ def discovery_type(self) -> Optional[pulumi.Input[_builtins.str]]:
236
+ """
237
+ Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
238
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
239
+ """
240
+ return pulumi.get(self, "discovery_type")
241
+
242
+ @discovery_type.setter
243
+ def discovery_type(self, value: Optional[pulumi.Input[_builtins.str]]):
244
+ pulumi.set(self, "discovery_type", value)
245
+
196
246
  @_builtins.property
197
247
  @pulumi.getter
198
248
  def documentation(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -309,11 +359,15 @@ class ListingArgs:
309
359
  @pulumi.input_type
310
360
  class _ListingState:
311
361
  def __init__(__self__, *,
362
+ allow_only_metadata_sharing: Optional[pulumi.Input[_builtins.bool]] = None,
312
363
  bigquery_dataset: Optional[pulumi.Input['ListingBigqueryDatasetArgs']] = None,
313
364
  categories: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
365
+ commercial_infos: Optional[pulumi.Input[Sequence[pulumi.Input['ListingCommercialInfoArgs']]]] = None,
314
366
  data_exchange_id: Optional[pulumi.Input[_builtins.str]] = None,
315
367
  data_provider: Optional[pulumi.Input['ListingDataProviderArgs']] = None,
368
+ delete_commercial: Optional[pulumi.Input[_builtins.bool]] = None,
316
369
  description: Optional[pulumi.Input[_builtins.str]] = None,
370
+ discovery_type: Optional[pulumi.Input[_builtins.str]] = None,
317
371
  display_name: Optional[pulumi.Input[_builtins.str]] = None,
318
372
  documentation: Optional[pulumi.Input[_builtins.str]] = None,
319
373
  icon: Optional[pulumi.Input[_builtins.str]] = None,
@@ -326,16 +380,23 @@ class _ListingState:
326
380
  publisher: Optional[pulumi.Input['ListingPublisherArgs']] = None,
327
381
  pubsub_topic: Optional[pulumi.Input['ListingPubsubTopicArgs']] = None,
328
382
  request_access: Optional[pulumi.Input[_builtins.str]] = None,
329
- restricted_export_config: Optional[pulumi.Input['ListingRestrictedExportConfigArgs']] = None):
383
+ restricted_export_config: Optional[pulumi.Input['ListingRestrictedExportConfigArgs']] = None,
384
+ state: Optional[pulumi.Input[_builtins.str]] = None):
330
385
  """
331
386
  Input properties used for looking up and filtering Listing resources.
387
+ :param pulumi.Input[_builtins.bool] allow_only_metadata_sharing: If true, the listing is only available to get the resource metadata. Listing is non subscribable.
332
388
  :param pulumi.Input['ListingBigqueryDatasetArgs'] bigquery_dataset: Shared dataset i.e. BigQuery dataset source.
333
389
  Structure is documented below.
334
390
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] categories: Categories of the listing. Up to two categories are allowed.
391
+ :param pulumi.Input[Sequence[pulumi.Input['ListingCommercialInfoArgs']]] commercial_infos: Commercial info contains the information about the commercial data products associated with the listing.
392
+ Structure is documented below.
335
393
  :param pulumi.Input[_builtins.str] data_exchange_id: The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces.
336
394
  :param pulumi.Input['ListingDataProviderArgs'] data_provider: Details of the data provider who owns the source data.
337
395
  Structure is documented below.
396
+ :param pulumi.Input[_builtins.bool] delete_commercial: If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
338
397
  :param pulumi.Input[_builtins.str] description: Short description of the listing. The description must not contain Unicode non-characters and C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF).
398
+ :param pulumi.Input[_builtins.str] discovery_type: Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
399
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
339
400
  :param pulumi.Input[_builtins.str] display_name: Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces.
340
401
  :param pulumi.Input[_builtins.str] documentation: Documentation describing the listing.
341
402
  :param pulumi.Input[_builtins.str] icon: Base64 encoded image representing the listing.
@@ -353,17 +414,26 @@ class _ListingState:
353
414
  :param pulumi.Input[_builtins.str] request_access: Email or URL of the request access of the listing. Subscribers can use this reference to request access.
354
415
  :param pulumi.Input['ListingRestrictedExportConfigArgs'] restricted_export_config: If set, restricted export configuration will be propagated and enforced on the linked dataset.
355
416
  Structure is documented below.
417
+ :param pulumi.Input[_builtins.str] state: Current state of the listing.
356
418
  """
419
+ if allow_only_metadata_sharing is not None:
420
+ pulumi.set(__self__, "allow_only_metadata_sharing", allow_only_metadata_sharing)
357
421
  if bigquery_dataset is not None:
358
422
  pulumi.set(__self__, "bigquery_dataset", bigquery_dataset)
359
423
  if categories is not None:
360
424
  pulumi.set(__self__, "categories", categories)
425
+ if commercial_infos is not None:
426
+ pulumi.set(__self__, "commercial_infos", commercial_infos)
361
427
  if data_exchange_id is not None:
362
428
  pulumi.set(__self__, "data_exchange_id", data_exchange_id)
363
429
  if data_provider is not None:
364
430
  pulumi.set(__self__, "data_provider", data_provider)
431
+ if delete_commercial is not None:
432
+ pulumi.set(__self__, "delete_commercial", delete_commercial)
365
433
  if description is not None:
366
434
  pulumi.set(__self__, "description", description)
435
+ if discovery_type is not None:
436
+ pulumi.set(__self__, "discovery_type", discovery_type)
367
437
  if display_name is not None:
368
438
  pulumi.set(__self__, "display_name", display_name)
369
439
  if documentation is not None:
@@ -390,6 +460,20 @@ class _ListingState:
390
460
  pulumi.set(__self__, "request_access", request_access)
391
461
  if restricted_export_config is not None:
392
462
  pulumi.set(__self__, "restricted_export_config", restricted_export_config)
463
+ if state is not None:
464
+ pulumi.set(__self__, "state", state)
465
+
466
+ @_builtins.property
467
+ @pulumi.getter(name="allowOnlyMetadataSharing")
468
+ def allow_only_metadata_sharing(self) -> Optional[pulumi.Input[_builtins.bool]]:
469
+ """
470
+ If true, the listing is only available to get the resource metadata. Listing is non subscribable.
471
+ """
472
+ return pulumi.get(self, "allow_only_metadata_sharing")
473
+
474
+ @allow_only_metadata_sharing.setter
475
+ def allow_only_metadata_sharing(self, value: Optional[pulumi.Input[_builtins.bool]]):
476
+ pulumi.set(self, "allow_only_metadata_sharing", value)
393
477
 
394
478
  @_builtins.property
395
479
  @pulumi.getter(name="bigqueryDataset")
@@ -416,6 +500,19 @@ class _ListingState:
416
500
  def categories(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
417
501
  pulumi.set(self, "categories", value)
418
502
 
503
+ @_builtins.property
504
+ @pulumi.getter(name="commercialInfos")
505
+ def commercial_infos(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ListingCommercialInfoArgs']]]]:
506
+ """
507
+ Commercial info contains the information about the commercial data products associated with the listing.
508
+ Structure is documented below.
509
+ """
510
+ return pulumi.get(self, "commercial_infos")
511
+
512
+ @commercial_infos.setter
513
+ def commercial_infos(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ListingCommercialInfoArgs']]]]):
514
+ pulumi.set(self, "commercial_infos", value)
515
+
419
516
  @_builtins.property
420
517
  @pulumi.getter(name="dataExchangeId")
421
518
  def data_exchange_id(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -441,6 +538,18 @@ class _ListingState:
441
538
  def data_provider(self, value: Optional[pulumi.Input['ListingDataProviderArgs']]):
442
539
  pulumi.set(self, "data_provider", value)
443
540
 
541
+ @_builtins.property
542
+ @pulumi.getter(name="deleteCommercial")
543
+ def delete_commercial(self) -> Optional[pulumi.Input[_builtins.bool]]:
544
+ """
545
+ If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
546
+ """
547
+ return pulumi.get(self, "delete_commercial")
548
+
549
+ @delete_commercial.setter
550
+ def delete_commercial(self, value: Optional[pulumi.Input[_builtins.bool]]):
551
+ pulumi.set(self, "delete_commercial", value)
552
+
444
553
  @_builtins.property
445
554
  @pulumi.getter
446
555
  def description(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -453,6 +562,19 @@ class _ListingState:
453
562
  def description(self, value: Optional[pulumi.Input[_builtins.str]]):
454
563
  pulumi.set(self, "description", value)
455
564
 
565
+ @_builtins.property
566
+ @pulumi.getter(name="discoveryType")
567
+ def discovery_type(self) -> Optional[pulumi.Input[_builtins.str]]:
568
+ """
569
+ Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
570
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
571
+ """
572
+ return pulumi.get(self, "discovery_type")
573
+
574
+ @discovery_type.setter
575
+ def discovery_type(self, value: Optional[pulumi.Input[_builtins.str]]):
576
+ pulumi.set(self, "discovery_type", value)
577
+
456
578
  @_builtins.property
457
579
  @pulumi.getter(name="displayName")
458
580
  def display_name(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -613,6 +735,18 @@ class _ListingState:
613
735
  def restricted_export_config(self, value: Optional[pulumi.Input['ListingRestrictedExportConfigArgs']]):
614
736
  pulumi.set(self, "restricted_export_config", value)
615
737
 
738
+ @_builtins.property
739
+ @pulumi.getter
740
+ def state(self) -> Optional[pulumi.Input[_builtins.str]]:
741
+ """
742
+ Current state of the listing.
743
+ """
744
+ return pulumi.get(self, "state")
745
+
746
+ @state.setter
747
+ def state(self, value: Optional[pulumi.Input[_builtins.str]]):
748
+ pulumi.set(self, "state", value)
749
+
616
750
 
617
751
  @pulumi.type_token("gcp:bigqueryanalyticshub/listing:Listing")
618
752
  class Listing(pulumi.CustomResource):
@@ -620,11 +754,14 @@ class Listing(pulumi.CustomResource):
620
754
  def __init__(__self__,
621
755
  resource_name: str,
622
756
  opts: Optional[pulumi.ResourceOptions] = None,
757
+ allow_only_metadata_sharing: Optional[pulumi.Input[_builtins.bool]] = None,
623
758
  bigquery_dataset: Optional[pulumi.Input[Union['ListingBigqueryDatasetArgs', 'ListingBigqueryDatasetArgsDict']]] = None,
624
759
  categories: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
625
760
  data_exchange_id: Optional[pulumi.Input[_builtins.str]] = None,
626
761
  data_provider: Optional[pulumi.Input[Union['ListingDataProviderArgs', 'ListingDataProviderArgsDict']]] = None,
762
+ delete_commercial: Optional[pulumi.Input[_builtins.bool]] = None,
627
763
  description: Optional[pulumi.Input[_builtins.str]] = None,
764
+ discovery_type: Optional[pulumi.Input[_builtins.str]] = None,
628
765
  display_name: Optional[pulumi.Input[_builtins.str]] = None,
629
766
  documentation: Optional[pulumi.Input[_builtins.str]] = None,
630
767
  icon: Optional[pulumi.Input[_builtins.str]] = None,
@@ -873,6 +1010,62 @@ class Listing(pulumi.CustomResource):
873
1010
  "enabled": True,
874
1011
  })
875
1012
  ```
1013
+ ### Bigquery Analyticshub Public Listing
1014
+
1015
+ ```python
1016
+ import pulumi
1017
+ import pulumi_gcp as gcp
1018
+
1019
+ listing = gcp.bigqueryanalyticshub.DataExchange("listing",
1020
+ location="US",
1021
+ data_exchange_id="my_data_exchange",
1022
+ display_name="my_data_exchange",
1023
+ description="example public listing",
1024
+ discovery_type="DISCOVERY_TYPE_PUBLIC")
1025
+ listing_dataset = gcp.bigquery.Dataset("listing",
1026
+ dataset_id="my_listing",
1027
+ friendly_name="my_listing",
1028
+ description="example public listing",
1029
+ location="US")
1030
+ listing_listing = gcp.bigqueryanalyticshub.Listing("listing",
1031
+ location="US",
1032
+ data_exchange_id=listing.data_exchange_id,
1033
+ listing_id="my_listing",
1034
+ display_name="my_listing",
1035
+ description="example public listing",
1036
+ discovery_type="DISCOVERY_TYPE_PUBLIC",
1037
+ allow_only_metadata_sharing=False,
1038
+ bigquery_dataset={
1039
+ "dataset": listing_dataset.id,
1040
+ })
1041
+ ```
1042
+ ### Bigquery Analyticshub Listing Marketplace
1043
+
1044
+ ```python
1045
+ import pulumi
1046
+ import pulumi_gcp as gcp
1047
+
1048
+ listing = gcp.bigqueryanalyticshub.DataExchange("listing",
1049
+ location="US",
1050
+ data_exchange_id="my_data_exchange",
1051
+ display_name="my_data_exchange",
1052
+ description="example data exchange")
1053
+ listing_dataset = gcp.bigquery.Dataset("listing",
1054
+ dataset_id="my_listing",
1055
+ friendly_name="my_listing",
1056
+ description="example data exchange",
1057
+ location="US")
1058
+ listing_listing = gcp.bigqueryanalyticshub.Listing("listing",
1059
+ location="US",
1060
+ data_exchange_id=listing.data_exchange_id,
1061
+ listing_id="my_listing",
1062
+ display_name="my_listing",
1063
+ description="example data exchange",
1064
+ delete_commercial=True,
1065
+ bigquery_dataset={
1066
+ "dataset": listing_dataset.id,
1067
+ })
1068
+ ```
876
1069
 
877
1070
  ## Import
878
1071
 
@@ -900,13 +1093,17 @@ class Listing(pulumi.CustomResource):
900
1093
 
901
1094
  :param str resource_name: The name of the resource.
902
1095
  :param pulumi.ResourceOptions opts: Options for the resource.
1096
+ :param pulumi.Input[_builtins.bool] allow_only_metadata_sharing: If true, the listing is only available to get the resource metadata. Listing is non subscribable.
903
1097
  :param pulumi.Input[Union['ListingBigqueryDatasetArgs', 'ListingBigqueryDatasetArgsDict']] bigquery_dataset: Shared dataset i.e. BigQuery dataset source.
904
1098
  Structure is documented below.
905
1099
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] categories: Categories of the listing. Up to two categories are allowed.
906
1100
  :param pulumi.Input[_builtins.str] data_exchange_id: The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces.
907
1101
  :param pulumi.Input[Union['ListingDataProviderArgs', 'ListingDataProviderArgsDict']] data_provider: Details of the data provider who owns the source data.
908
1102
  Structure is documented below.
1103
+ :param pulumi.Input[_builtins.bool] delete_commercial: If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
909
1104
  :param pulumi.Input[_builtins.str] description: Short description of the listing. The description must not contain Unicode non-characters and C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF).
1105
+ :param pulumi.Input[_builtins.str] discovery_type: Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
1106
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
910
1107
  :param pulumi.Input[_builtins.str] display_name: Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces.
911
1108
  :param pulumi.Input[_builtins.str] documentation: Documentation describing the listing.
912
1109
  :param pulumi.Input[_builtins.str] icon: Base64 encoded image representing the listing.
@@ -1165,6 +1362,62 @@ class Listing(pulumi.CustomResource):
1165
1362
  "enabled": True,
1166
1363
  })
1167
1364
  ```
1365
+ ### Bigquery Analyticshub Public Listing
1366
+
1367
+ ```python
1368
+ import pulumi
1369
+ import pulumi_gcp as gcp
1370
+
1371
+ listing = gcp.bigqueryanalyticshub.DataExchange("listing",
1372
+ location="US",
1373
+ data_exchange_id="my_data_exchange",
1374
+ display_name="my_data_exchange",
1375
+ description="example public listing",
1376
+ discovery_type="DISCOVERY_TYPE_PUBLIC")
1377
+ listing_dataset = gcp.bigquery.Dataset("listing",
1378
+ dataset_id="my_listing",
1379
+ friendly_name="my_listing",
1380
+ description="example public listing",
1381
+ location="US")
1382
+ listing_listing = gcp.bigqueryanalyticshub.Listing("listing",
1383
+ location="US",
1384
+ data_exchange_id=listing.data_exchange_id,
1385
+ listing_id="my_listing",
1386
+ display_name="my_listing",
1387
+ description="example public listing",
1388
+ discovery_type="DISCOVERY_TYPE_PUBLIC",
1389
+ allow_only_metadata_sharing=False,
1390
+ bigquery_dataset={
1391
+ "dataset": listing_dataset.id,
1392
+ })
1393
+ ```
1394
+ ### Bigquery Analyticshub Listing Marketplace
1395
+
1396
+ ```python
1397
+ import pulumi
1398
+ import pulumi_gcp as gcp
1399
+
1400
+ listing = gcp.bigqueryanalyticshub.DataExchange("listing",
1401
+ location="US",
1402
+ data_exchange_id="my_data_exchange",
1403
+ display_name="my_data_exchange",
1404
+ description="example data exchange")
1405
+ listing_dataset = gcp.bigquery.Dataset("listing",
1406
+ dataset_id="my_listing",
1407
+ friendly_name="my_listing",
1408
+ description="example data exchange",
1409
+ location="US")
1410
+ listing_listing = gcp.bigqueryanalyticshub.Listing("listing",
1411
+ location="US",
1412
+ data_exchange_id=listing.data_exchange_id,
1413
+ listing_id="my_listing",
1414
+ display_name="my_listing",
1415
+ description="example data exchange",
1416
+ delete_commercial=True,
1417
+ bigquery_dataset={
1418
+ "dataset": listing_dataset.id,
1419
+ })
1420
+ ```
1168
1421
 
1169
1422
  ## Import
1170
1423
 
@@ -1205,11 +1458,14 @@ class Listing(pulumi.CustomResource):
1205
1458
  def _internal_init(__self__,
1206
1459
  resource_name: str,
1207
1460
  opts: Optional[pulumi.ResourceOptions] = None,
1461
+ allow_only_metadata_sharing: Optional[pulumi.Input[_builtins.bool]] = None,
1208
1462
  bigquery_dataset: Optional[pulumi.Input[Union['ListingBigqueryDatasetArgs', 'ListingBigqueryDatasetArgsDict']]] = None,
1209
1463
  categories: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1210
1464
  data_exchange_id: Optional[pulumi.Input[_builtins.str]] = None,
1211
1465
  data_provider: Optional[pulumi.Input[Union['ListingDataProviderArgs', 'ListingDataProviderArgsDict']]] = None,
1466
+ delete_commercial: Optional[pulumi.Input[_builtins.bool]] = None,
1212
1467
  description: Optional[pulumi.Input[_builtins.str]] = None,
1468
+ discovery_type: Optional[pulumi.Input[_builtins.str]] = None,
1213
1469
  display_name: Optional[pulumi.Input[_builtins.str]] = None,
1214
1470
  documentation: Optional[pulumi.Input[_builtins.str]] = None,
1215
1471
  icon: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1231,13 +1487,16 @@ class Listing(pulumi.CustomResource):
1231
1487
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1232
1488
  __props__ = ListingArgs.__new__(ListingArgs)
1233
1489
 
1490
+ __props__.__dict__["allow_only_metadata_sharing"] = allow_only_metadata_sharing
1234
1491
  __props__.__dict__["bigquery_dataset"] = bigquery_dataset
1235
1492
  __props__.__dict__["categories"] = categories
1236
1493
  if data_exchange_id is None and not opts.urn:
1237
1494
  raise TypeError("Missing required property 'data_exchange_id'")
1238
1495
  __props__.__dict__["data_exchange_id"] = data_exchange_id
1239
1496
  __props__.__dict__["data_provider"] = data_provider
1497
+ __props__.__dict__["delete_commercial"] = delete_commercial
1240
1498
  __props__.__dict__["description"] = description
1499
+ __props__.__dict__["discovery_type"] = discovery_type
1241
1500
  if display_name is None and not opts.urn:
1242
1501
  raise TypeError("Missing required property 'display_name'")
1243
1502
  __props__.__dict__["display_name"] = display_name
@@ -1256,7 +1515,9 @@ class Listing(pulumi.CustomResource):
1256
1515
  __props__.__dict__["pubsub_topic"] = pubsub_topic
1257
1516
  __props__.__dict__["request_access"] = request_access
1258
1517
  __props__.__dict__["restricted_export_config"] = restricted_export_config
1518
+ __props__.__dict__["commercial_infos"] = None
1259
1519
  __props__.__dict__["name"] = None
1520
+ __props__.__dict__["state"] = None
1260
1521
  super(Listing, __self__).__init__(
1261
1522
  'gcp:bigqueryanalyticshub/listing:Listing',
1262
1523
  resource_name,
@@ -1267,11 +1528,15 @@ class Listing(pulumi.CustomResource):
1267
1528
  def get(resource_name: str,
1268
1529
  id: pulumi.Input[str],
1269
1530
  opts: Optional[pulumi.ResourceOptions] = None,
1531
+ allow_only_metadata_sharing: Optional[pulumi.Input[_builtins.bool]] = None,
1270
1532
  bigquery_dataset: Optional[pulumi.Input[Union['ListingBigqueryDatasetArgs', 'ListingBigqueryDatasetArgsDict']]] = None,
1271
1533
  categories: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1534
+ commercial_infos: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ListingCommercialInfoArgs', 'ListingCommercialInfoArgsDict']]]]] = None,
1272
1535
  data_exchange_id: Optional[pulumi.Input[_builtins.str]] = None,
1273
1536
  data_provider: Optional[pulumi.Input[Union['ListingDataProviderArgs', 'ListingDataProviderArgsDict']]] = None,
1537
+ delete_commercial: Optional[pulumi.Input[_builtins.bool]] = None,
1274
1538
  description: Optional[pulumi.Input[_builtins.str]] = None,
1539
+ discovery_type: Optional[pulumi.Input[_builtins.str]] = None,
1275
1540
  display_name: Optional[pulumi.Input[_builtins.str]] = None,
1276
1541
  documentation: Optional[pulumi.Input[_builtins.str]] = None,
1277
1542
  icon: Optional[pulumi.Input[_builtins.str]] = None,
@@ -1284,7 +1549,8 @@ class Listing(pulumi.CustomResource):
1284
1549
  publisher: Optional[pulumi.Input[Union['ListingPublisherArgs', 'ListingPublisherArgsDict']]] = None,
1285
1550
  pubsub_topic: Optional[pulumi.Input[Union['ListingPubsubTopicArgs', 'ListingPubsubTopicArgsDict']]] = None,
1286
1551
  request_access: Optional[pulumi.Input[_builtins.str]] = None,
1287
- restricted_export_config: Optional[pulumi.Input[Union['ListingRestrictedExportConfigArgs', 'ListingRestrictedExportConfigArgsDict']]] = None) -> 'Listing':
1552
+ restricted_export_config: Optional[pulumi.Input[Union['ListingRestrictedExportConfigArgs', 'ListingRestrictedExportConfigArgsDict']]] = None,
1553
+ state: Optional[pulumi.Input[_builtins.str]] = None) -> 'Listing':
1288
1554
  """
1289
1555
  Get an existing Listing resource's state with the given name, id, and optional extra
1290
1556
  properties used to qualify the lookup.
@@ -1292,13 +1558,19 @@ class Listing(pulumi.CustomResource):
1292
1558
  :param str resource_name: The unique name of the resulting resource.
1293
1559
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1294
1560
  :param pulumi.ResourceOptions opts: Options for the resource.
1561
+ :param pulumi.Input[_builtins.bool] allow_only_metadata_sharing: If true, the listing is only available to get the resource metadata. Listing is non subscribable.
1295
1562
  :param pulumi.Input[Union['ListingBigqueryDatasetArgs', 'ListingBigqueryDatasetArgsDict']] bigquery_dataset: Shared dataset i.e. BigQuery dataset source.
1296
1563
  Structure is documented below.
1297
1564
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] categories: Categories of the listing. Up to two categories are allowed.
1565
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ListingCommercialInfoArgs', 'ListingCommercialInfoArgsDict']]]] commercial_infos: Commercial info contains the information about the commercial data products associated with the listing.
1566
+ Structure is documented below.
1298
1567
  :param pulumi.Input[_builtins.str] data_exchange_id: The ID of the data exchange. Must contain only Unicode letters, numbers (0-9), underscores (_). Should not use characters that require URL-escaping, or characters outside of ASCII, spaces.
1299
1568
  :param pulumi.Input[Union['ListingDataProviderArgs', 'ListingDataProviderArgsDict']] data_provider: Details of the data provider who owns the source data.
1300
1569
  Structure is documented below.
1570
+ :param pulumi.Input[_builtins.bool] delete_commercial: If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
1301
1571
  :param pulumi.Input[_builtins.str] description: Short description of the listing. The description must not contain Unicode non-characters and C0 and C1 control codes except tabs (HT), new lines (LF), carriage returns (CR), and page breaks (FF).
1572
+ :param pulumi.Input[_builtins.str] discovery_type: Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
1573
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
1302
1574
  :param pulumi.Input[_builtins.str] display_name: Human-readable display name of the listing. The display name must contain only Unicode letters, numbers (0-9), underscores (_), dashes (-), spaces ( ), ampersands (&) and can't start or end with spaces.
1303
1575
  :param pulumi.Input[_builtins.str] documentation: Documentation describing the listing.
1304
1576
  :param pulumi.Input[_builtins.str] icon: Base64 encoded image representing the listing.
@@ -1316,16 +1588,21 @@ class Listing(pulumi.CustomResource):
1316
1588
  :param pulumi.Input[_builtins.str] request_access: Email or URL of the request access of the listing. Subscribers can use this reference to request access.
1317
1589
  :param pulumi.Input[Union['ListingRestrictedExportConfigArgs', 'ListingRestrictedExportConfigArgsDict']] restricted_export_config: If set, restricted export configuration will be propagated and enforced on the linked dataset.
1318
1590
  Structure is documented below.
1591
+ :param pulumi.Input[_builtins.str] state: Current state of the listing.
1319
1592
  """
1320
1593
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1321
1594
 
1322
1595
  __props__ = _ListingState.__new__(_ListingState)
1323
1596
 
1597
+ __props__.__dict__["allow_only_metadata_sharing"] = allow_only_metadata_sharing
1324
1598
  __props__.__dict__["bigquery_dataset"] = bigquery_dataset
1325
1599
  __props__.__dict__["categories"] = categories
1600
+ __props__.__dict__["commercial_infos"] = commercial_infos
1326
1601
  __props__.__dict__["data_exchange_id"] = data_exchange_id
1327
1602
  __props__.__dict__["data_provider"] = data_provider
1603
+ __props__.__dict__["delete_commercial"] = delete_commercial
1328
1604
  __props__.__dict__["description"] = description
1605
+ __props__.__dict__["discovery_type"] = discovery_type
1329
1606
  __props__.__dict__["display_name"] = display_name
1330
1607
  __props__.__dict__["documentation"] = documentation
1331
1608
  __props__.__dict__["icon"] = icon
@@ -1339,8 +1616,17 @@ class Listing(pulumi.CustomResource):
1339
1616
  __props__.__dict__["pubsub_topic"] = pubsub_topic
1340
1617
  __props__.__dict__["request_access"] = request_access
1341
1618
  __props__.__dict__["restricted_export_config"] = restricted_export_config
1619
+ __props__.__dict__["state"] = state
1342
1620
  return Listing(resource_name, opts=opts, __props__=__props__)
1343
1621
 
1622
+ @_builtins.property
1623
+ @pulumi.getter(name="allowOnlyMetadataSharing")
1624
+ def allow_only_metadata_sharing(self) -> pulumi.Output[Optional[_builtins.bool]]:
1625
+ """
1626
+ If true, the listing is only available to get the resource metadata. Listing is non subscribable.
1627
+ """
1628
+ return pulumi.get(self, "allow_only_metadata_sharing")
1629
+
1344
1630
  @_builtins.property
1345
1631
  @pulumi.getter(name="bigqueryDataset")
1346
1632
  def bigquery_dataset(self) -> pulumi.Output[Optional['outputs.ListingBigqueryDataset']]:
@@ -1358,6 +1644,15 @@ class Listing(pulumi.CustomResource):
1358
1644
  """
1359
1645
  return pulumi.get(self, "categories")
1360
1646
 
1647
+ @_builtins.property
1648
+ @pulumi.getter(name="commercialInfos")
1649
+ def commercial_infos(self) -> pulumi.Output[Sequence['outputs.ListingCommercialInfo']]:
1650
+ """
1651
+ Commercial info contains the information about the commercial data products associated with the listing.
1652
+ Structure is documented below.
1653
+ """
1654
+ return pulumi.get(self, "commercial_infos")
1655
+
1361
1656
  @_builtins.property
1362
1657
  @pulumi.getter(name="dataExchangeId")
1363
1658
  def data_exchange_id(self) -> pulumi.Output[_builtins.str]:
@@ -1375,6 +1670,14 @@ class Listing(pulumi.CustomResource):
1375
1670
  """
1376
1671
  return pulumi.get(self, "data_provider")
1377
1672
 
1673
+ @_builtins.property
1674
+ @pulumi.getter(name="deleteCommercial")
1675
+ def delete_commercial(self) -> pulumi.Output[Optional[_builtins.bool]]:
1676
+ """
1677
+ If the listing is commercial then this field must be set to true, otherwise a failure is thrown. This acts as a safety guard to avoid deleting commercial listings accidentally.
1678
+ """
1679
+ return pulumi.get(self, "delete_commercial")
1680
+
1378
1681
  @_builtins.property
1379
1682
  @pulumi.getter
1380
1683
  def description(self) -> pulumi.Output[Optional[_builtins.str]]:
@@ -1383,6 +1686,15 @@ class Listing(pulumi.CustomResource):
1383
1686
  """
1384
1687
  return pulumi.get(self, "description")
1385
1688
 
1689
+ @_builtins.property
1690
+ @pulumi.getter(name="discoveryType")
1691
+ def discovery_type(self) -> pulumi.Output[_builtins.str]:
1692
+ """
1693
+ Specifies the type of discovery on the discovery page. Cannot be set for a restricted listing. Note that this does not control the visibility of the exchange/listing which is defined by IAM permission.
1694
+ Possible values are: `DISCOVERY_TYPE_PRIVATE`, `DISCOVERY_TYPE_PUBLIC`.
1695
+ """
1696
+ return pulumi.get(self, "discovery_type")
1697
+
1386
1698
  @_builtins.property
1387
1699
  @pulumi.getter(name="displayName")
1388
1700
  def display_name(self) -> pulumi.Output[_builtins.str]:
@@ -1491,3 +1803,11 @@ class Listing(pulumi.CustomResource):
1491
1803
  """
1492
1804
  return pulumi.get(self, "restricted_export_config")
1493
1805
 
1806
+ @_builtins.property
1807
+ @pulumi.getter
1808
+ def state(self) -> pulumi.Output[_builtins.str]:
1809
+ """
1810
+ Current state of the listing.
1811
+ """
1812
+ return pulumi.get(self, "state")
1813
+