pulumi-databricks 1.77.0a1760375482__py3-none-any.whl → 1.79.0a1762839813__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 (176) hide show
  1. pulumi_databricks/__init__.py +54 -46
  2. pulumi_databricks/_inputs.py +26079 -32918
  3. pulumi_databricks/account_federation_policy.py +44 -16
  4. pulumi_databricks/account_network_policy.py +56 -2
  5. pulumi_databricks/account_setting_v2.py +46 -83
  6. pulumi_databricks/alert_v2.py +168 -134
  7. pulumi_databricks/app.py +153 -0
  8. pulumi_databricks/apps_settings_custom_template.py +75 -52
  9. pulumi_databricks/budget_policy.py +6 -2
  10. pulumi_databricks/catalog.py +65 -23
  11. pulumi_databricks/cluster.py +47 -168
  12. pulumi_databricks/cluster_policy.py +120 -0
  13. pulumi_databricks/config/__init__.pyi +4 -0
  14. pulumi_databricks/config/vars.py +8 -0
  15. pulumi_databricks/data_quality_monitor.py +453 -0
  16. pulumi_databricks/data_quality_refresh.py +492 -0
  17. pulumi_databricks/database_database_catalog.py +9 -52
  18. pulumi_databricks/database_instance.py +271 -120
  19. pulumi_databricks/database_synced_database_table.py +239 -52
  20. pulumi_databricks/entitlements.py +21 -21
  21. pulumi_databricks/entity_tag_assignment.py +83 -52
  22. pulumi_databricks/external_location.py +131 -7
  23. pulumi_databricks/external_metadata.py +16 -59
  24. pulumi_databricks/feature_engineering_feature.py +480 -0
  25. pulumi_databricks/feature_engineering_materialized_feature.py +397 -0
  26. pulumi_databricks/file.py +2 -2
  27. pulumi_databricks/get_account_federation_policies.py +22 -3
  28. pulumi_databricks/get_account_federation_policy.py +12 -27
  29. pulumi_databricks/get_account_network_policies.py +4 -0
  30. pulumi_databricks/get_account_network_policy.py +9 -18
  31. pulumi_databricks/get_account_setting_v2.py +36 -141
  32. pulumi_databricks/get_alert_v2.py +41 -107
  33. pulumi_databricks/get_alerts_v2.py +29 -31
  34. pulumi_databricks/get_app.py +21 -5
  35. pulumi_databricks/get_apps.py +22 -6
  36. pulumi_databricks/get_apps_settings_custom_template.py +11 -55
  37. pulumi_databricks/get_apps_settings_custom_templates.py +25 -21
  38. pulumi_databricks/get_aws_assume_role_policy.py +14 -14
  39. pulumi_databricks/get_aws_bucket_policy.py +10 -10
  40. pulumi_databricks/get_aws_unity_catalog_assume_role_policy.py +10 -10
  41. pulumi_databricks/get_aws_unity_catalog_policy.py +10 -10
  42. pulumi_databricks/get_budget_policies.py +70 -6
  43. pulumi_databricks/get_budget_policy.py +9 -32
  44. pulumi_databricks/get_catalog.py +21 -4
  45. pulumi_databricks/get_catalogs.py +23 -4
  46. pulumi_databricks/get_cluster.py +75 -4
  47. pulumi_databricks/get_cluster_policy.py +23 -4
  48. pulumi_databricks/get_clusters.py +21 -4
  49. pulumi_databricks/get_current_config.py +4 -4
  50. pulumi_databricks/get_current_metastore.py +21 -4
  51. pulumi_databricks/get_dashboards.py +20 -4
  52. pulumi_databricks/get_data_quality_monitor.py +210 -0
  53. pulumi_databricks/get_data_quality_monitors.py +143 -0
  54. pulumi_databricks/get_data_quality_refresh.py +270 -0
  55. pulumi_databricks/get_data_quality_refreshes.py +207 -0
  56. pulumi_databricks/get_database_database_catalog.py +10 -41
  57. pulumi_databricks/get_database_database_catalogs.py +37 -18
  58. pulumi_databricks/get_database_instance.py +93 -99
  59. pulumi_databricks/get_database_instances.py +20 -16
  60. pulumi_databricks/get_database_synced_database_table.py +11 -49
  61. pulumi_databricks/get_database_synced_database_tables.py +42 -23
  62. pulumi_databricks/get_directory.py +20 -1
  63. pulumi_databricks/get_entity_tag_assignment.py +63 -30
  64. pulumi_databricks/get_entity_tag_assignments.py +69 -23
  65. pulumi_databricks/get_external_location.py +21 -4
  66. pulumi_databricks/get_external_locations.py +23 -4
  67. pulumi_databricks/get_external_metadata.py +18 -73
  68. pulumi_databricks/get_external_metadatas.py +22 -16
  69. pulumi_databricks/get_feature_engineering_feature.py +179 -0
  70. pulumi_databricks/get_feature_engineering_features.py +103 -0
  71. pulumi_databricks/get_feature_engineering_materialized_feature.py +180 -0
  72. pulumi_databricks/get_feature_engineering_materialized_features.py +123 -0
  73. pulumi_databricks/get_functions.py +16 -1
  74. pulumi_databricks/get_instance_profiles.py +21 -4
  75. pulumi_databricks/get_jobs.py +23 -4
  76. pulumi_databricks/get_materialized_features_feature_tag.py +7 -32
  77. pulumi_databricks/get_materialized_features_feature_tags.py +50 -18
  78. pulumi_databricks/get_metastore.py +6 -6
  79. pulumi_databricks/get_mlflow_experiment.py +18 -1
  80. pulumi_databricks/get_mlflow_model.py +18 -1
  81. pulumi_databricks/get_mlflow_models.py +23 -4
  82. pulumi_databricks/get_node_type.py +42 -5
  83. pulumi_databricks/get_notebook.py +20 -1
  84. pulumi_databricks/get_notification_destinations.py +17 -1
  85. pulumi_databricks/get_online_store.py +11 -38
  86. pulumi_databricks/get_online_stores.py +20 -18
  87. pulumi_databricks/get_pipelines.py +23 -4
  88. pulumi_databricks/get_policy_info.py +21 -109
  89. pulumi_databricks/get_policy_infos.py +50 -25
  90. pulumi_databricks/get_quality_monitor_v2.py +8 -21
  91. pulumi_databricks/get_quality_monitors_v2.py +23 -25
  92. pulumi_databricks/get_registered_model.py +19 -4
  93. pulumi_databricks/get_registered_model_versions.py +19 -4
  94. pulumi_databricks/get_rfa_access_request_destinations.py +126 -0
  95. pulumi_databricks/get_schema.py +18 -1
  96. pulumi_databricks/get_schemas.py +23 -4
  97. pulumi_databricks/get_service_principal_federation_policies.py +23 -4
  98. pulumi_databricks/get_service_principal_federation_policy.py +15 -24
  99. pulumi_databricks/get_service_principals.py +64 -0
  100. pulumi_databricks/get_serving_endpoints.py +19 -4
  101. pulumi_databricks/get_share.py +117 -18
  102. pulumi_databricks/get_shares.py +22 -3
  103. pulumi_databricks/get_spark_version.py +20 -1
  104. pulumi_databricks/get_sql_warehouse.py +16 -1
  105. pulumi_databricks/get_sql_warehouses.py +20 -1
  106. pulumi_databricks/get_storage_credential.py +18 -1
  107. pulumi_databricks/get_storage_credentials.py +23 -4
  108. pulumi_databricks/get_table.py +18 -1
  109. pulumi_databricks/get_tables.py +20 -1
  110. pulumi_databricks/get_tag_policies.py +55 -23
  111. pulumi_databricks/get_tag_policy.py +60 -40
  112. pulumi_databricks/get_views.py +20 -1
  113. pulumi_databricks/get_volume.py +18 -1
  114. pulumi_databricks/get_volumes.py +20 -1
  115. pulumi_databricks/get_workspace_network_option.py +8 -16
  116. pulumi_databricks/get_workspace_setting_v2.py +41 -163
  117. pulumi_databricks/get_zones.py +20 -1
  118. pulumi_databricks/git_credential.py +54 -7
  119. pulumi_databricks/group.py +21 -21
  120. pulumi_databricks/instance_profile.py +0 -182
  121. pulumi_databricks/job.py +47 -0
  122. pulumi_databricks/library.py +165 -0
  123. pulumi_databricks/materialized_features_feature_tag.py +9 -52
  124. pulumi_databricks/metastore.py +81 -7
  125. pulumi_databricks/metastore_data_access.py +48 -0
  126. pulumi_databricks/mlflow_webhook.py +4 -4
  127. pulumi_databricks/mws_credentials.py +10 -10
  128. pulumi_databricks/mws_customer_managed_keys.py +0 -288
  129. pulumi_databricks/mws_log_delivery.py +146 -0
  130. pulumi_databricks/mws_storage_configurations.py +16 -16
  131. pulumi_databricks/mws_vpc_endpoint.py +56 -56
  132. pulumi_databricks/mws_workspaces.py +146 -65
  133. pulumi_databricks/notebook.py +49 -0
  134. pulumi_databricks/online_store.py +9 -52
  135. pulumi_databricks/outputs.py +11885 -13474
  136. pulumi_databricks/permission_assignment.py +299 -8
  137. pulumi_databricks/permissions.py +6 -6
  138. pulumi_databricks/pipeline.py +37 -3
  139. pulumi_databricks/policy_info.py +9 -52
  140. pulumi_databricks/provider.py +36 -1
  141. pulumi_databricks/pulumi-plugin.json +1 -1
  142. pulumi_databricks/quality_monitor.py +47 -0
  143. pulumi_databricks/quality_monitor_v2.py +9 -52
  144. pulumi_databricks/recipient.py +74 -0
  145. pulumi_databricks/registered_model.py +308 -36
  146. pulumi_databricks/rfa_access_request_destinations.py +286 -0
  147. pulumi_databricks/schema.py +7 -7
  148. pulumi_databricks/service_principal_federation_policy.py +48 -16
  149. pulumi_databricks/share.py +71 -84
  150. pulumi_databricks/sql_table.py +42 -14
  151. pulumi_databricks/storage_credential.py +15 -2
  152. pulumi_databricks/tag_policy.py +111 -54
  153. pulumi_databricks/user.py +21 -21
  154. pulumi_databricks/volume.py +7 -7
  155. pulumi_databricks/workspace_binding.py +0 -48
  156. pulumi_databricks/workspace_network_option.py +6 -2
  157. pulumi_databricks/workspace_setting_v2.py +49 -133
  158. {pulumi_databricks-1.77.0a1760375482.dist-info → pulumi_databricks-1.79.0a1762839813.dist-info}/METADATA +1 -1
  159. pulumi_databricks-1.79.0a1762839813.dist-info/RECORD +250 -0
  160. pulumi_databricks/clean_room_asset.py +0 -938
  161. pulumi_databricks/clean_room_auto_approval_rule.py +0 -473
  162. pulumi_databricks/clean_rooms_clean_room.py +0 -569
  163. pulumi_databricks/get_clean_room_asset.py +0 -416
  164. pulumi_databricks/get_clean_room_asset_revisions_clean_room_asset.py +0 -392
  165. pulumi_databricks/get_clean_room_asset_revisions_clean_room_assets.py +0 -121
  166. pulumi_databricks/get_clean_room_assets.py +0 -146
  167. pulumi_databricks/get_clean_room_auto_approval_rule.py +0 -217
  168. pulumi_databricks/get_clean_room_auto_approval_rules.py +0 -101
  169. pulumi_databricks/get_clean_rooms_clean_room.py +0 -289
  170. pulumi_databricks/get_clean_rooms_clean_rooms.py +0 -125
  171. pulumi_databricks/get_recipient_federation_policies.py +0 -101
  172. pulumi_databricks/get_recipient_federation_policy.py +0 -182
  173. pulumi_databricks/recipient_federation_policy.py +0 -393
  174. pulumi_databricks-1.77.0a1760375482.dist-info/RECORD +0 -250
  175. {pulumi_databricks-1.77.0a1760375482.dist-info → pulumi_databricks-1.79.0a1762839813.dist-info}/WHEEL +0 -0
  176. {pulumi_databricks-1.77.0a1760375482.dist-info → pulumi_databricks-1.79.0a1762839813.dist-info}/top_level.txt +0 -0
@@ -22,23 +22,19 @@ class EntityTagAssignmentArgs:
22
22
  entity_name: pulumi.Input[_builtins.str],
23
23
  entity_type: pulumi.Input[_builtins.str],
24
24
  tag_key: pulumi.Input[_builtins.str],
25
- tag_value: Optional[pulumi.Input[_builtins.str]] = None,
26
- workspace_id: Optional[pulumi.Input[_builtins.str]] = None):
25
+ tag_value: Optional[pulumi.Input[_builtins.str]] = None):
27
26
  """
28
27
  The set of arguments for constructing a EntityTagAssignment resource.
29
28
  :param pulumi.Input[_builtins.str] entity_name: The fully qualified name of the entity to which the tag is assigned
30
29
  :param pulumi.Input[_builtins.str] entity_type: The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, tables, columns, volumes
31
30
  :param pulumi.Input[_builtins.str] tag_key: The key of the tag
32
31
  :param pulumi.Input[_builtins.str] tag_value: The value of the tag
33
- :param pulumi.Input[_builtins.str] workspace_id: Workspace ID of the resource
34
32
  """
35
33
  pulumi.set(__self__, "entity_name", entity_name)
36
34
  pulumi.set(__self__, "entity_type", entity_type)
37
35
  pulumi.set(__self__, "tag_key", tag_key)
38
36
  if tag_value is not None:
39
37
  pulumi.set(__self__, "tag_value", tag_value)
40
- if workspace_id is not None:
41
- pulumi.set(__self__, "workspace_id", workspace_id)
42
38
 
43
39
  @_builtins.property
44
40
  @pulumi.getter(name="entityName")
@@ -88,18 +84,6 @@ class EntityTagAssignmentArgs:
88
84
  def tag_value(self, value: Optional[pulumi.Input[_builtins.str]]):
89
85
  pulumi.set(self, "tag_value", value)
90
86
 
91
- @_builtins.property
92
- @pulumi.getter(name="workspaceId")
93
- def workspace_id(self) -> Optional[pulumi.Input[_builtins.str]]:
94
- """
95
- Workspace ID of the resource
96
- """
97
- return pulumi.get(self, "workspace_id")
98
-
99
- @workspace_id.setter
100
- def workspace_id(self, value: Optional[pulumi.Input[_builtins.str]]):
101
- pulumi.set(self, "workspace_id", value)
102
-
103
87
 
104
88
  @pulumi.input_type
105
89
  class _EntityTagAssignmentState:
@@ -107,15 +91,13 @@ class _EntityTagAssignmentState:
107
91
  entity_name: Optional[pulumi.Input[_builtins.str]] = None,
108
92
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
109
93
  tag_key: Optional[pulumi.Input[_builtins.str]] = None,
110
- tag_value: Optional[pulumi.Input[_builtins.str]] = None,
111
- workspace_id: Optional[pulumi.Input[_builtins.str]] = None):
94
+ tag_value: Optional[pulumi.Input[_builtins.str]] = None):
112
95
  """
113
96
  Input properties used for looking up and filtering EntityTagAssignment resources.
114
97
  :param pulumi.Input[_builtins.str] entity_name: The fully qualified name of the entity to which the tag is assigned
115
98
  :param pulumi.Input[_builtins.str] entity_type: The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, tables, columns, volumes
116
99
  :param pulumi.Input[_builtins.str] tag_key: The key of the tag
117
100
  :param pulumi.Input[_builtins.str] tag_value: The value of the tag
118
- :param pulumi.Input[_builtins.str] workspace_id: Workspace ID of the resource
119
101
  """
120
102
  if entity_name is not None:
121
103
  pulumi.set(__self__, "entity_name", entity_name)
@@ -125,8 +107,6 @@ class _EntityTagAssignmentState:
125
107
  pulumi.set(__self__, "tag_key", tag_key)
126
108
  if tag_value is not None:
127
109
  pulumi.set(__self__, "tag_value", tag_value)
128
- if workspace_id is not None:
129
- pulumi.set(__self__, "workspace_id", workspace_id)
130
110
 
131
111
  @_builtins.property
132
112
  @pulumi.getter(name="entityName")
@@ -176,18 +156,6 @@ class _EntityTagAssignmentState:
176
156
  def tag_value(self, value: Optional[pulumi.Input[_builtins.str]]):
177
157
  pulumi.set(self, "tag_value", value)
178
158
 
179
- @_builtins.property
180
- @pulumi.getter(name="workspaceId")
181
- def workspace_id(self) -> Optional[pulumi.Input[_builtins.str]]:
182
- """
183
- Workspace ID of the resource
184
- """
185
- return pulumi.get(self, "workspace_id")
186
-
187
- @workspace_id.setter
188
- def workspace_id(self, value: Optional[pulumi.Input[_builtins.str]]):
189
- pulumi.set(self, "workspace_id", value)
190
-
191
159
 
192
160
  @pulumi.type_token("databricks:index/entityTagAssignment:EntityTagAssignment")
193
161
  class EntityTagAssignment(pulumi.CustomResource):
@@ -199,9 +167,47 @@ class EntityTagAssignment(pulumi.CustomResource):
199
167
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
200
168
  tag_key: Optional[pulumi.Input[_builtins.str]] = None,
201
169
  tag_value: Optional[pulumi.Input[_builtins.str]] = None,
202
- workspace_id: Optional[pulumi.Input[_builtins.str]] = None,
203
170
  __props__=None):
204
171
  """
172
+ [![Public Preview](https://img.shields.io/badge/Release_Stage-Public_Preview-yellowgreen)](https://docs.databricks.com/aws/en/release-notes/release-types)
173
+
174
+ This resource allows you to create, update, list, and delete tag assignments on Unity Catalog entities.
175
+
176
+ ## Example Usage
177
+
178
+ ### Basic tag assignment to a catalog
179
+
180
+ ```python
181
+ import pulumi
182
+ import pulumi_databricks as databricks
183
+
184
+ catalog_tag = databricks.EntityTagAssignment("catalog_tag",
185
+ entity_type="catalogs",
186
+ entity_name="production_catalog",
187
+ tag_key="environment",
188
+ tag_value="production")
189
+ schema_tag = databricks.EntityTagAssignment("schema_tag",
190
+ entity_type="schemas",
191
+ entity_name="production_catalog.sales_data",
192
+ tag_key="owner",
193
+ tag_value="sales-team")
194
+ table_tag = databricks.EntityTagAssignment("table_tag",
195
+ entity_type="tables",
196
+ entity_name="production_catalog.sales_data.customer_orders",
197
+ tag_key="data_classification",
198
+ tag_value="confidential")
199
+ column_tag = databricks.EntityTagAssignment("column_tag",
200
+ entity_type="columns",
201
+ entity_name="production_catalog.sales_data.customers.email_address",
202
+ tag_key="pii",
203
+ tag_value="email")
204
+ volume_tag = databricks.EntityTagAssignment("volume_tag",
205
+ entity_type="volumes",
206
+ entity_name="production_catalog.raw_data.landing_zone",
207
+ tag_key="purpose",
208
+ tag_value="data_ingestion")
209
+ ```
210
+
205
211
  ## Import
206
212
 
207
213
  As of Pulumi v1.5, resources can be imported through configuration.
@@ -219,7 +225,7 @@ class EntityTagAssignment(pulumi.CustomResource):
219
225
  If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
220
226
 
221
227
  ```sh
222
- $ pulumi import databricks:index/entityTagAssignment:EntityTagAssignment databricks_entity_tag_assignment "entity_type,entity_name,tag_key"
228
+ $ pulumi import databricks:index/entityTagAssignment:EntityTagAssignment this "entity_type,entity_name,tag_key"
223
229
  ```
224
230
 
225
231
  :param str resource_name: The name of the resource.
@@ -228,7 +234,6 @@ class EntityTagAssignment(pulumi.CustomResource):
228
234
  :param pulumi.Input[_builtins.str] entity_type: The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, tables, columns, volumes
229
235
  :param pulumi.Input[_builtins.str] tag_key: The key of the tag
230
236
  :param pulumi.Input[_builtins.str] tag_value: The value of the tag
231
- :param pulumi.Input[_builtins.str] workspace_id: Workspace ID of the resource
232
237
  """
233
238
  ...
234
239
  @overload
@@ -237,6 +242,45 @@ class EntityTagAssignment(pulumi.CustomResource):
237
242
  args: EntityTagAssignmentArgs,
238
243
  opts: Optional[pulumi.ResourceOptions] = None):
239
244
  """
245
+ [![Public Preview](https://img.shields.io/badge/Release_Stage-Public_Preview-yellowgreen)](https://docs.databricks.com/aws/en/release-notes/release-types)
246
+
247
+ This resource allows you to create, update, list, and delete tag assignments on Unity Catalog entities.
248
+
249
+ ## Example Usage
250
+
251
+ ### Basic tag assignment to a catalog
252
+
253
+ ```python
254
+ import pulumi
255
+ import pulumi_databricks as databricks
256
+
257
+ catalog_tag = databricks.EntityTagAssignment("catalog_tag",
258
+ entity_type="catalogs",
259
+ entity_name="production_catalog",
260
+ tag_key="environment",
261
+ tag_value="production")
262
+ schema_tag = databricks.EntityTagAssignment("schema_tag",
263
+ entity_type="schemas",
264
+ entity_name="production_catalog.sales_data",
265
+ tag_key="owner",
266
+ tag_value="sales-team")
267
+ table_tag = databricks.EntityTagAssignment("table_tag",
268
+ entity_type="tables",
269
+ entity_name="production_catalog.sales_data.customer_orders",
270
+ tag_key="data_classification",
271
+ tag_value="confidential")
272
+ column_tag = databricks.EntityTagAssignment("column_tag",
273
+ entity_type="columns",
274
+ entity_name="production_catalog.sales_data.customers.email_address",
275
+ tag_key="pii",
276
+ tag_value="email")
277
+ volume_tag = databricks.EntityTagAssignment("volume_tag",
278
+ entity_type="volumes",
279
+ entity_name="production_catalog.raw_data.landing_zone",
280
+ tag_key="purpose",
281
+ tag_value="data_ingestion")
282
+ ```
283
+
240
284
  ## Import
241
285
 
242
286
  As of Pulumi v1.5, resources can be imported through configuration.
@@ -254,7 +298,7 @@ class EntityTagAssignment(pulumi.CustomResource):
254
298
  If you are using an older version of Pulumi, import the resource using the `pulumi import` command as follows:
255
299
 
256
300
  ```sh
257
- $ pulumi import databricks:index/entityTagAssignment:EntityTagAssignment databricks_entity_tag_assignment "entity_type,entity_name,tag_key"
301
+ $ pulumi import databricks:index/entityTagAssignment:EntityTagAssignment this "entity_type,entity_name,tag_key"
258
302
  ```
259
303
 
260
304
  :param str resource_name: The name of the resource.
@@ -276,7 +320,6 @@ class EntityTagAssignment(pulumi.CustomResource):
276
320
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
277
321
  tag_key: Optional[pulumi.Input[_builtins.str]] = None,
278
322
  tag_value: Optional[pulumi.Input[_builtins.str]] = None,
279
- workspace_id: Optional[pulumi.Input[_builtins.str]] = None,
280
323
  __props__=None):
281
324
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
282
325
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -296,7 +339,6 @@ class EntityTagAssignment(pulumi.CustomResource):
296
339
  raise TypeError("Missing required property 'tag_key'")
297
340
  __props__.__dict__["tag_key"] = tag_key
298
341
  __props__.__dict__["tag_value"] = tag_value
299
- __props__.__dict__["workspace_id"] = workspace_id
300
342
  super(EntityTagAssignment, __self__).__init__(
301
343
  'databricks:index/entityTagAssignment:EntityTagAssignment',
302
344
  resource_name,
@@ -310,8 +352,7 @@ class EntityTagAssignment(pulumi.CustomResource):
310
352
  entity_name: Optional[pulumi.Input[_builtins.str]] = None,
311
353
  entity_type: Optional[pulumi.Input[_builtins.str]] = None,
312
354
  tag_key: Optional[pulumi.Input[_builtins.str]] = None,
313
- tag_value: Optional[pulumi.Input[_builtins.str]] = None,
314
- workspace_id: Optional[pulumi.Input[_builtins.str]] = None) -> 'EntityTagAssignment':
355
+ tag_value: Optional[pulumi.Input[_builtins.str]] = None) -> 'EntityTagAssignment':
315
356
  """
316
357
  Get an existing EntityTagAssignment resource's state with the given name, id, and optional extra
317
358
  properties used to qualify the lookup.
@@ -323,7 +364,6 @@ class EntityTagAssignment(pulumi.CustomResource):
323
364
  :param pulumi.Input[_builtins.str] entity_type: The type of the entity to which the tag is assigned. Allowed values are: catalogs, schemas, tables, columns, volumes
324
365
  :param pulumi.Input[_builtins.str] tag_key: The key of the tag
325
366
  :param pulumi.Input[_builtins.str] tag_value: The value of the tag
326
- :param pulumi.Input[_builtins.str] workspace_id: Workspace ID of the resource
327
367
  """
328
368
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
329
369
 
@@ -333,7 +373,6 @@ class EntityTagAssignment(pulumi.CustomResource):
333
373
  __props__.__dict__["entity_type"] = entity_type
334
374
  __props__.__dict__["tag_key"] = tag_key
335
375
  __props__.__dict__["tag_value"] = tag_value
336
- __props__.__dict__["workspace_id"] = workspace_id
337
376
  return EntityTagAssignment(resource_name, opts=opts, __props__=__props__)
338
377
 
339
378
  @_builtins.property
@@ -368,11 +407,3 @@ class EntityTagAssignment(pulumi.CustomResource):
368
407
  """
369
408
  return pulumi.get(self, "tag_value")
370
409
 
371
- @_builtins.property
372
- @pulumi.getter(name="workspaceId")
373
- def workspace_id(self) -> pulumi.Output[Optional[_builtins.str]]:
374
- """
375
- Workspace ID of the resource
376
- """
377
- return pulumi.get(self, "workspace_id")
378
-
@@ -39,7 +39,7 @@ class ExternalLocationArgs:
39
39
  """
40
40
  The set of arguments for constructing a ExternalLocation resource.
41
41
  :param pulumi.Input[_builtins.str] credential_name: Name of the StorageCredential to use with this external location.
42
- :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
42
+ :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
43
43
  :param pulumi.Input[_builtins.str] comment: User-supplied free-form text.
44
44
  :param pulumi.Input[_builtins.bool] enable_file_events: indicates if managed file events are enabled for this external location. Requires `file_event_queue` block.
45
45
  :param pulumi.Input[_builtins.bool] fallback: Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled (disabled by default), the access to the location falls back to cluster credentials if UC credentials are not sufficient.
@@ -96,7 +96,7 @@ class ExternalLocationArgs:
96
96
  @pulumi.getter
97
97
  def url(self) -> pulumi.Input[_builtins.str]:
98
98
  """
99
- Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
99
+ Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
100
100
  """
101
101
  return pulumi.get(self, "url")
102
102
 
@@ -294,7 +294,7 @@ class _ExternalLocationState:
294
294
  :param pulumi.Input[_builtins.bool] skip_validation: Suppress validation errors if any & force save the external location
295
295
  :param pulumi.Input[_builtins.int] updated_at: Time at which external location this was last modified, in epoch milliseconds.
296
296
  :param pulumi.Input[_builtins.str] updated_by: Username of user who last modified the external location.
297
- :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
297
+ :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
298
298
  """
299
299
  if browse_only is not None:
300
300
  pulumi.set(__self__, "browse_only", browse_only)
@@ -571,7 +571,7 @@ class _ExternalLocationState:
571
571
  @pulumi.getter
572
572
  def url(self) -> Optional[pulumi.Input[_builtins.str]]:
573
573
  """
574
- Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
574
+ Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
575
575
  """
576
576
  return pulumi.get(self, "url")
577
577
 
@@ -642,6 +642,68 @@ class ExternalLocation(pulumi.CustomResource):
642
642
 
643
643
  For Azure
644
644
 
645
+ ```python
646
+ import pulumi
647
+ import pulumi_databricks as databricks
648
+ import pulumi_std as std
649
+
650
+ external = databricks.StorageCredential("external",
651
+ name=ext_cred["displayName"],
652
+ azure_service_principal={
653
+ "directory_id": tenant_id,
654
+ "application_id": ext_cred["applicationId"],
655
+ "client_secret": ext_cred_azuread_application_password["value"],
656
+ },
657
+ comment="Managed by TF",
658
+ opts = pulumi.ResourceOptions(depends_on=[this]))
659
+ some = databricks.ExternalLocation("some",
660
+ name="external",
661
+ url=std.format(input="abfss://%s@%s.dfs.core.windows.net",
662
+ args=[
663
+ ext_storage["name"],
664
+ ext_storage_azurerm_storage_account["name"],
665
+ ]).result,
666
+ credential_name=external.id,
667
+ comment="Managed by TF",
668
+ opts = pulumi.ResourceOptions(depends_on=[this]))
669
+ some_grants = databricks.Grants("some",
670
+ external_location=some.id,
671
+ grants=[{
672
+ "principal": "Data Engineers",
673
+ "privileges": [
674
+ "CREATE_EXTERNAL_TABLE",
675
+ "READ_FILES",
676
+ ],
677
+ }])
678
+ ```
679
+
680
+ For GCP
681
+
682
+ ```python
683
+ import pulumi
684
+ import pulumi_databricks as databricks
685
+
686
+ ext = databricks.StorageCredential("ext",
687
+ name="the-creds",
688
+ databricks_gcp_service_account={})
689
+ some = databricks.ExternalLocation("some",
690
+ name="the-ext-location",
691
+ url=f"gs://{ext_bucket['name']}",
692
+ credential_name=ext.id,
693
+ comment="Managed by TF")
694
+ some_grants = databricks.Grants("some",
695
+ external_location=some.id,
696
+ grants=[{
697
+ "principal": "Data Engineers",
698
+ "privileges": [
699
+ "CREATE_EXTERNAL_TABLE",
700
+ "READ_FILES",
701
+ ],
702
+ }])
703
+ ```
704
+
705
+ Example `encryption_details` specifying SSE_S3 encryption:
706
+
645
707
  ## Import
646
708
 
647
709
  This resource can be imported by `name`:
@@ -677,7 +739,7 @@ class ExternalLocation(pulumi.CustomResource):
677
739
  :param pulumi.Input[_builtins.str] owner: Username/groupname/sp application_id of the external location owner.
678
740
  :param pulumi.Input[_builtins.bool] read_only: Indicates whether the external location is read-only.
679
741
  :param pulumi.Input[_builtins.bool] skip_validation: Suppress validation errors if any & force save the external location
680
- :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
742
+ :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
681
743
  """
682
744
  ...
683
745
  @overload
@@ -725,6 +787,68 @@ class ExternalLocation(pulumi.CustomResource):
725
787
 
726
788
  For Azure
727
789
 
790
+ ```python
791
+ import pulumi
792
+ import pulumi_databricks as databricks
793
+ import pulumi_std as std
794
+
795
+ external = databricks.StorageCredential("external",
796
+ name=ext_cred["displayName"],
797
+ azure_service_principal={
798
+ "directory_id": tenant_id,
799
+ "application_id": ext_cred["applicationId"],
800
+ "client_secret": ext_cred_azuread_application_password["value"],
801
+ },
802
+ comment="Managed by TF",
803
+ opts = pulumi.ResourceOptions(depends_on=[this]))
804
+ some = databricks.ExternalLocation("some",
805
+ name="external",
806
+ url=std.format(input="abfss://%s@%s.dfs.core.windows.net",
807
+ args=[
808
+ ext_storage["name"],
809
+ ext_storage_azurerm_storage_account["name"],
810
+ ]).result,
811
+ credential_name=external.id,
812
+ comment="Managed by TF",
813
+ opts = pulumi.ResourceOptions(depends_on=[this]))
814
+ some_grants = databricks.Grants("some",
815
+ external_location=some.id,
816
+ grants=[{
817
+ "principal": "Data Engineers",
818
+ "privileges": [
819
+ "CREATE_EXTERNAL_TABLE",
820
+ "READ_FILES",
821
+ ],
822
+ }])
823
+ ```
824
+
825
+ For GCP
826
+
827
+ ```python
828
+ import pulumi
829
+ import pulumi_databricks as databricks
830
+
831
+ ext = databricks.StorageCredential("ext",
832
+ name="the-creds",
833
+ databricks_gcp_service_account={})
834
+ some = databricks.ExternalLocation("some",
835
+ name="the-ext-location",
836
+ url=f"gs://{ext_bucket['name']}",
837
+ credential_name=ext.id,
838
+ comment="Managed by TF")
839
+ some_grants = databricks.Grants("some",
840
+ external_location=some.id,
841
+ grants=[{
842
+ "principal": "Data Engineers",
843
+ "privileges": [
844
+ "CREATE_EXTERNAL_TABLE",
845
+ "READ_FILES",
846
+ ],
847
+ }])
848
+ ```
849
+
850
+ Example `encryption_details` specifying SSE_S3 encryption:
851
+
728
852
  ## Import
729
853
 
730
854
  This resource can be imported by `name`:
@@ -865,7 +989,7 @@ class ExternalLocation(pulumi.CustomResource):
865
989
  :param pulumi.Input[_builtins.bool] skip_validation: Suppress validation errors if any & force save the external location
866
990
  :param pulumi.Input[_builtins.int] updated_at: Time at which external location this was last modified, in epoch milliseconds.
867
991
  :param pulumi.Input[_builtins.str] updated_by: Username of user who last modified the external location.
868
- :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
992
+ :param pulumi.Input[_builtins.str] url: Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
869
993
  """
870
994
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
871
995
 
@@ -1046,7 +1170,7 @@ class ExternalLocation(pulumi.CustomResource):
1046
1170
  @pulumi.getter
1047
1171
  def url(self) -> pulumi.Output[_builtins.str]:
1048
1172
  """
1049
- Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP).
1173
+ Path URL in cloud storage, of the form: `s3://[bucket-host]/[bucket-dir]` (AWS), `abfss://[user]@[host]/[path]` (Azure), `gs://[bucket-host]/[bucket-dir]` (GCP). If the URL contains special characters, such as space, `&`, etc., they should be percent-encoded (space > `%20`, etc.).
1050
1174
  """
1051
1175
  return pulumi.get(self, "url")
1052
1176