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
@@ -21,6 +21,7 @@ class GitCredentialArgs:
21
21
  def __init__(__self__, *,
22
22
  git_provider: pulumi.Input[_builtins.str],
23
23
  force: Optional[pulumi.Input[_builtins.bool]] = None,
24
+ git_email: Optional[pulumi.Input[_builtins.str]] = None,
24
25
  git_username: Optional[pulumi.Input[_builtins.str]] = None,
25
26
  is_default_for_provider: Optional[pulumi.Input[_builtins.bool]] = None,
26
27
  name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -29,7 +30,8 @@ class GitCredentialArgs:
29
30
  The set of arguments for constructing a GitCredential resource.
30
31
  :param pulumi.Input[_builtins.str] git_provider: case insensitive name of the Git provider. Following values are supported right now (could be a subject for a change, consult [Git Credentials API documentation](https://docs.databricks.com/dev-tools/api/latest/gitcredentials.html)): `gitHub`, `gitHubEnterprise`, `bitbucketCloud`, `bitbucketServer`, `azureDevOpsServices`, `gitLab`, `gitLabEnterpriseEdition`, `awsCodeCommit`, `azureDevOpsServicesAad`.
31
32
  :param pulumi.Input[_builtins.bool] force: specify if settings need to be enforced (i.e., to overwrite previously set credential for service principals).
32
- :param pulumi.Input[_builtins.str] git_username: user name at Git provider.
33
+ :param pulumi.Input[_builtins.str] git_email: The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
34
+ :param pulumi.Input[_builtins.str] git_username: user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
33
35
  :param pulumi.Input[_builtins.bool] is_default_for_provider: boolean flag specifying if the credential is the default for the given provider type.
34
36
  :param pulumi.Input[_builtins.str] name: the name of the git credential, used for identification and ease of lookup.
35
37
  :param pulumi.Input[_builtins.str] personal_access_token: The personal access token used to authenticate to the corresponding Git provider. If value is not provided, it's sourced from the first environment variable of `GITHUB_TOKEN`, `GITLAB_TOKEN`, or `AZDO_PERSONAL_ACCESS_TOKEN`, that has a non-empty value.
@@ -37,6 +39,8 @@ class GitCredentialArgs:
37
39
  pulumi.set(__self__, "git_provider", git_provider)
38
40
  if force is not None:
39
41
  pulumi.set(__self__, "force", force)
42
+ if git_email is not None:
43
+ pulumi.set(__self__, "git_email", git_email)
40
44
  if git_username is not None:
41
45
  pulumi.set(__self__, "git_username", git_username)
42
46
  if is_default_for_provider is not None:
@@ -70,11 +74,23 @@ class GitCredentialArgs:
70
74
  def force(self, value: Optional[pulumi.Input[_builtins.bool]]):
71
75
  pulumi.set(self, "force", value)
72
76
 
77
+ @_builtins.property
78
+ @pulumi.getter(name="gitEmail")
79
+ def git_email(self) -> Optional[pulumi.Input[_builtins.str]]:
80
+ """
81
+ The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
82
+ """
83
+ return pulumi.get(self, "git_email")
84
+
85
+ @git_email.setter
86
+ def git_email(self, value: Optional[pulumi.Input[_builtins.str]]):
87
+ pulumi.set(self, "git_email", value)
88
+
73
89
  @_builtins.property
74
90
  @pulumi.getter(name="gitUsername")
75
91
  def git_username(self) -> Optional[pulumi.Input[_builtins.str]]:
76
92
  """
77
- user name at Git provider.
93
+ user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
78
94
  """
79
95
  return pulumi.get(self, "git_username")
80
96
 
@@ -123,6 +139,7 @@ class GitCredentialArgs:
123
139
  class _GitCredentialState:
124
140
  def __init__(__self__, *,
125
141
  force: Optional[pulumi.Input[_builtins.bool]] = None,
142
+ git_email: Optional[pulumi.Input[_builtins.str]] = None,
126
143
  git_provider: Optional[pulumi.Input[_builtins.str]] = None,
127
144
  git_username: Optional[pulumi.Input[_builtins.str]] = None,
128
145
  is_default_for_provider: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -131,14 +148,17 @@ class _GitCredentialState:
131
148
  """
132
149
  Input properties used for looking up and filtering GitCredential resources.
133
150
  :param pulumi.Input[_builtins.bool] force: specify if settings need to be enforced (i.e., to overwrite previously set credential for service principals).
151
+ :param pulumi.Input[_builtins.str] git_email: The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
134
152
  :param pulumi.Input[_builtins.str] git_provider: case insensitive name of the Git provider. Following values are supported right now (could be a subject for a change, consult [Git Credentials API documentation](https://docs.databricks.com/dev-tools/api/latest/gitcredentials.html)): `gitHub`, `gitHubEnterprise`, `bitbucketCloud`, `bitbucketServer`, `azureDevOpsServices`, `gitLab`, `gitLabEnterpriseEdition`, `awsCodeCommit`, `azureDevOpsServicesAad`.
135
- :param pulumi.Input[_builtins.str] git_username: user name at Git provider.
153
+ :param pulumi.Input[_builtins.str] git_username: user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
136
154
  :param pulumi.Input[_builtins.bool] is_default_for_provider: boolean flag specifying if the credential is the default for the given provider type.
137
155
  :param pulumi.Input[_builtins.str] name: the name of the git credential, used for identification and ease of lookup.
138
156
  :param pulumi.Input[_builtins.str] personal_access_token: The personal access token used to authenticate to the corresponding Git provider. If value is not provided, it's sourced from the first environment variable of `GITHUB_TOKEN`, `GITLAB_TOKEN`, or `AZDO_PERSONAL_ACCESS_TOKEN`, that has a non-empty value.
139
157
  """
140
158
  if force is not None:
141
159
  pulumi.set(__self__, "force", force)
160
+ if git_email is not None:
161
+ pulumi.set(__self__, "git_email", git_email)
142
162
  if git_provider is not None:
143
163
  pulumi.set(__self__, "git_provider", git_provider)
144
164
  if git_username is not None:
@@ -162,6 +182,18 @@ class _GitCredentialState:
162
182
  def force(self, value: Optional[pulumi.Input[_builtins.bool]]):
163
183
  pulumi.set(self, "force", value)
164
184
 
185
+ @_builtins.property
186
+ @pulumi.getter(name="gitEmail")
187
+ def git_email(self) -> Optional[pulumi.Input[_builtins.str]]:
188
+ """
189
+ The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
190
+ """
191
+ return pulumi.get(self, "git_email")
192
+
193
+ @git_email.setter
194
+ def git_email(self, value: Optional[pulumi.Input[_builtins.str]]):
195
+ pulumi.set(self, "git_email", value)
196
+
165
197
  @_builtins.property
166
198
  @pulumi.getter(name="gitProvider")
167
199
  def git_provider(self) -> Optional[pulumi.Input[_builtins.str]]:
@@ -178,7 +210,7 @@ class _GitCredentialState:
178
210
  @pulumi.getter(name="gitUsername")
179
211
  def git_username(self) -> Optional[pulumi.Input[_builtins.str]]:
180
212
  """
181
- user name at Git provider.
213
+ user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
182
214
  """
183
215
  return pulumi.get(self, "git_username")
184
216
 
@@ -230,6 +262,7 @@ class GitCredential(pulumi.CustomResource):
230
262
  resource_name: str,
231
263
  opts: Optional[pulumi.ResourceOptions] = None,
232
264
  force: Optional[pulumi.Input[_builtins.bool]] = None,
265
+ git_email: Optional[pulumi.Input[_builtins.str]] = None,
233
266
  git_provider: Optional[pulumi.Input[_builtins.str]] = None,
234
267
  git_username: Optional[pulumi.Input[_builtins.str]] = None,
235
268
  is_default_for_provider: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -299,8 +332,9 @@ class GitCredential(pulumi.CustomResource):
299
332
  :param str resource_name: The name of the resource.
300
333
  :param pulumi.ResourceOptions opts: Options for the resource.
301
334
  :param pulumi.Input[_builtins.bool] force: specify if settings need to be enforced (i.e., to overwrite previously set credential for service principals).
335
+ :param pulumi.Input[_builtins.str] git_email: The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
302
336
  :param pulumi.Input[_builtins.str] git_provider: case insensitive name of the Git provider. Following values are supported right now (could be a subject for a change, consult [Git Credentials API documentation](https://docs.databricks.com/dev-tools/api/latest/gitcredentials.html)): `gitHub`, `gitHubEnterprise`, `bitbucketCloud`, `bitbucketServer`, `azureDevOpsServices`, `gitLab`, `gitLabEnterpriseEdition`, `awsCodeCommit`, `azureDevOpsServicesAad`.
303
- :param pulumi.Input[_builtins.str] git_username: user name at Git provider.
337
+ :param pulumi.Input[_builtins.str] git_username: user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
304
338
  :param pulumi.Input[_builtins.bool] is_default_for_provider: boolean flag specifying if the credential is the default for the given provider type.
305
339
  :param pulumi.Input[_builtins.str] name: the name of the git credential, used for identification and ease of lookup.
306
340
  :param pulumi.Input[_builtins.str] personal_access_token: The personal access token used to authenticate to the corresponding Git provider. If value is not provided, it's sourced from the first environment variable of `GITHUB_TOKEN`, `GITLAB_TOKEN`, or `AZDO_PERSONAL_ACCESS_TOKEN`, that has a non-empty value.
@@ -387,6 +421,7 @@ class GitCredential(pulumi.CustomResource):
387
421
  resource_name: str,
388
422
  opts: Optional[pulumi.ResourceOptions] = None,
389
423
  force: Optional[pulumi.Input[_builtins.bool]] = None,
424
+ git_email: Optional[pulumi.Input[_builtins.str]] = None,
390
425
  git_provider: Optional[pulumi.Input[_builtins.str]] = None,
391
426
  git_username: Optional[pulumi.Input[_builtins.str]] = None,
392
427
  is_default_for_provider: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -402,6 +437,7 @@ class GitCredential(pulumi.CustomResource):
402
437
  __props__ = GitCredentialArgs.__new__(GitCredentialArgs)
403
438
 
404
439
  __props__.__dict__["force"] = force
440
+ __props__.__dict__["git_email"] = git_email
405
441
  if git_provider is None and not opts.urn:
406
442
  raise TypeError("Missing required property 'git_provider'")
407
443
  __props__.__dict__["git_provider"] = git_provider
@@ -420,6 +456,7 @@ class GitCredential(pulumi.CustomResource):
420
456
  id: pulumi.Input[str],
421
457
  opts: Optional[pulumi.ResourceOptions] = None,
422
458
  force: Optional[pulumi.Input[_builtins.bool]] = None,
459
+ git_email: Optional[pulumi.Input[_builtins.str]] = None,
423
460
  git_provider: Optional[pulumi.Input[_builtins.str]] = None,
424
461
  git_username: Optional[pulumi.Input[_builtins.str]] = None,
425
462
  is_default_for_provider: Optional[pulumi.Input[_builtins.bool]] = None,
@@ -433,8 +470,9 @@ class GitCredential(pulumi.CustomResource):
433
470
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
434
471
  :param pulumi.ResourceOptions opts: Options for the resource.
435
472
  :param pulumi.Input[_builtins.bool] force: specify if settings need to be enforced (i.e., to overwrite previously set credential for service principals).
473
+ :param pulumi.Input[_builtins.str] git_email: The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
436
474
  :param pulumi.Input[_builtins.str] git_provider: case insensitive name of the Git provider. Following values are supported right now (could be a subject for a change, consult [Git Credentials API documentation](https://docs.databricks.com/dev-tools/api/latest/gitcredentials.html)): `gitHub`, `gitHubEnterprise`, `bitbucketCloud`, `bitbucketServer`, `azureDevOpsServices`, `gitLab`, `gitLabEnterpriseEdition`, `awsCodeCommit`, `azureDevOpsServicesAad`.
437
- :param pulumi.Input[_builtins.str] git_username: user name at Git provider.
475
+ :param pulumi.Input[_builtins.str] git_username: user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
438
476
  :param pulumi.Input[_builtins.bool] is_default_for_provider: boolean flag specifying if the credential is the default for the given provider type.
439
477
  :param pulumi.Input[_builtins.str] name: the name of the git credential, used for identification and ease of lookup.
440
478
  :param pulumi.Input[_builtins.str] personal_access_token: The personal access token used to authenticate to the corresponding Git provider. If value is not provided, it's sourced from the first environment variable of `GITHUB_TOKEN`, `GITLAB_TOKEN`, or `AZDO_PERSONAL_ACCESS_TOKEN`, that has a non-empty value.
@@ -444,6 +482,7 @@ class GitCredential(pulumi.CustomResource):
444
482
  __props__ = _GitCredentialState.__new__(_GitCredentialState)
445
483
 
446
484
  __props__.__dict__["force"] = force
485
+ __props__.__dict__["git_email"] = git_email
447
486
  __props__.__dict__["git_provider"] = git_provider
448
487
  __props__.__dict__["git_username"] = git_username
449
488
  __props__.__dict__["is_default_for_provider"] = is_default_for_provider
@@ -459,6 +498,14 @@ class GitCredential(pulumi.CustomResource):
459
498
  """
460
499
  return pulumi.get(self, "force")
461
500
 
501
+ @_builtins.property
502
+ @pulumi.getter(name="gitEmail")
503
+ def git_email(self) -> pulumi.Output[Optional[_builtins.str]]:
504
+ """
505
+ The email associated with your Git provider user account. Used for authentication with the remote repository and also sets the author & committer identity for commits.
506
+ """
507
+ return pulumi.get(self, "git_email")
508
+
462
509
  @_builtins.property
463
510
  @pulumi.getter(name="gitProvider")
464
511
  def git_provider(self) -> pulumi.Output[_builtins.str]:
@@ -471,7 +518,7 @@ class GitCredential(pulumi.CustomResource):
471
518
  @pulumi.getter(name="gitUsername")
472
519
  def git_username(self) -> pulumi.Output[Optional[_builtins.str]]:
473
520
  """
474
- user name at Git provider.
521
+ user name at Git provider. For most Git providers it is only used to set the Git committer & author names for commits, however it may be required for authentication depending on your Git provider / token requirements.
475
522
  """
476
523
  return pulumi.get(self, "git_username")
477
524
 
@@ -34,12 +34,12 @@ class GroupArgs:
34
34
  :param pulumi.Input[_builtins.str] acl_principal_id: identifier for use in databricks_access_control_rule_set, e.g. `groups/Some Group`.
35
35
  :param pulumi.Input[_builtins.bool] allow_cluster_create: This is a field to allow the group to have cluster create privileges. More fine grained permissions could be assigned with Permissions and cluster_id argument. Everyone without `allow_cluster_create` argument set, but with permission to use Cluster Policy would be able to create clusters, but within boundaries of that specific policy.
36
36
  :param pulumi.Input[_builtins.bool] allow_instance_pool_create: This is a field to allow the group to have instance pool create privileges. More fine grained permissions could be assigned with Permissions and instance_pool_id argument.
37
- :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
37
+ :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
38
38
  :param pulumi.Input[_builtins.str] display_name: This is the display name for the given group.
39
39
  :param pulumi.Input[_builtins.str] external_id: ID of the group in an external identity provider.
40
40
  :param pulumi.Input[_builtins.bool] force: Ignore `cannot create group: Group with name X already exists.` errors and implicitly import the specific group into Pulumi state, enforcing entitlements defined in the instance of resource. _This functionality is experimental_ and is designed to simplify corner cases, like Azure Active Directory synchronisation.
41
- :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace.
42
- :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
41
+ :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
42
+ :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
43
43
  """
44
44
  if acl_principal_id is not None:
45
45
  pulumi.set(__self__, "acl_principal_id", acl_principal_id)
@@ -102,7 +102,7 @@ class GroupArgs:
102
102
  @pulumi.getter(name="databricksSqlAccess")
103
103
  def databricks_sql_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
104
104
  """
105
- This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
105
+ This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
106
106
  """
107
107
  return pulumi.get(self, "databricks_sql_access")
108
108
 
@@ -159,7 +159,7 @@ class GroupArgs:
159
159
  @pulumi.getter(name="workspaceAccess")
160
160
  def workspace_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
161
161
  """
162
- This is a field to allow the group to have access to a Databricks Workspace.
162
+ This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
163
163
  """
164
164
  return pulumi.get(self, "workspace_access")
165
165
 
@@ -171,7 +171,7 @@ class GroupArgs:
171
171
  @pulumi.getter(name="workspaceConsume")
172
172
  def workspace_consume(self) -> Optional[pulumi.Input[_builtins.bool]]:
173
173
  """
174
- This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
174
+ This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
175
175
  """
176
176
  return pulumi.get(self, "workspace_consume")
177
177
 
@@ -198,12 +198,12 @@ class _GroupState:
198
198
  :param pulumi.Input[_builtins.str] acl_principal_id: identifier for use in databricks_access_control_rule_set, e.g. `groups/Some Group`.
199
199
  :param pulumi.Input[_builtins.bool] allow_cluster_create: This is a field to allow the group to have cluster create privileges. More fine grained permissions could be assigned with Permissions and cluster_id argument. Everyone without `allow_cluster_create` argument set, but with permission to use Cluster Policy would be able to create clusters, but within boundaries of that specific policy.
200
200
  :param pulumi.Input[_builtins.bool] allow_instance_pool_create: This is a field to allow the group to have instance pool create privileges. More fine grained permissions could be assigned with Permissions and instance_pool_id argument.
201
- :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
201
+ :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
202
202
  :param pulumi.Input[_builtins.str] display_name: This is the display name for the given group.
203
203
  :param pulumi.Input[_builtins.str] external_id: ID of the group in an external identity provider.
204
204
  :param pulumi.Input[_builtins.bool] force: Ignore `cannot create group: Group with name X already exists.` errors and implicitly import the specific group into Pulumi state, enforcing entitlements defined in the instance of resource. _This functionality is experimental_ and is designed to simplify corner cases, like Azure Active Directory synchronisation.
205
- :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace.
206
- :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
205
+ :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
206
+ :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
207
207
  """
208
208
  if acl_principal_id is not None:
209
209
  pulumi.set(__self__, "acl_principal_id", acl_principal_id)
@@ -266,7 +266,7 @@ class _GroupState:
266
266
  @pulumi.getter(name="databricksSqlAccess")
267
267
  def databricks_sql_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
268
268
  """
269
- This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
269
+ This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
270
270
  """
271
271
  return pulumi.get(self, "databricks_sql_access")
272
272
 
@@ -323,7 +323,7 @@ class _GroupState:
323
323
  @pulumi.getter(name="workspaceAccess")
324
324
  def workspace_access(self) -> Optional[pulumi.Input[_builtins.bool]]:
325
325
  """
326
- This is a field to allow the group to have access to a Databricks Workspace.
326
+ This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
327
327
  """
328
328
  return pulumi.get(self, "workspace_access")
329
329
 
@@ -335,7 +335,7 @@ class _GroupState:
335
335
  @pulumi.getter(name="workspaceConsume")
336
336
  def workspace_consume(self) -> Optional[pulumi.Input[_builtins.bool]]:
337
337
  """
338
- This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
338
+ This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
339
339
  """
340
340
  return pulumi.get(self, "workspace_consume")
341
341
 
@@ -453,12 +453,12 @@ class Group(pulumi.CustomResource):
453
453
  :param pulumi.Input[_builtins.str] acl_principal_id: identifier for use in databricks_access_control_rule_set, e.g. `groups/Some Group`.
454
454
  :param pulumi.Input[_builtins.bool] allow_cluster_create: This is a field to allow the group to have cluster create privileges. More fine grained permissions could be assigned with Permissions and cluster_id argument. Everyone without `allow_cluster_create` argument set, but with permission to use Cluster Policy would be able to create clusters, but within boundaries of that specific policy.
455
455
  :param pulumi.Input[_builtins.bool] allow_instance_pool_create: This is a field to allow the group to have instance pool create privileges. More fine grained permissions could be assigned with Permissions and instance_pool_id argument.
456
- :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
456
+ :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
457
457
  :param pulumi.Input[_builtins.str] display_name: This is the display name for the given group.
458
458
  :param pulumi.Input[_builtins.str] external_id: ID of the group in an external identity provider.
459
459
  :param pulumi.Input[_builtins.bool] force: Ignore `cannot create group: Group with name X already exists.` errors and implicitly import the specific group into Pulumi state, enforcing entitlements defined in the instance of resource. _This functionality is experimental_ and is designed to simplify corner cases, like Azure Active Directory synchronisation.
460
- :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace.
461
- :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
460
+ :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
461
+ :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
462
462
  """
463
463
  ...
464
464
  @overload
@@ -627,12 +627,12 @@ class Group(pulumi.CustomResource):
627
627
  :param pulumi.Input[_builtins.str] acl_principal_id: identifier for use in databricks_access_control_rule_set, e.g. `groups/Some Group`.
628
628
  :param pulumi.Input[_builtins.bool] allow_cluster_create: This is a field to allow the group to have cluster create privileges. More fine grained permissions could be assigned with Permissions and cluster_id argument. Everyone without `allow_cluster_create` argument set, but with permission to use Cluster Policy would be able to create clusters, but within boundaries of that specific policy.
629
629
  :param pulumi.Input[_builtins.bool] allow_instance_pool_create: This is a field to allow the group to have instance pool create privileges. More fine grained permissions could be assigned with Permissions and instance_pool_id argument.
630
- :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
630
+ :param pulumi.Input[_builtins.bool] databricks_sql_access: This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
631
631
  :param pulumi.Input[_builtins.str] display_name: This is the display name for the given group.
632
632
  :param pulumi.Input[_builtins.str] external_id: ID of the group in an external identity provider.
633
633
  :param pulumi.Input[_builtins.bool] force: Ignore `cannot create group: Group with name X already exists.` errors and implicitly import the specific group into Pulumi state, enforcing entitlements defined in the instance of resource. _This functionality is experimental_ and is designed to simplify corner cases, like Azure Active Directory synchronisation.
634
- :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace.
635
- :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
634
+ :param pulumi.Input[_builtins.bool] workspace_access: This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
635
+ :param pulumi.Input[_builtins.bool] workspace_consume: This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
636
636
  """
637
637
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
638
638
 
@@ -678,7 +678,7 @@ class Group(pulumi.CustomResource):
678
678
  @pulumi.getter(name="databricksSqlAccess")
679
679
  def databricks_sql_access(self) -> pulumi.Output[Optional[_builtins.bool]]:
680
680
  """
681
- This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) feature in User Interface and through databricks_sql_endpoint.
681
+ This is a field to allow the group to have access to [Databricks SQL](https://databricks.com/product/databricks-sql) UI, [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one) and through databricks_sql_endpoint.
682
682
  """
683
683
  return pulumi.get(self, "databricks_sql_access")
684
684
 
@@ -715,7 +715,7 @@ class Group(pulumi.CustomResource):
715
715
  @pulumi.getter(name="workspaceAccess")
716
716
  def workspace_access(self) -> pulumi.Output[Optional[_builtins.bool]]:
717
717
  """
718
- This is a field to allow the group to have access to a Databricks Workspace.
718
+ This is a field to allow the group to have access to a Databricks Workspace UI and [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one).
719
719
  """
720
720
  return pulumi.get(self, "workspace_access")
721
721
 
@@ -723,7 +723,7 @@ class Group(pulumi.CustomResource):
723
723
  @pulumi.getter(name="workspaceConsume")
724
724
  def workspace_consume(self) -> pulumi.Output[Optional[_builtins.bool]]:
725
725
  """
726
- This is a field to allow the group to have access to a Databricks Workspace as consumer, with limited access to workspace UI. Couldn't be used with `workspace_access` or `databricks_sql_access`.
726
+ This is a field to allow the group to have access only to [Databricks One](https://docs.databricks.com/aws/en/workspace/databricks-one#who-can-access-databricks-one). Couldn't be used with `workspace_access` or `databricks_sql_access`.
727
727
  """
728
728
  return pulumi.get(self, "workspace_consume")
729
729
 
@@ -177,62 +177,6 @@ class InstanceProfile(pulumi.CustomResource):
177
177
 
178
178
  > Please switch to StorageCredential with Unity Catalog to manage storage credentials, which provides a better and faster way for managing credential security.
179
179
 
180
- ```python
181
- import pulumi
182
- import pulumi_aws as aws
183
- import pulumi_databricks as databricks
184
-
185
- config = pulumi.Config()
186
- # Role that you've specified on https://accounts.cloud.databricks.com/#aws
187
- crossaccount_role_name = config.require("crossaccountRoleName")
188
- assume_role_for_ec2 = aws.iam.get_policy_document(statements=[{
189
- "effect": "Allow",
190
- "actions": ["sts:AssumeRole"],
191
- "principals": [{
192
- "identifiers": ["ec2.amazonaws.com"],
193
- "type": "Service",
194
- }],
195
- }])
196
- role_for_s3_access = aws.iam.Role("role_for_s3_access",
197
- name="shared-ec2-role-for-s3",
198
- description="Role for shared access",
199
- assume_role_policy=assume_role_for_ec2.json)
200
- pass_role_for_s3_access = aws.iam.get_policy_document_output(statements=[{
201
- "effect": "Allow",
202
- "actions": ["iam:PassRole"],
203
- "resources": [role_for_s3_access.arn],
204
- }])
205
- pass_role_for_s3_access_policy = aws.iam.Policy("pass_role_for_s3_access",
206
- name="shared-pass-role-for-s3-access",
207
- path="/",
208
- policy=pass_role_for_s3_access.json)
209
- cross_account = aws.iam.RolePolicyAttachment("cross_account",
210
- policy_arn=pass_role_for_s3_access_policy.arn,
211
- role=crossaccount_role_name)
212
- shared = aws.iam.InstanceProfile("shared",
213
- name="shared-instance-profile",
214
- role=role_for_s3_access.name)
215
- shared_instance_profile = databricks.InstanceProfile("shared", instance_profile_arn=shared.arn)
216
- latest = databricks.get_spark_version()
217
- smallest = databricks.get_node_type(local_disk=True)
218
- this = databricks.Cluster("this",
219
- cluster_name="Shared Autoscaling",
220
- spark_version=latest.id,
221
- node_type_id=smallest.id,
222
- autotermination_minutes=20,
223
- autoscale={
224
- "min_workers": 1,
225
- "max_workers": 50,
226
- },
227
- aws_attributes={
228
- "instance_profile_arn": shared_instance_profile.id,
229
- "availability": "SPOT",
230
- "zone_id": "us-east-1",
231
- "first_on_demand": 1,
232
- "spot_bid_price_percent": 100,
233
- })
234
- ```
235
-
236
180
  ## Usage with Cluster Policies
237
181
 
238
182
  It is advised to keep all common configurations in Cluster Policies to maintain control of the environments launched, so `Cluster` above could be replaced with `ClusterPolicy`:
@@ -267,41 +211,6 @@ class InstanceProfile(pulumi.CustomResource):
267
211
  instance_profile_id=this.id)
268
212
  ```
269
213
 
270
- ## Usage with Databricks SQL serverless
271
-
272
- When the instance profile ARN and its associated IAM role ARN don't match and the instance profile is intended for use with Databricks SQL serverless, the `iam_role_arn` parameter can be specified.
273
-
274
- ```python
275
- import pulumi
276
- import pulumi_aws as aws
277
- import pulumi_databricks as databricks
278
-
279
- sql_serverless_assume_role = aws.iam.get_policy_document(statements=[{
280
- "actions": ["sts:AssumeRole"],
281
- "principals": [{
282
- "type": "AWS",
283
- "identifiers": ["arn:aws:iam::790110701330:role/serverless-customer-resource-role"],
284
- }],
285
- "conditions": [{
286
- "test": "StringEquals",
287
- "variable": "sts:ExternalID",
288
- "values": [
289
- "databricks-serverless-<YOUR_WORKSPACE_ID1>",
290
- "databricks-serverless-<YOUR_WORKSPACE_ID2>",
291
- ],
292
- }],
293
- }])
294
- this = aws.iam.Role("this",
295
- name="my-databricks-sql-serverless-role",
296
- assume_role_policy=sql_serverless_assume_role.json)
297
- this_instance_profile = aws.iam.InstanceProfile("this",
298
- name="my-databricks-sql-serverless-instance-profile",
299
- role=this.name)
300
- this_instance_profile2 = databricks.InstanceProfile("this",
301
- instance_profile_arn=this_instance_profile.arn,
302
- iam_role_arn=this.arn)
303
- ```
304
-
305
214
  ## Import
306
215
 
307
216
  The resource instance profile can be imported using the ARN of it
@@ -344,62 +253,6 @@ class InstanceProfile(pulumi.CustomResource):
344
253
 
345
254
  > Please switch to StorageCredential with Unity Catalog to manage storage credentials, which provides a better and faster way for managing credential security.
346
255
 
347
- ```python
348
- import pulumi
349
- import pulumi_aws as aws
350
- import pulumi_databricks as databricks
351
-
352
- config = pulumi.Config()
353
- # Role that you've specified on https://accounts.cloud.databricks.com/#aws
354
- crossaccount_role_name = config.require("crossaccountRoleName")
355
- assume_role_for_ec2 = aws.iam.get_policy_document(statements=[{
356
- "effect": "Allow",
357
- "actions": ["sts:AssumeRole"],
358
- "principals": [{
359
- "identifiers": ["ec2.amazonaws.com"],
360
- "type": "Service",
361
- }],
362
- }])
363
- role_for_s3_access = aws.iam.Role("role_for_s3_access",
364
- name="shared-ec2-role-for-s3",
365
- description="Role for shared access",
366
- assume_role_policy=assume_role_for_ec2.json)
367
- pass_role_for_s3_access = aws.iam.get_policy_document_output(statements=[{
368
- "effect": "Allow",
369
- "actions": ["iam:PassRole"],
370
- "resources": [role_for_s3_access.arn],
371
- }])
372
- pass_role_for_s3_access_policy = aws.iam.Policy("pass_role_for_s3_access",
373
- name="shared-pass-role-for-s3-access",
374
- path="/",
375
- policy=pass_role_for_s3_access.json)
376
- cross_account = aws.iam.RolePolicyAttachment("cross_account",
377
- policy_arn=pass_role_for_s3_access_policy.arn,
378
- role=crossaccount_role_name)
379
- shared = aws.iam.InstanceProfile("shared",
380
- name="shared-instance-profile",
381
- role=role_for_s3_access.name)
382
- shared_instance_profile = databricks.InstanceProfile("shared", instance_profile_arn=shared.arn)
383
- latest = databricks.get_spark_version()
384
- smallest = databricks.get_node_type(local_disk=True)
385
- this = databricks.Cluster("this",
386
- cluster_name="Shared Autoscaling",
387
- spark_version=latest.id,
388
- node_type_id=smallest.id,
389
- autotermination_minutes=20,
390
- autoscale={
391
- "min_workers": 1,
392
- "max_workers": 50,
393
- },
394
- aws_attributes={
395
- "instance_profile_arn": shared_instance_profile.id,
396
- "availability": "SPOT",
397
- "zone_id": "us-east-1",
398
- "first_on_demand": 1,
399
- "spot_bid_price_percent": 100,
400
- })
401
- ```
402
-
403
256
  ## Usage with Cluster Policies
404
257
 
405
258
  It is advised to keep all common configurations in Cluster Policies to maintain control of the environments launched, so `Cluster` above could be replaced with `ClusterPolicy`:
@@ -434,41 +287,6 @@ class InstanceProfile(pulumi.CustomResource):
434
287
  instance_profile_id=this.id)
435
288
  ```
436
289
 
437
- ## Usage with Databricks SQL serverless
438
-
439
- When the instance profile ARN and its associated IAM role ARN don't match and the instance profile is intended for use with Databricks SQL serverless, the `iam_role_arn` parameter can be specified.
440
-
441
- ```python
442
- import pulumi
443
- import pulumi_aws as aws
444
- import pulumi_databricks as databricks
445
-
446
- sql_serverless_assume_role = aws.iam.get_policy_document(statements=[{
447
- "actions": ["sts:AssumeRole"],
448
- "principals": [{
449
- "type": "AWS",
450
- "identifiers": ["arn:aws:iam::790110701330:role/serverless-customer-resource-role"],
451
- }],
452
- "conditions": [{
453
- "test": "StringEquals",
454
- "variable": "sts:ExternalID",
455
- "values": [
456
- "databricks-serverless-<YOUR_WORKSPACE_ID1>",
457
- "databricks-serverless-<YOUR_WORKSPACE_ID2>",
458
- ],
459
- }],
460
- }])
461
- this = aws.iam.Role("this",
462
- name="my-databricks-sql-serverless-role",
463
- assume_role_policy=sql_serverless_assume_role.json)
464
- this_instance_profile = aws.iam.InstanceProfile("this",
465
- name="my-databricks-sql-serverless-instance-profile",
466
- role=this.name)
467
- this_instance_profile2 = databricks.InstanceProfile("this",
468
- instance_profile_arn=this_instance_profile.arn,
469
- iam_role_arn=this.arn)
470
- ```
471
-
472
290
  ## Import
473
291
 
474
292
  The resource instance profile can be imported using the ARN of it