pulumi-databricks 1.78.0a1762407761__py3-none-any.whl → 1.79.0__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 (86) hide show
  1. pulumi_databricks/__init__.py +23 -0
  2. pulumi_databricks/_inputs.py +1630 -181
  3. pulumi_databricks/access_control_rule_set.py +81 -0
  4. pulumi_databricks/account_federation_policy.py +24 -0
  5. pulumi_databricks/account_network_policy.py +50 -0
  6. pulumi_databricks/account_setting_v2.py +181 -12
  7. pulumi_databricks/alert_v2.py +74 -2
  8. pulumi_databricks/app.py +71 -7
  9. pulumi_databricks/apps_settings_custom_template.py +102 -0
  10. pulumi_databricks/catalog.py +8 -8
  11. pulumi_databricks/cluster_policy.py +120 -0
  12. pulumi_databricks/config/__init__.pyi +4 -0
  13. pulumi_databricks/config/vars.py +8 -0
  14. pulumi_databricks/credential.py +7 -7
  15. pulumi_databricks/dashboard.py +94 -0
  16. pulumi_databricks/data_quality_monitor.py +2 -2
  17. pulumi_databricks/data_quality_refresh.py +78 -2
  18. pulumi_databricks/database_synced_database_table.py +212 -0
  19. pulumi_databricks/external_location.py +131 -7
  20. pulumi_databricks/feature_engineering_feature.py +52 -19
  21. pulumi_databricks/feature_engineering_kafka_config.py +463 -0
  22. pulumi_databricks/feature_engineering_materialized_feature.py +47 -0
  23. pulumi_databricks/file.py +2 -2
  24. pulumi_databricks/get_account_setting_v2.py +16 -16
  25. pulumi_databricks/get_alert_v2.py +2 -2
  26. pulumi_databricks/get_alerts_v2.py +2 -2
  27. pulumi_databricks/get_aws_assume_role_policy.py +14 -14
  28. pulumi_databricks/get_aws_bucket_policy.py +10 -10
  29. pulumi_databricks/get_aws_unity_catalog_assume_role_policy.py +10 -10
  30. pulumi_databricks/get_aws_unity_catalog_policy.py +10 -10
  31. pulumi_databricks/get_cluster.py +54 -0
  32. pulumi_databricks/get_current_config.py +4 -4
  33. pulumi_databricks/get_dashboards.py +32 -0
  34. pulumi_databricks/get_data_quality_monitor.py +2 -2
  35. pulumi_databricks/get_data_quality_monitors.py +2 -2
  36. pulumi_databricks/get_data_quality_refresh.py +2 -2
  37. pulumi_databricks/get_data_quality_refreshes.py +2 -2
  38. pulumi_databricks/get_feature_engineering_feature.py +12 -1
  39. pulumi_databricks/get_feature_engineering_kafka_config.py +182 -0
  40. pulumi_databricks/get_feature_engineering_kafka_configs.py +103 -0
  41. pulumi_databricks/get_feature_engineering_materialized_feature.py +16 -2
  42. pulumi_databricks/get_metastore.py +6 -6
  43. pulumi_databricks/get_notebook.py +20 -1
  44. pulumi_databricks/get_policy_info.py +36 -2
  45. pulumi_databricks/get_policy_infos.py +34 -2
  46. pulumi_databricks/get_service_principals.py +93 -7
  47. pulumi_databricks/get_spark_version.py +2 -2
  48. pulumi_databricks/get_tag_policies.py +2 -2
  49. pulumi_databricks/get_tag_policy.py +2 -2
  50. pulumi_databricks/get_users.py +194 -0
  51. pulumi_databricks/get_workspace_entity_tag_assignment.py +180 -0
  52. pulumi_databricks/get_workspace_entity_tag_assignments.py +171 -0
  53. pulumi_databricks/get_workspace_setting_v2.py +16 -16
  54. pulumi_databricks/instance_profile.py +0 -182
  55. pulumi_databricks/lakehouse_monitor.py +2 -2
  56. pulumi_databricks/metastore.py +81 -7
  57. pulumi_databricks/metastore_data_access.py +48 -0
  58. pulumi_databricks/mlflow_webhook.py +4 -4
  59. pulumi_databricks/mws_credentials.py +10 -10
  60. pulumi_databricks/mws_customer_managed_keys.py +0 -288
  61. pulumi_databricks/mws_log_delivery.py +146 -0
  62. pulumi_databricks/mws_storage_configurations.py +16 -16
  63. pulumi_databricks/mws_vpc_endpoint.py +56 -56
  64. pulumi_databricks/mws_workspaces.py +115 -55
  65. pulumi_databricks/notebook.py +49 -0
  66. pulumi_databricks/outputs.py +2017 -240
  67. pulumi_databricks/permission_assignment.py +49 -0
  68. pulumi_databricks/permissions.py +6 -6
  69. pulumi_databricks/pipeline.py +7 -7
  70. pulumi_databricks/policy_info.py +122 -2
  71. pulumi_databricks/provider.py +36 -1
  72. pulumi_databricks/pulumi-plugin.json +1 -1
  73. pulumi_databricks/recipient.py +74 -0
  74. pulumi_databricks/registered_model.py +7 -7
  75. pulumi_databricks/rfa_access_request_destinations.py +86 -19
  76. pulumi_databricks/schema.py +7 -7
  77. pulumi_databricks/service_principal_federation_policy.py +28 -0
  78. pulumi_databricks/sql_table.py +7 -7
  79. pulumi_databricks/tag_policy.py +2 -2
  80. pulumi_databricks/volume.py +7 -7
  81. pulumi_databricks/workspace_entity_tag_assignment.py +375 -0
  82. pulumi_databricks/workspace_setting_v2.py +181 -12
  83. {pulumi_databricks-1.78.0a1762407761.dist-info → pulumi_databricks-1.79.0.dist-info}/METADATA +1 -1
  84. {pulumi_databricks-1.78.0a1762407761.dist-info → pulumi_databricks-1.79.0.dist-info}/RECORD +86 -79
  85. {pulumi_databricks-1.78.0a1762407761.dist-info → pulumi_databricks-1.79.0.dist-info}/WHEEL +0 -0
  86. {pulumi_databricks-1.78.0a1762407761.dist-info → pulumi_databricks-1.79.0.dist-info}/top_level.txt +0 -0
@@ -184,12 +184,21 @@ __all__ = [
184
184
  'ExternalLocationFileEventQueueProvidedSqs',
185
185
  'FeatureEngineeringFeatureFunction',
186
186
  'FeatureEngineeringFeatureFunctionExtraParameter',
187
+ 'FeatureEngineeringFeatureLineageContext',
188
+ 'FeatureEngineeringFeatureLineageContextJobContext',
187
189
  'FeatureEngineeringFeatureSource',
188
190
  'FeatureEngineeringFeatureSourceDeltaTableSource',
191
+ 'FeatureEngineeringFeatureSourceKafkaSource',
192
+ 'FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier',
193
+ 'FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier',
189
194
  'FeatureEngineeringFeatureTimeWindow',
190
195
  'FeatureEngineeringFeatureTimeWindowContinuous',
191
196
  'FeatureEngineeringFeatureTimeWindowSliding',
192
197
  'FeatureEngineeringFeatureTimeWindowTumbling',
198
+ 'FeatureEngineeringKafkaConfigAuthConfig',
199
+ 'FeatureEngineeringKafkaConfigKeySchema',
200
+ 'FeatureEngineeringKafkaConfigSubscriptionMode',
201
+ 'FeatureEngineeringKafkaConfigValueSchema',
193
202
  'FeatureEngineeringMaterializedFeatureOfflineStoreConfig',
194
203
  'FeatureEngineeringMaterializedFeatureOnlineStoreConfig',
195
204
  'GrantsGrant',
@@ -447,6 +456,7 @@ __all__ = [
447
456
  'JobTaskWebhookNotificationsOnSuccess',
448
457
  'JobTrigger',
449
458
  'JobTriggerFileArrival',
459
+ 'JobTriggerModel',
450
460
  'JobTriggerPeriodic',
451
461
  'JobTriggerTableUpdate',
452
462
  'JobWebhookNotifications',
@@ -549,6 +559,7 @@ __all__ = [
549
559
  'MwsWorkspacesGcpManagedNetworkConfig',
550
560
  'MwsWorkspacesGkeConfig',
551
561
  'MwsWorkspacesToken',
562
+ 'NotebookProviderConfig',
552
563
  'NotificationDestinationConfig',
553
564
  'NotificationDestinationConfigEmail',
554
565
  'NotificationDestinationConfigGenericWebhook',
@@ -566,6 +577,7 @@ __all__ = [
566
577
  'OnlineTableStatusProvisioningStatusInitialPipelineSyncProgress',
567
578
  'OnlineTableStatusTriggeredUpdateStatus',
568
579
  'OnlineTableStatusTriggeredUpdateStatusTriggeredUpdateProgress',
580
+ 'PermissionAssignmentProviderConfig',
569
581
  'PermissionsAccessControl',
570
582
  'PipelineCluster',
571
583
  'PipelineClusterAutoscale',
@@ -590,6 +602,7 @@ __all__ = [
590
602
  'PipelineEventLog',
591
603
  'PipelineFilters',
592
604
  'PipelineGatewayDefinition',
605
+ 'PipelineGatewayDefinitionConnectionParameters',
593
606
  'PipelineIngestionDefinition',
594
607
  'PipelineIngestionDefinitionObject',
595
608
  'PipelineIngestionDefinitionObjectReport',
@@ -997,8 +1010,13 @@ __all__ = [
997
1010
  'GetExternalMetadatasExternalMetadataResult',
998
1011
  'GetFeatureEngineeringFeatureFunctionResult',
999
1012
  'GetFeatureEngineeringFeatureFunctionExtraParameterResult',
1013
+ 'GetFeatureEngineeringFeatureLineageContextResult',
1014
+ 'GetFeatureEngineeringFeatureLineageContextJobContextResult',
1000
1015
  'GetFeatureEngineeringFeatureSourceResult',
1001
1016
  'GetFeatureEngineeringFeatureSourceDeltaTableSourceResult',
1017
+ 'GetFeatureEngineeringFeatureSourceKafkaSourceResult',
1018
+ 'GetFeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierResult',
1019
+ 'GetFeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult',
1002
1020
  'GetFeatureEngineeringFeatureTimeWindowResult',
1003
1021
  'GetFeatureEngineeringFeatureTimeWindowContinuousResult',
1004
1022
  'GetFeatureEngineeringFeatureTimeWindowSlidingResult',
@@ -1006,12 +1024,26 @@ __all__ = [
1006
1024
  'GetFeatureEngineeringFeaturesFeatureResult',
1007
1025
  'GetFeatureEngineeringFeaturesFeatureFunctionResult',
1008
1026
  'GetFeatureEngineeringFeaturesFeatureFunctionExtraParameterResult',
1027
+ 'GetFeatureEngineeringFeaturesFeatureLineageContextResult',
1028
+ 'GetFeatureEngineeringFeaturesFeatureLineageContextJobContextResult',
1009
1029
  'GetFeatureEngineeringFeaturesFeatureSourceResult',
1010
1030
  'GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceResult',
1031
+ 'GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceResult',
1032
+ 'GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceEntityColumnIdentifierResult',
1033
+ 'GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult',
1011
1034
  'GetFeatureEngineeringFeaturesFeatureTimeWindowResult',
1012
1035
  'GetFeatureEngineeringFeaturesFeatureTimeWindowContinuousResult',
1013
1036
  'GetFeatureEngineeringFeaturesFeatureTimeWindowSlidingResult',
1014
1037
  'GetFeatureEngineeringFeaturesFeatureTimeWindowTumblingResult',
1038
+ 'GetFeatureEngineeringKafkaConfigAuthConfigResult',
1039
+ 'GetFeatureEngineeringKafkaConfigKeySchemaResult',
1040
+ 'GetFeatureEngineeringKafkaConfigSubscriptionModeResult',
1041
+ 'GetFeatureEngineeringKafkaConfigValueSchemaResult',
1042
+ 'GetFeatureEngineeringKafkaConfigsKafkaConfigResult',
1043
+ 'GetFeatureEngineeringKafkaConfigsKafkaConfigAuthConfigResult',
1044
+ 'GetFeatureEngineeringKafkaConfigsKafkaConfigKeySchemaResult',
1045
+ 'GetFeatureEngineeringKafkaConfigsKafkaConfigSubscriptionModeResult',
1046
+ 'GetFeatureEngineeringKafkaConfigsKafkaConfigValueSchemaResult',
1015
1047
  'GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult',
1016
1048
  'GetFeatureEngineeringMaterializedFeatureOnlineStoreConfigResult',
1017
1049
  'GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureResult',
@@ -1270,6 +1302,7 @@ __all__ = [
1270
1302
  'GetMwsNetworkConnectivityConfigEgressConfigTargetRulesAzurePrivateEndpointRuleResult',
1271
1303
  'GetNodeTypeProviderConfigResult',
1272
1304
  'GetNotebookPathsNotebookPathListResult',
1305
+ 'GetNotebookProviderConfigResult',
1273
1306
  'GetNotificationDestinationsNotificationDestinationResult',
1274
1307
  'GetNotificationDestinationsProviderConfigResult',
1275
1308
  'GetOnlineStoresOnlineStoreResult',
@@ -1309,6 +1342,7 @@ __all__ = [
1309
1342
  'GetServicePrincipalFederationPoliciesPolicyResult',
1310
1343
  'GetServicePrincipalFederationPoliciesPolicyOidcPolicyResult',
1311
1344
  'GetServicePrincipalFederationPolicyOidcPolicyResult',
1345
+ 'GetServicePrincipalsServicePrincipalResult',
1312
1346
  'GetServingEndpointsEndpointResult',
1313
1347
  'GetServingEndpointsEndpointAiGatewayResult',
1314
1348
  'GetServingEndpointsEndpointAiGatewayFallbackConfigResult',
@@ -1386,12 +1420,19 @@ __all__ = [
1386
1420
  'GetTagPoliciesTagPolicyResult',
1387
1421
  'GetTagPoliciesTagPolicyValueResult',
1388
1422
  'GetTagPolicyValueResult',
1423
+ 'GetUsersUserResult',
1424
+ 'GetUsersUserEmailResult',
1425
+ 'GetUsersUserEntitlementResult',
1426
+ 'GetUsersUserGroupResult',
1427
+ 'GetUsersUserNameResult',
1428
+ 'GetUsersUserRoleResult',
1389
1429
  'GetViewsProviderConfigResult',
1390
1430
  'GetVolumeProviderConfigResult',
1391
1431
  'GetVolumeVolumeInfoResult',
1392
1432
  'GetVolumeVolumeInfoEncryptionDetailsResult',
1393
1433
  'GetVolumeVolumeInfoEncryptionDetailsSseEncryptionDetailsResult',
1394
1434
  'GetVolumesProviderConfigResult',
1435
+ 'GetWorkspaceEntityTagAssignmentsTagAssignmentResult',
1395
1436
  'GetWorkspaceSettingV2AibiDashboardEmbeddingAccessPolicyResult',
1396
1437
  'GetWorkspaceSettingV2AibiDashboardEmbeddingApprovedDomainsResult',
1397
1438
  'GetWorkspaceSettingV2AutomaticClusterUpdateWorkspaceResult',
@@ -1429,6 +1470,9 @@ class AccessControlRuleSetGrantRule(dict):
1429
1470
  * `accounts/{account_id}/ruleSets/default`
1430
1471
  * `roles/marketplace.admin` - Databricks Marketplace administrator.
1431
1472
  * `roles/billing.admin` - Billing administrator.
1473
+ * `roles/tagPolicy.creator` - Creator of tag policies.
1474
+ * `roles/tagPolicy.manager` - Manager of tag policies.
1475
+ * `roles/tagPolicy.assigner` - Assigner of tag policies.
1432
1476
  * `accounts/{account_id}/servicePrincipals/{service_principal_application_id}/ruleSets/default`
1433
1477
  * `roles/servicePrincipal.manager` - Manager of a service principal.
1434
1478
  * `roles/servicePrincipal.user` - User of a service principal.
@@ -1437,6 +1481,9 @@ class AccessControlRuleSetGrantRule(dict):
1437
1481
  * `accounts/{account_id}/budgetPolicies/{budget_policy_id}/ruleSets/default`
1438
1482
  * `roles/budgetPolicy.manager` - Manager of a budget policy.
1439
1483
  * `roles/budgetPolicy.user` - User of a budget policy.
1484
+ * `accounts/{account_id}/tagPolicies/{tag_policy_id}/ruleSets/default`
1485
+ * `roles/tagPolicy.manager` - Manager of a specific tag policy.
1486
+ * `roles/tagPolicy.assigner` - Assigner of a specific tag policy.
1440
1487
  :param Sequence[_builtins.str] principals: a list of principals who are granted a role. The following format is supported:
1441
1488
  * `users/{username}` (also exposed as `acl_principal_id` attribute of `User` resource).
1442
1489
  * `groups/{groupname}` (also exposed as `acl_principal_id` attribute of `Group` resource).
@@ -1454,6 +1501,9 @@ class AccessControlRuleSetGrantRule(dict):
1454
1501
  * `accounts/{account_id}/ruleSets/default`
1455
1502
  * `roles/marketplace.admin` - Databricks Marketplace administrator.
1456
1503
  * `roles/billing.admin` - Billing administrator.
1504
+ * `roles/tagPolicy.creator` - Creator of tag policies.
1505
+ * `roles/tagPolicy.manager` - Manager of tag policies.
1506
+ * `roles/tagPolicy.assigner` - Assigner of tag policies.
1457
1507
  * `accounts/{account_id}/servicePrincipals/{service_principal_application_id}/ruleSets/default`
1458
1508
  * `roles/servicePrincipal.manager` - Manager of a service principal.
1459
1509
  * `roles/servicePrincipal.user` - User of a service principal.
@@ -1462,6 +1512,9 @@ class AccessControlRuleSetGrantRule(dict):
1462
1512
  * `accounts/{account_id}/budgetPolicies/{budget_policy_id}/ruleSets/default`
1463
1513
  * `roles/budgetPolicy.manager` - Manager of a budget policy.
1464
1514
  * `roles/budgetPolicy.user` - User of a budget policy.
1515
+ * `accounts/{account_id}/tagPolicies/{tag_policy_id}/ruleSets/default`
1516
+ * `roles/tagPolicy.manager` - Manager of a specific tag policy.
1517
+ * `roles/tagPolicy.assigner` - Assigner of a specific tag policy.
1465
1518
  """
1466
1519
  return pulumi.get(self, "role")
1467
1520
 
@@ -3111,7 +3164,9 @@ class AlertV2EvaluationNotification(dict):
3111
3164
  subscriptions: Optional[Sequence['outputs.AlertV2EvaluationNotificationSubscription']] = None):
3112
3165
  """
3113
3166
  :param _builtins.bool notify_on_ok: Whether to notify alert subscribers when alert returns back to normal
3114
- :param _builtins.int retrigger_seconds: Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
3167
+ :param _builtins.int retrigger_seconds: Number of seconds an alert waits after being triggered before it is allowed to send another notification.
3168
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
3169
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
3115
3170
  """
3116
3171
  if effective_notify_on_ok is not None:
3117
3172
  pulumi.set(__self__, "effective_notify_on_ok", effective_notify_on_ok)
@@ -3146,7 +3201,9 @@ class AlertV2EvaluationNotification(dict):
3146
3201
  @pulumi.getter(name="retriggerSeconds")
3147
3202
  def retrigger_seconds(self) -> Optional[_builtins.int]:
3148
3203
  """
3149
- Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
3204
+ Number of seconds an alert waits after being triggered before it is allowed to send another notification.
3205
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
3206
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
3150
3207
  """
3151
3208
  return pulumi.get(self, "retrigger_seconds")
3152
3209
 
@@ -3203,7 +3260,7 @@ class AlertV2EvaluationSource(dict):
3203
3260
  aggregation: Optional[_builtins.str] = None,
3204
3261
  display: Optional[_builtins.str] = None):
3205
3262
  """
3206
- :param _builtins.str aggregation: Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3263
+ :param _builtins.str aggregation: If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3207
3264
  """
3208
3265
  pulumi.set(__self__, "name", name)
3209
3266
  if aggregation is not None:
@@ -3220,7 +3277,7 @@ class AlertV2EvaluationSource(dict):
3220
3277
  @pulumi.getter
3221
3278
  def aggregation(self) -> Optional[_builtins.str]:
3222
3279
  """
3223
- Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3280
+ If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3224
3281
  """
3225
3282
  return pulumi.get(self, "aggregation")
3226
3283
 
@@ -3258,7 +3315,7 @@ class AlertV2EvaluationThresholdColumn(dict):
3258
3315
  aggregation: Optional[_builtins.str] = None,
3259
3316
  display: Optional[_builtins.str] = None):
3260
3317
  """
3261
- :param _builtins.str aggregation: Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3318
+ :param _builtins.str aggregation: If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3262
3319
  """
3263
3320
  pulumi.set(__self__, "name", name)
3264
3321
  if aggregation is not None:
@@ -3275,7 +3332,7 @@ class AlertV2EvaluationThresholdColumn(dict):
3275
3332
  @pulumi.getter
3276
3333
  def aggregation(self) -> Optional[_builtins.str]:
3277
3334
  """
3278
- Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3335
+ If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
3279
3336
  """
3280
3337
  return pulumi.get(self, "aggregation")
3281
3338
 
@@ -5364,7 +5421,9 @@ class ClusterAwsAttributes(dict):
5364
5421
  """
5365
5422
  :param _builtins.str availability: Availability type used for all subsequent nodes past the `first_on_demand` ones. Valid values are `SPOT`, `SPOT_WITH_FALLBACK` and `ON_DEMAND`. Note: If `first_on_demand` is zero, this availability type will be used for the entire cluster. Backend default value is `SPOT_WITH_FALLBACK` and could change in the future
5366
5423
  :param _builtins.int ebs_volume_count: The number of volumes launched for each instance. You can choose up to 10 volumes. This feature is only enabled for supported node types. Legacy node types cannot specify custom EBS volumes. For node types with no instance store, at least one EBS volume needs to be specified; otherwise, cluster creation will fail. These EBS volumes will be mounted at /ebs0, /ebs1, and etc. Instance store volumes will be mounted at /local_disk0, /local_disk1, and etc. If EBS volumes are attached, Databricks will configure Spark to use only the EBS volumes for scratch storage because heterogeneously sized scratch devices can lead to inefficient disk utilization. If no EBS volumes are attached, Databricks will configure Spark to use instance store volumes. If EBS volumes are specified, then the Spark configuration spark.local.dir will be overridden.
5424
+ :param _builtins.int ebs_volume_iops: If using gp3 volumes, what IOPS to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.
5367
5425
  :param _builtins.int ebs_volume_size: The size of each EBS volume (in GiB) launched for each instance. For general purpose SSD, this value must be within the range 100 - 4096. For throughput optimized HDD, this value must be within the range 500 - 4096. Custom EBS volumes cannot be specified for the legacy node types (memory-optimized and compute-optimized).
5426
+ :param _builtins.int ebs_volume_throughput: If using gp3 volumes, what throughput to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.
5368
5427
  :param _builtins.str ebs_volume_type: The type of EBS volumes that will be launched with this cluster. Valid values are `GENERAL_PURPOSE_SSD` or `THROUGHPUT_OPTIMIZED_HDD`. Use this option only if you're not picking *Delta Optimized `i3.*`* node types.
5369
5428
  :param _builtins.int first_on_demand: The first `first_on_demand` nodes of the cluster will be placed on on-demand instances. If this value is greater than 0, the cluster driver node will be placed on an on-demand instance. If this value is greater than or equal to the current cluster size, all nodes will be placed on on-demand instances. If this value is less than the current cluster size, `first_on_demand` nodes will be placed on on-demand instances, and the remainder will be placed on availability instances. This value does not affect cluster size and cannot be mutated over the lifetime of a cluster. If unspecified, the default value is 0.
5370
5429
  :param _builtins.str instance_profile_arn: Nodes for this cluster will only be placed on AWS instances with this instance profile. Please see InstanceProfile resource documentation for extended examples on adding a valid instance profile using Pulumi.
@@ -5411,6 +5470,9 @@ class ClusterAwsAttributes(dict):
5411
5470
  @_builtins.property
5412
5471
  @pulumi.getter(name="ebsVolumeIops")
5413
5472
  def ebs_volume_iops(self) -> Optional[_builtins.int]:
5473
+ """
5474
+ If using gp3 volumes, what IOPS to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.
5475
+ """
5414
5476
  return pulumi.get(self, "ebs_volume_iops")
5415
5477
 
5416
5478
  @_builtins.property
@@ -5424,6 +5486,9 @@ class ClusterAwsAttributes(dict):
5424
5486
  @_builtins.property
5425
5487
  @pulumi.getter(name="ebsVolumeThroughput")
5426
5488
  def ebs_volume_throughput(self) -> Optional[_builtins.int]:
5489
+ """
5490
+ If using gp3 volumes, what throughput to use for the disk. If this is not set, the maximum performance of a gp2 volume with the same volume size will be used.
5491
+ """
5427
5492
  return pulumi.get(self, "ebs_volume_throughput")
5428
5493
 
5429
5494
  @_builtins.property
@@ -5928,7 +5993,7 @@ class ClusterDockerImage(dict):
5928
5993
  basic_auth: Optional['outputs.ClusterDockerImageBasicAuth'] = None):
5929
5994
  """
5930
5995
  :param _builtins.str url: URL for the Docker image
5931
- :param 'ClusterDockerImageBasicAuthArgs' basic_auth: `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. However, other authenticated and authorized API users of this workspace can access the username and password.
5996
+ :param 'ClusterDockerImageBasicAuthArgs' basic_auth: `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. For better security, these credentials should be stored in the secret scope and referred using secret path syntax: `{{secrets/scope/key}}`, otherwise other users of the workspace may access them via UI/API.
5932
5997
 
5933
5998
  Example usage with azurerm_container_registry and docker_registry_image, that you can adapt to your specific use-case:
5934
5999
 
@@ -5937,11 +6002,11 @@ class ClusterDockerImage(dict):
5937
6002
  import pulumi_databricks as databricks
5938
6003
  import pulumi_docker as docker
5939
6004
 
5940
- this = docker.index.RegistryImage("this",
6005
+ this = docker.RegistryImage("this",
5941
6006
  build=[{}],
5942
- name=f{this_azurerm_container_registry.login_server}/sample:latest)
6007
+ name=f"{this_azurerm_container_registry['loginServer']}/sample:latest")
5943
6008
  this_cluster = databricks.Cluster("this", docker_image={
5944
- "url": this["name"],
6009
+ "url": this.name,
5945
6010
  "basic_auth": {
5946
6011
  "username": this_azurerm_container_registry["adminUsername"],
5947
6012
  "password": this_azurerm_container_registry["adminPassword"],
@@ -5965,7 +6030,7 @@ class ClusterDockerImage(dict):
5965
6030
  @pulumi.getter(name="basicAuth")
5966
6031
  def basic_auth(self) -> Optional['outputs.ClusterDockerImageBasicAuth']:
5967
6032
  """
5968
- `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. However, other authenticated and authorized API users of this workspace can access the username and password.
6033
+ `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. For better security, these credentials should be stored in the secret scope and referred using secret path syntax: `{{secrets/scope/key}}`, otherwise other users of the workspace may access them via UI/API.
5969
6034
 
5970
6035
  Example usage with azurerm_container_registry and docker_registry_image, that you can adapt to your specific use-case:
5971
6036
 
@@ -5974,11 +6039,11 @@ class ClusterDockerImage(dict):
5974
6039
  import pulumi_databricks as databricks
5975
6040
  import pulumi_docker as docker
5976
6041
 
5977
- this = docker.index.RegistryImage("this",
6042
+ this = docker.RegistryImage("this",
5978
6043
  build=[{}],
5979
- name=f{this_azurerm_container_registry.login_server}/sample:latest)
6044
+ name=f"{this_azurerm_container_registry['loginServer']}/sample:latest")
5980
6045
  this_cluster = databricks.Cluster("this", docker_image={
5981
- "url": this["name"],
6046
+ "url": this.name,
5982
6047
  "basic_auth": {
5983
6048
  "username": this_azurerm_container_registry["adminUsername"],
5984
6049
  "password": this_azurerm_container_registry["adminPassword"],
@@ -9098,7 +9163,9 @@ class DatabaseSyncedDatabaseTableSpecNewPipelineSpec(dict):
9098
9163
  @staticmethod
9099
9164
  def __key_warning(key: str):
9100
9165
  suggest = None
9101
- if key == "storageCatalog":
9166
+ if key == "budgetPolicyId":
9167
+ suggest = "budget_policy_id"
9168
+ elif key == "storageCatalog":
9102
9169
  suggest = "storage_catalog"
9103
9170
  elif key == "storageSchema":
9104
9171
  suggest = "storage_schema"
@@ -9115,9 +9182,11 @@ class DatabaseSyncedDatabaseTableSpecNewPipelineSpec(dict):
9115
9182
  return super().get(key, default)
9116
9183
 
9117
9184
  def __init__(__self__, *,
9185
+ budget_policy_id: Optional[_builtins.str] = None,
9118
9186
  storage_catalog: Optional[_builtins.str] = None,
9119
9187
  storage_schema: Optional[_builtins.str] = None):
9120
9188
  """
9189
+ :param _builtins.str budget_policy_id: Budget policy to set on the newly created pipeline
9121
9190
  :param _builtins.str storage_catalog: This field needs to be specified if the destination catalog is a managed postgres catalog.
9122
9191
 
9123
9192
  UC catalog for the pipeline to store intermediate files (checkpoints, event logs etc).
@@ -9127,11 +9196,21 @@ class DatabaseSyncedDatabaseTableSpecNewPipelineSpec(dict):
9127
9196
  UC schema for the pipeline to store intermediate files (checkpoints, event logs etc).
9128
9197
  This needs to be in the standard catalog where the user has permissions to create Delta tables
9129
9198
  """
9199
+ if budget_policy_id is not None:
9200
+ pulumi.set(__self__, "budget_policy_id", budget_policy_id)
9130
9201
  if storage_catalog is not None:
9131
9202
  pulumi.set(__self__, "storage_catalog", storage_catalog)
9132
9203
  if storage_schema is not None:
9133
9204
  pulumi.set(__self__, "storage_schema", storage_schema)
9134
9205
 
9206
+ @_builtins.property
9207
+ @pulumi.getter(name="budgetPolicyId")
9208
+ def budget_policy_id(self) -> Optional[_builtins.str]:
9209
+ """
9210
+ Budget policy to set on the newly created pipeline
9211
+ """
9212
+ return pulumi.get(self, "budget_policy_id")
9213
+
9135
9214
  @_builtins.property
9136
9215
  @pulumi.getter(name="storageCatalog")
9137
9216
  def storage_catalog(self) -> Optional[_builtins.str]:
@@ -9856,6 +9935,106 @@ class FeatureEngineeringFeatureFunctionExtraParameter(dict):
9856
9935
  return pulumi.get(self, "value")
9857
9936
 
9858
9937
 
9938
+ @pulumi.output_type
9939
+ class FeatureEngineeringFeatureLineageContext(dict):
9940
+ @staticmethod
9941
+ def __key_warning(key: str):
9942
+ suggest = None
9943
+ if key == "jobContext":
9944
+ suggest = "job_context"
9945
+ elif key == "notebookId":
9946
+ suggest = "notebook_id"
9947
+
9948
+ if suggest:
9949
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureLineageContext. Access the value via the '{suggest}' property getter instead.")
9950
+
9951
+ def __getitem__(self, key: str) -> Any:
9952
+ FeatureEngineeringFeatureLineageContext.__key_warning(key)
9953
+ return super().__getitem__(key)
9954
+
9955
+ def get(self, key: str, default = None) -> Any:
9956
+ FeatureEngineeringFeatureLineageContext.__key_warning(key)
9957
+ return super().get(key, default)
9958
+
9959
+ def __init__(__self__, *,
9960
+ job_context: Optional['outputs.FeatureEngineeringFeatureLineageContextJobContext'] = None,
9961
+ notebook_id: Optional[_builtins.int] = None):
9962
+ """
9963
+ :param 'FeatureEngineeringFeatureLineageContextJobContextArgs' job_context: Job context information including job ID and run ID
9964
+ :param _builtins.int notebook_id: The notebook ID where this API was invoked
9965
+ """
9966
+ if job_context is not None:
9967
+ pulumi.set(__self__, "job_context", job_context)
9968
+ if notebook_id is not None:
9969
+ pulumi.set(__self__, "notebook_id", notebook_id)
9970
+
9971
+ @_builtins.property
9972
+ @pulumi.getter(name="jobContext")
9973
+ def job_context(self) -> Optional['outputs.FeatureEngineeringFeatureLineageContextJobContext']:
9974
+ """
9975
+ Job context information including job ID and run ID
9976
+ """
9977
+ return pulumi.get(self, "job_context")
9978
+
9979
+ @_builtins.property
9980
+ @pulumi.getter(name="notebookId")
9981
+ def notebook_id(self) -> Optional[_builtins.int]:
9982
+ """
9983
+ The notebook ID where this API was invoked
9984
+ """
9985
+ return pulumi.get(self, "notebook_id")
9986
+
9987
+
9988
+ @pulumi.output_type
9989
+ class FeatureEngineeringFeatureLineageContextJobContext(dict):
9990
+ @staticmethod
9991
+ def __key_warning(key: str):
9992
+ suggest = None
9993
+ if key == "jobId":
9994
+ suggest = "job_id"
9995
+ elif key == "jobRunId":
9996
+ suggest = "job_run_id"
9997
+
9998
+ if suggest:
9999
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureLineageContextJobContext. Access the value via the '{suggest}' property getter instead.")
10000
+
10001
+ def __getitem__(self, key: str) -> Any:
10002
+ FeatureEngineeringFeatureLineageContextJobContext.__key_warning(key)
10003
+ return super().__getitem__(key)
10004
+
10005
+ def get(self, key: str, default = None) -> Any:
10006
+ FeatureEngineeringFeatureLineageContextJobContext.__key_warning(key)
10007
+ return super().get(key, default)
10008
+
10009
+ def __init__(__self__, *,
10010
+ job_id: Optional[_builtins.int] = None,
10011
+ job_run_id: Optional[_builtins.int] = None):
10012
+ """
10013
+ :param _builtins.int job_id: The job ID where this API invoked
10014
+ :param _builtins.int job_run_id: The job run ID where this API was invoked
10015
+ """
10016
+ if job_id is not None:
10017
+ pulumi.set(__self__, "job_id", job_id)
10018
+ if job_run_id is not None:
10019
+ pulumi.set(__self__, "job_run_id", job_run_id)
10020
+
10021
+ @_builtins.property
10022
+ @pulumi.getter(name="jobId")
10023
+ def job_id(self) -> Optional[_builtins.int]:
10024
+ """
10025
+ The job ID where this API invoked
10026
+ """
10027
+ return pulumi.get(self, "job_id")
10028
+
10029
+ @_builtins.property
10030
+ @pulumi.getter(name="jobRunId")
10031
+ def job_run_id(self) -> Optional[_builtins.int]:
10032
+ """
10033
+ The job run ID where this API was invoked
10034
+ """
10035
+ return pulumi.get(self, "job_run_id")
10036
+
10037
+
9859
10038
  @pulumi.output_type
9860
10039
  class FeatureEngineeringFeatureSource(dict):
9861
10040
  @staticmethod
@@ -9863,6 +10042,8 @@ class FeatureEngineeringFeatureSource(dict):
9863
10042
  suggest = None
9864
10043
  if key == "deltaTableSource":
9865
10044
  suggest = "delta_table_source"
10045
+ elif key == "kafkaSource":
10046
+ suggest = "kafka_source"
9866
10047
 
9867
10048
  if suggest:
9868
10049
  pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureSource. Access the value via the '{suggest}' property getter instead.")
@@ -9876,15 +10057,23 @@ class FeatureEngineeringFeatureSource(dict):
9876
10057
  return super().get(key, default)
9877
10058
 
9878
10059
  def __init__(__self__, *,
9879
- delta_table_source: Optional['outputs.FeatureEngineeringFeatureSourceDeltaTableSource'] = None):
10060
+ delta_table_source: Optional['outputs.FeatureEngineeringFeatureSourceDeltaTableSource'] = None,
10061
+ kafka_source: Optional['outputs.FeatureEngineeringFeatureSourceKafkaSource'] = None):
9880
10062
  if delta_table_source is not None:
9881
10063
  pulumi.set(__self__, "delta_table_source", delta_table_source)
10064
+ if kafka_source is not None:
10065
+ pulumi.set(__self__, "kafka_source", kafka_source)
9882
10066
 
9883
10067
  @_builtins.property
9884
10068
  @pulumi.getter(name="deltaTableSource")
9885
10069
  def delta_table_source(self) -> Optional['outputs.FeatureEngineeringFeatureSourceDeltaTableSource']:
9886
10070
  return pulumi.get(self, "delta_table_source")
9887
10071
 
10072
+ @_builtins.property
10073
+ @pulumi.getter(name="kafkaSource")
10074
+ def kafka_source(self) -> Optional['outputs.FeatureEngineeringFeatureSourceKafkaSource']:
10075
+ return pulumi.get(self, "kafka_source")
10076
+
9888
10077
 
9889
10078
  @pulumi.output_type
9890
10079
  class FeatureEngineeringFeatureSourceDeltaTableSource(dict):
@@ -9947,6 +10136,139 @@ class FeatureEngineeringFeatureSourceDeltaTableSource(dict):
9947
10136
  return pulumi.get(self, "timeseries_column")
9948
10137
 
9949
10138
 
10139
+ @pulumi.output_type
10140
+ class FeatureEngineeringFeatureSourceKafkaSource(dict):
10141
+ @staticmethod
10142
+ def __key_warning(key: str):
10143
+ suggest = None
10144
+ if key == "entityColumnIdentifiers":
10145
+ suggest = "entity_column_identifiers"
10146
+ elif key == "timeseriesColumnIdentifier":
10147
+ suggest = "timeseries_column_identifier"
10148
+
10149
+ if suggest:
10150
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureSourceKafkaSource. Access the value via the '{suggest}' property getter instead.")
10151
+
10152
+ def __getitem__(self, key: str) -> Any:
10153
+ FeatureEngineeringFeatureSourceKafkaSource.__key_warning(key)
10154
+ return super().__getitem__(key)
10155
+
10156
+ def get(self, key: str, default = None) -> Any:
10157
+ FeatureEngineeringFeatureSourceKafkaSource.__key_warning(key)
10158
+ return super().get(key, default)
10159
+
10160
+ def __init__(__self__, *,
10161
+ entity_column_identifiers: Sequence['outputs.FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier'],
10162
+ name: _builtins.str,
10163
+ timeseries_column_identifier: 'outputs.FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier'):
10164
+ """
10165
+ :param Sequence['FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierArgs'] entity_column_identifiers: The entity column identifiers of the Kafka source
10166
+ :param _builtins.str name: Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
10167
+ :param 'FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierArgs' timeseries_column_identifier: The timeseries column identifier of the Kafka source
10168
+ """
10169
+ pulumi.set(__self__, "entity_column_identifiers", entity_column_identifiers)
10170
+ pulumi.set(__self__, "name", name)
10171
+ pulumi.set(__self__, "timeseries_column_identifier", timeseries_column_identifier)
10172
+
10173
+ @_builtins.property
10174
+ @pulumi.getter(name="entityColumnIdentifiers")
10175
+ def entity_column_identifiers(self) -> Sequence['outputs.FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier']:
10176
+ """
10177
+ The entity column identifiers of the Kafka source
10178
+ """
10179
+ return pulumi.get(self, "entity_column_identifiers")
10180
+
10181
+ @_builtins.property
10182
+ @pulumi.getter
10183
+ def name(self) -> _builtins.str:
10184
+ """
10185
+ Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
10186
+ """
10187
+ return pulumi.get(self, "name")
10188
+
10189
+ @_builtins.property
10190
+ @pulumi.getter(name="timeseriesColumnIdentifier")
10191
+ def timeseries_column_identifier(self) -> 'outputs.FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier':
10192
+ """
10193
+ The timeseries column identifier of the Kafka source
10194
+ """
10195
+ return pulumi.get(self, "timeseries_column_identifier")
10196
+
10197
+
10198
+ @pulumi.output_type
10199
+ class FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier(dict):
10200
+ @staticmethod
10201
+ def __key_warning(key: str):
10202
+ suggest = None
10203
+ if key == "variantExprPath":
10204
+ suggest = "variant_expr_path"
10205
+
10206
+ if suggest:
10207
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier. Access the value via the '{suggest}' property getter instead.")
10208
+
10209
+ def __getitem__(self, key: str) -> Any:
10210
+ FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier.__key_warning(key)
10211
+ return super().__getitem__(key)
10212
+
10213
+ def get(self, key: str, default = None) -> Any:
10214
+ FeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifier.__key_warning(key)
10215
+ return super().get(key, default)
10216
+
10217
+ def __init__(__self__, *,
10218
+ variant_expr_path: _builtins.str):
10219
+ """
10220
+ :param _builtins.str variant_expr_path: String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
10221
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
10222
+ """
10223
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
10224
+
10225
+ @_builtins.property
10226
+ @pulumi.getter(name="variantExprPath")
10227
+ def variant_expr_path(self) -> _builtins.str:
10228
+ """
10229
+ String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
10230
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
10231
+ """
10232
+ return pulumi.get(self, "variant_expr_path")
10233
+
10234
+
10235
+ @pulumi.output_type
10236
+ class FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier(dict):
10237
+ @staticmethod
10238
+ def __key_warning(key: str):
10239
+ suggest = None
10240
+ if key == "variantExprPath":
10241
+ suggest = "variant_expr_path"
10242
+
10243
+ if suggest:
10244
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier. Access the value via the '{suggest}' property getter instead.")
10245
+
10246
+ def __getitem__(self, key: str) -> Any:
10247
+ FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier.__key_warning(key)
10248
+ return super().__getitem__(key)
10249
+
10250
+ def get(self, key: str, default = None) -> Any:
10251
+ FeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifier.__key_warning(key)
10252
+ return super().get(key, default)
10253
+
10254
+ def __init__(__self__, *,
10255
+ variant_expr_path: _builtins.str):
10256
+ """
10257
+ :param _builtins.str variant_expr_path: String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
10258
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
10259
+ """
10260
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
10261
+
10262
+ @_builtins.property
10263
+ @pulumi.getter(name="variantExprPath")
10264
+ def variant_expr_path(self) -> _builtins.str:
10265
+ """
10266
+ String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
10267
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
10268
+ """
10269
+ return pulumi.get(self, "variant_expr_path")
10270
+
10271
+
9950
10272
  @pulumi.output_type
9951
10273
  class FeatureEngineeringFeatureTimeWindow(dict):
9952
10274
  def __init__(__self__, *,
@@ -10092,6 +10414,176 @@ class FeatureEngineeringFeatureTimeWindowTumbling(dict):
10092
10414
  return pulumi.get(self, "window_duration")
10093
10415
 
10094
10416
 
10417
+ @pulumi.output_type
10418
+ class FeatureEngineeringKafkaConfigAuthConfig(dict):
10419
+ @staticmethod
10420
+ def __key_warning(key: str):
10421
+ suggest = None
10422
+ if key == "ucServiceCredentialName":
10423
+ suggest = "uc_service_credential_name"
10424
+
10425
+ if suggest:
10426
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringKafkaConfigAuthConfig. Access the value via the '{suggest}' property getter instead.")
10427
+
10428
+ def __getitem__(self, key: str) -> Any:
10429
+ FeatureEngineeringKafkaConfigAuthConfig.__key_warning(key)
10430
+ return super().__getitem__(key)
10431
+
10432
+ def get(self, key: str, default = None) -> Any:
10433
+ FeatureEngineeringKafkaConfigAuthConfig.__key_warning(key)
10434
+ return super().get(key, default)
10435
+
10436
+ def __init__(__self__, *,
10437
+ uc_service_credential_name: Optional[_builtins.str] = None):
10438
+ """
10439
+ :param _builtins.str uc_service_credential_name: Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
10440
+ """
10441
+ if uc_service_credential_name is not None:
10442
+ pulumi.set(__self__, "uc_service_credential_name", uc_service_credential_name)
10443
+
10444
+ @_builtins.property
10445
+ @pulumi.getter(name="ucServiceCredentialName")
10446
+ def uc_service_credential_name(self) -> Optional[_builtins.str]:
10447
+ """
10448
+ Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
10449
+ """
10450
+ return pulumi.get(self, "uc_service_credential_name")
10451
+
10452
+
10453
+ @pulumi.output_type
10454
+ class FeatureEngineeringKafkaConfigKeySchema(dict):
10455
+ @staticmethod
10456
+ def __key_warning(key: str):
10457
+ suggest = None
10458
+ if key == "jsonSchema":
10459
+ suggest = "json_schema"
10460
+
10461
+ if suggest:
10462
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringKafkaConfigKeySchema. Access the value via the '{suggest}' property getter instead.")
10463
+
10464
+ def __getitem__(self, key: str) -> Any:
10465
+ FeatureEngineeringKafkaConfigKeySchema.__key_warning(key)
10466
+ return super().__getitem__(key)
10467
+
10468
+ def get(self, key: str, default = None) -> Any:
10469
+ FeatureEngineeringKafkaConfigKeySchema.__key_warning(key)
10470
+ return super().get(key, default)
10471
+
10472
+ def __init__(__self__, *,
10473
+ json_schema: Optional[_builtins.str] = None):
10474
+ """
10475
+ :param _builtins.str json_schema: Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
10476
+ """
10477
+ if json_schema is not None:
10478
+ pulumi.set(__self__, "json_schema", json_schema)
10479
+
10480
+ @_builtins.property
10481
+ @pulumi.getter(name="jsonSchema")
10482
+ def json_schema(self) -> Optional[_builtins.str]:
10483
+ """
10484
+ Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
10485
+ """
10486
+ return pulumi.get(self, "json_schema")
10487
+
10488
+
10489
+ @pulumi.output_type
10490
+ class FeatureEngineeringKafkaConfigSubscriptionMode(dict):
10491
+ @staticmethod
10492
+ def __key_warning(key: str):
10493
+ suggest = None
10494
+ if key == "subscribePattern":
10495
+ suggest = "subscribe_pattern"
10496
+
10497
+ if suggest:
10498
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringKafkaConfigSubscriptionMode. Access the value via the '{suggest}' property getter instead.")
10499
+
10500
+ def __getitem__(self, key: str) -> Any:
10501
+ FeatureEngineeringKafkaConfigSubscriptionMode.__key_warning(key)
10502
+ return super().__getitem__(key)
10503
+
10504
+ def get(self, key: str, default = None) -> Any:
10505
+ FeatureEngineeringKafkaConfigSubscriptionMode.__key_warning(key)
10506
+ return super().get(key, default)
10507
+
10508
+ def __init__(__self__, *,
10509
+ assign: Optional[_builtins.str] = None,
10510
+ subscribe: Optional[_builtins.str] = None,
10511
+ subscribe_pattern: Optional[_builtins.str] = None):
10512
+ """
10513
+ :param _builtins.str assign: A JSON string that contains the specific topic-partitions to consume from.
10514
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
10515
+ :param _builtins.str subscribe: A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
10516
+ :param _builtins.str subscribe_pattern: A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
10517
+ """
10518
+ if assign is not None:
10519
+ pulumi.set(__self__, "assign", assign)
10520
+ if subscribe is not None:
10521
+ pulumi.set(__self__, "subscribe", subscribe)
10522
+ if subscribe_pattern is not None:
10523
+ pulumi.set(__self__, "subscribe_pattern", subscribe_pattern)
10524
+
10525
+ @_builtins.property
10526
+ @pulumi.getter
10527
+ def assign(self) -> Optional[_builtins.str]:
10528
+ """
10529
+ A JSON string that contains the specific topic-partitions to consume from.
10530
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
10531
+ """
10532
+ return pulumi.get(self, "assign")
10533
+
10534
+ @_builtins.property
10535
+ @pulumi.getter
10536
+ def subscribe(self) -> Optional[_builtins.str]:
10537
+ """
10538
+ A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
10539
+ """
10540
+ return pulumi.get(self, "subscribe")
10541
+
10542
+ @_builtins.property
10543
+ @pulumi.getter(name="subscribePattern")
10544
+ def subscribe_pattern(self) -> Optional[_builtins.str]:
10545
+ """
10546
+ A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
10547
+ """
10548
+ return pulumi.get(self, "subscribe_pattern")
10549
+
10550
+
10551
+ @pulumi.output_type
10552
+ class FeatureEngineeringKafkaConfigValueSchema(dict):
10553
+ @staticmethod
10554
+ def __key_warning(key: str):
10555
+ suggest = None
10556
+ if key == "jsonSchema":
10557
+ suggest = "json_schema"
10558
+
10559
+ if suggest:
10560
+ pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringKafkaConfigValueSchema. Access the value via the '{suggest}' property getter instead.")
10561
+
10562
+ def __getitem__(self, key: str) -> Any:
10563
+ FeatureEngineeringKafkaConfigValueSchema.__key_warning(key)
10564
+ return super().__getitem__(key)
10565
+
10566
+ def get(self, key: str, default = None) -> Any:
10567
+ FeatureEngineeringKafkaConfigValueSchema.__key_warning(key)
10568
+ return super().get(key, default)
10569
+
10570
+ def __init__(__self__, *,
10571
+ json_schema: Optional[_builtins.str] = None):
10572
+ """
10573
+ :param _builtins.str json_schema: Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
10574
+ """
10575
+ if json_schema is not None:
10576
+ pulumi.set(__self__, "json_schema", json_schema)
10577
+
10578
+ @_builtins.property
10579
+ @pulumi.getter(name="jsonSchema")
10580
+ def json_schema(self) -> Optional[_builtins.str]:
10581
+ """
10582
+ Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
10583
+ """
10584
+ return pulumi.get(self, "json_schema")
10585
+
10586
+
10095
10587
  @pulumi.output_type
10096
10588
  class FeatureEngineeringMaterializedFeatureOfflineStoreConfig(dict):
10097
10589
  @staticmethod
@@ -10119,12 +10611,6 @@ class FeatureEngineeringMaterializedFeatureOfflineStoreConfig(dict):
10119
10611
  catalog_name: _builtins.str,
10120
10612
  schema_name: _builtins.str,
10121
10613
  table_name_prefix: _builtins.str):
10122
- """
10123
- :param _builtins.str catalog_name: The Unity Catalog catalog name
10124
- :param _builtins.str schema_name: The Unity Catalog schema name
10125
- :param _builtins.str table_name_prefix: Prefix for Unity Catalog table name.
10126
- The materialized feature will be stored in a table with this prefix and a generated postfix
10127
- """
10128
10614
  pulumi.set(__self__, "catalog_name", catalog_name)
10129
10615
  pulumi.set(__self__, "schema_name", schema_name)
10130
10616
  pulumi.set(__self__, "table_name_prefix", table_name_prefix)
@@ -10132,26 +10618,16 @@ class FeatureEngineeringMaterializedFeatureOfflineStoreConfig(dict):
10132
10618
  @_builtins.property
10133
10619
  @pulumi.getter(name="catalogName")
10134
10620
  def catalog_name(self) -> _builtins.str:
10135
- """
10136
- The Unity Catalog catalog name
10137
- """
10138
10621
  return pulumi.get(self, "catalog_name")
10139
10622
 
10140
10623
  @_builtins.property
10141
10624
  @pulumi.getter(name="schemaName")
10142
10625
  def schema_name(self) -> _builtins.str:
10143
- """
10144
- The Unity Catalog schema name
10145
- """
10146
10626
  return pulumi.get(self, "schema_name")
10147
10627
 
10148
10628
  @_builtins.property
10149
10629
  @pulumi.getter(name="tableNamePrefix")
10150
10630
  def table_name_prefix(self) -> _builtins.str:
10151
- """
10152
- Prefix for Unity Catalog table name.
10153
- The materialized feature will be stored in a table with this prefix and a generated postfix
10154
- """
10155
10631
  return pulumi.get(self, "table_name_prefix")
10156
10632
 
10157
10633
 
@@ -10160,10 +10636,14 @@ class FeatureEngineeringMaterializedFeatureOnlineStoreConfig(dict):
10160
10636
  @staticmethod
10161
10637
  def __key_warning(key: str):
10162
10638
  suggest = None
10163
- if key == "creationTime":
10164
- suggest = "creation_time"
10165
- elif key == "readReplicaCount":
10166
- suggest = "read_replica_count"
10639
+ if key == "catalogName":
10640
+ suggest = "catalog_name"
10641
+ elif key == "onlineStoreName":
10642
+ suggest = "online_store_name"
10643
+ elif key == "schemaName":
10644
+ suggest = "schema_name"
10645
+ elif key == "tableNamePrefix":
10646
+ suggest = "table_name_prefix"
10167
10647
 
10168
10648
  if suggest:
10169
10649
  pulumi.log.warn(f"Key '{key}' not found in FeatureEngineeringMaterializedFeatureOnlineStoreConfig. Access the value via the '{suggest}' property getter instead.")
@@ -10177,78 +10657,40 @@ class FeatureEngineeringMaterializedFeatureOnlineStoreConfig(dict):
10177
10657
  return super().get(key, default)
10178
10658
 
10179
10659
  def __init__(__self__, *,
10180
- capacity: _builtins.str,
10181
- name: _builtins.str,
10182
- creation_time: Optional[_builtins.str] = None,
10183
- creator: Optional[_builtins.str] = None,
10184
- read_replica_count: Optional[_builtins.int] = None,
10185
- state: Optional[_builtins.str] = None):
10186
- """
10187
- :param _builtins.str capacity: The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
10188
- :param _builtins.str name: The name of the online store. This is the unique identifier for the online store
10189
- :param _builtins.str creation_time: (string) - The timestamp when the online store was created
10190
- :param _builtins.str creator: (string) - The email of the creator of the online store
10191
- :param _builtins.int read_replica_count: The number of read replicas for the online store. Defaults to 0
10192
- :param _builtins.str state: (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
10193
- """
10194
- pulumi.set(__self__, "capacity", capacity)
10195
- pulumi.set(__self__, "name", name)
10196
- if creation_time is not None:
10197
- pulumi.set(__self__, "creation_time", creation_time)
10198
- if creator is not None:
10199
- pulumi.set(__self__, "creator", creator)
10200
- if read_replica_count is not None:
10201
- pulumi.set(__self__, "read_replica_count", read_replica_count)
10202
- if state is not None:
10203
- pulumi.set(__self__, "state", state)
10204
-
10205
- @_builtins.property
10206
- @pulumi.getter
10207
- def capacity(self) -> _builtins.str:
10208
- """
10209
- The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
10210
- """
10211
- return pulumi.get(self, "capacity")
10212
-
10213
- @_builtins.property
10214
- @pulumi.getter
10215
- def name(self) -> _builtins.str:
10660
+ catalog_name: _builtins.str,
10661
+ online_store_name: _builtins.str,
10662
+ schema_name: _builtins.str,
10663
+ table_name_prefix: _builtins.str):
10216
10664
  """
10217
- The name of the online store. This is the unique identifier for the online store
10665
+ :param _builtins.str online_store_name: The name of the target online store
10218
10666
  """
10219
- return pulumi.get(self, "name")
10667
+ pulumi.set(__self__, "catalog_name", catalog_name)
10668
+ pulumi.set(__self__, "online_store_name", online_store_name)
10669
+ pulumi.set(__self__, "schema_name", schema_name)
10670
+ pulumi.set(__self__, "table_name_prefix", table_name_prefix)
10220
10671
 
10221
10672
  @_builtins.property
10222
- @pulumi.getter(name="creationTime")
10223
- def creation_time(self) -> Optional[_builtins.str]:
10224
- """
10225
- (string) - The timestamp when the online store was created
10226
- """
10227
- return pulumi.get(self, "creation_time")
10673
+ @pulumi.getter(name="catalogName")
10674
+ def catalog_name(self) -> _builtins.str:
10675
+ return pulumi.get(self, "catalog_name")
10228
10676
 
10229
10677
  @_builtins.property
10230
- @pulumi.getter
10231
- def creator(self) -> Optional[_builtins.str]:
10678
+ @pulumi.getter(name="onlineStoreName")
10679
+ def online_store_name(self) -> _builtins.str:
10232
10680
  """
10233
- (string) - The email of the creator of the online store
10681
+ The name of the target online store
10234
10682
  """
10235
- return pulumi.get(self, "creator")
10683
+ return pulumi.get(self, "online_store_name")
10236
10684
 
10237
10685
  @_builtins.property
10238
- @pulumi.getter(name="readReplicaCount")
10239
- def read_replica_count(self) -> Optional[_builtins.int]:
10240
- """
10241
- The number of read replicas for the online store. Defaults to 0
10242
- """
10243
- return pulumi.get(self, "read_replica_count")
10686
+ @pulumi.getter(name="schemaName")
10687
+ def schema_name(self) -> _builtins.str:
10688
+ return pulumi.get(self, "schema_name")
10244
10689
 
10245
10690
  @_builtins.property
10246
- @pulumi.getter
10247
- def state(self) -> Optional[_builtins.str]:
10248
- """
10249
- (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
10250
- """
10251
- return pulumi.get(self, "state")
10691
+ @pulumi.getter(name="tableNamePrefix")
10692
+ def table_name_prefix(self) -> _builtins.str:
10693
+ return pulumi.get(self, "table_name_prefix")
10252
10694
 
10253
10695
 
10254
10696
  @pulumi.output_type
@@ -10747,7 +11189,7 @@ class InstancePoolPreloadedDockerImage(dict):
10747
11189
  basic_auth: Optional['outputs.InstancePoolPreloadedDockerImageBasicAuth'] = None):
10748
11190
  """
10749
11191
  :param _builtins.str url: URL for the Docker image
10750
- :param 'InstancePoolPreloadedDockerImageBasicAuthArgs' basic_auth: `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. However, other authenticated and authorized API users of this workspace can access the username and password.
11192
+ :param 'InstancePoolPreloadedDockerImageBasicAuthArgs' basic_auth: `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. For better security, these credentials should be stored in the secret scope and referred using secret path syntax: `{{secrets/scope/key}}`, otherwise other users of the workspace may access them via UI/API.
10751
11193
 
10752
11194
  Example usage with azurerm_container_registry and docker_registry_image, that you can adapt to your specific use-case:
10753
11195
 
@@ -10756,11 +11198,11 @@ class InstancePoolPreloadedDockerImage(dict):
10756
11198
  import pulumi_databricks as databricks
10757
11199
  import pulumi_docker as docker
10758
11200
 
10759
- this = docker.index.RegistryImage("this",
11201
+ this = docker.RegistryImage("this",
10760
11202
  build=[{}],
10761
- name=f{this_azurerm_container_registry.login_server}/sample:latest)
11203
+ name=f"{this_azurerm_container_registry['loginServer']}/sample:latest")
10762
11204
  this_instance_pool = databricks.InstancePool("this", preloaded_docker_images=[{
10763
- "url": this["name"],
11205
+ "url": this.name,
10764
11206
  "basic_auth": {
10765
11207
  "username": this_azurerm_container_registry["adminUsername"],
10766
11208
  "password": this_azurerm_container_registry["adminPassword"],
@@ -10784,7 +11226,7 @@ class InstancePoolPreloadedDockerImage(dict):
10784
11226
  @pulumi.getter(name="basicAuth")
10785
11227
  def basic_auth(self) -> Optional['outputs.InstancePoolPreloadedDockerImageBasicAuth']:
10786
11228
  """
10787
- `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. However, other authenticated and authorized API users of this workspace can access the username and password.
11229
+ `basic_auth.username` and `basic_auth.password` for Docker repository. Docker registry credentials are encrypted when they are stored in Databricks internal storage and when they are passed to a registry upon fetching Docker images at cluster launch. For better security, these credentials should be stored in the secret scope and referred using secret path syntax: `{{secrets/scope/key}}`, otherwise other users of the workspace may access them via UI/API.
10788
11230
 
10789
11231
  Example usage with azurerm_container_registry and docker_registry_image, that you can adapt to your specific use-case:
10790
11232
 
@@ -10793,11 +11235,11 @@ class InstancePoolPreloadedDockerImage(dict):
10793
11235
  import pulumi_databricks as databricks
10794
11236
  import pulumi_docker as docker
10795
11237
 
10796
- this = docker.index.RegistryImage("this",
11238
+ this = docker.RegistryImage("this",
10797
11239
  build=[{}],
10798
- name=f{this_azurerm_container_registry.login_server}/sample:latest)
11240
+ name=f"{this_azurerm_container_registry['loginServer']}/sample:latest")
10799
11241
  this_instance_pool = databricks.InstancePool("this", preloaded_docker_images=[{
10800
- "url": this["name"],
11242
+ "url": this.name,
10801
11243
  "basic_auth": {
10802
11244
  "username": this_azurerm_container_registry["adminUsername"],
10803
11245
  "password": this_azurerm_container_registry["adminPassword"],
@@ -24532,6 +24974,7 @@ class JobTrigger(dict):
24532
24974
 
24533
24975
  def __init__(__self__, *,
24534
24976
  file_arrival: Optional['outputs.JobTriggerFileArrival'] = None,
24977
+ model: Optional['outputs.JobTriggerModel'] = None,
24535
24978
  pause_status: Optional[_builtins.str] = None,
24536
24979
  periodic: Optional['outputs.JobTriggerPeriodic'] = None,
24537
24980
  table_update: Optional['outputs.JobTriggerTableUpdate'] = None):
@@ -24543,6 +24986,8 @@ class JobTrigger(dict):
24543
24986
  """
24544
24987
  if file_arrival is not None:
24545
24988
  pulumi.set(__self__, "file_arrival", file_arrival)
24989
+ if model is not None:
24990
+ pulumi.set(__self__, "model", model)
24546
24991
  if pause_status is not None:
24547
24992
  pulumi.set(__self__, "pause_status", pause_status)
24548
24993
  if periodic is not None:
@@ -24558,6 +25003,11 @@ class JobTrigger(dict):
24558
25003
  """
24559
25004
  return pulumi.get(self, "file_arrival")
24560
25005
 
25006
+ @_builtins.property
25007
+ @pulumi.getter
25008
+ def model(self) -> Optional['outputs.JobTriggerModel']:
25009
+ return pulumi.get(self, "model")
25010
+
24561
25011
  @_builtins.property
24562
25012
  @pulumi.getter(name="pauseStatus")
24563
25013
  def pause_status(self) -> Optional[_builtins.str]:
@@ -24644,6 +25094,77 @@ class JobTriggerFileArrival(dict):
24644
25094
  return pulumi.get(self, "wait_after_last_change_seconds")
24645
25095
 
24646
25096
 
25097
+ @pulumi.output_type
25098
+ class JobTriggerModel(dict):
25099
+ @staticmethod
25100
+ def __key_warning(key: str):
25101
+ suggest = None
25102
+ if key == "minTimeBetweenTriggersSeconds":
25103
+ suggest = "min_time_between_triggers_seconds"
25104
+ elif key == "securableName":
25105
+ suggest = "securable_name"
25106
+ elif key == "waitAfterLastChangeSeconds":
25107
+ suggest = "wait_after_last_change_seconds"
25108
+
25109
+ if suggest:
25110
+ pulumi.log.warn(f"Key '{key}' not found in JobTriggerModel. Access the value via the '{suggest}' property getter instead.")
25111
+
25112
+ def __getitem__(self, key: str) -> Any:
25113
+ JobTriggerModel.__key_warning(key)
25114
+ return super().__getitem__(key)
25115
+
25116
+ def get(self, key: str, default = None) -> Any:
25117
+ JobTriggerModel.__key_warning(key)
25118
+ return super().get(key, default)
25119
+
25120
+ def __init__(__self__, *,
25121
+ condition: _builtins.str,
25122
+ aliases: Optional[Sequence[_builtins.str]] = None,
25123
+ min_time_between_triggers_seconds: Optional[_builtins.int] = None,
25124
+ securable_name: Optional[_builtins.str] = None,
25125
+ wait_after_last_change_seconds: Optional[_builtins.int] = None):
25126
+ """
25127
+ :param _builtins.str condition: The table(s) condition based on which to trigger a job run. Possible values are `ANY_UPDATED`, `ALL_UPDATED`.
25128
+ """
25129
+ pulumi.set(__self__, "condition", condition)
25130
+ if aliases is not None:
25131
+ pulumi.set(__self__, "aliases", aliases)
25132
+ if min_time_between_triggers_seconds is not None:
25133
+ pulumi.set(__self__, "min_time_between_triggers_seconds", min_time_between_triggers_seconds)
25134
+ if securable_name is not None:
25135
+ pulumi.set(__self__, "securable_name", securable_name)
25136
+ if wait_after_last_change_seconds is not None:
25137
+ pulumi.set(__self__, "wait_after_last_change_seconds", wait_after_last_change_seconds)
25138
+
25139
+ @_builtins.property
25140
+ @pulumi.getter
25141
+ def condition(self) -> _builtins.str:
25142
+ """
25143
+ The table(s) condition based on which to trigger a job run. Possible values are `ANY_UPDATED`, `ALL_UPDATED`.
25144
+ """
25145
+ return pulumi.get(self, "condition")
25146
+
25147
+ @_builtins.property
25148
+ @pulumi.getter
25149
+ def aliases(self) -> Optional[Sequence[_builtins.str]]:
25150
+ return pulumi.get(self, "aliases")
25151
+
25152
+ @_builtins.property
25153
+ @pulumi.getter(name="minTimeBetweenTriggersSeconds")
25154
+ def min_time_between_triggers_seconds(self) -> Optional[_builtins.int]:
25155
+ return pulumi.get(self, "min_time_between_triggers_seconds")
25156
+
25157
+ @_builtins.property
25158
+ @pulumi.getter(name="securableName")
25159
+ def securable_name(self) -> Optional[_builtins.str]:
25160
+ return pulumi.get(self, "securable_name")
25161
+
25162
+ @_builtins.property
25163
+ @pulumi.getter(name="waitAfterLastChangeSeconds")
25164
+ def wait_after_last_change_seconds(self) -> Optional[_builtins.int]:
25165
+ return pulumi.get(self, "wait_after_last_change_seconds")
25166
+
25167
+
24647
25168
  @pulumi.output_type
24648
25169
  class JobTriggerPeriodic(dict):
24649
25170
  def __init__(__self__, *,
@@ -30073,13 +30594,13 @@ class MwsNetworksGcpNetworkInfo(dict):
30073
30594
 
30074
30595
  @_builtins.property
30075
30596
  @pulumi.getter(name="podIpRangeName")
30076
- @_utilities.deprecated("""gcp_network_info.pod_ip_range_name is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.96.0/docs/guides/gcp-workspace#creating-a-vpc""")
30597
+ @_utilities.deprecated("""gcp_network_info.pod_ip_range_name is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.100.0/docs/guides/gcp-workspace#creating-a-vpc""")
30077
30598
  def pod_ip_range_name(self) -> Optional[_builtins.str]:
30078
30599
  return pulumi.get(self, "pod_ip_range_name")
30079
30600
 
30080
30601
  @_builtins.property
30081
30602
  @pulumi.getter(name="serviceIpRangeName")
30082
- @_utilities.deprecated("""gcp_network_info.service_ip_range_name is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.96.0/docs/guides/gcp-workspace#creating-a-vpc""")
30603
+ @_utilities.deprecated("""gcp_network_info.service_ip_range_name is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.100.0/docs/guides/gcp-workspace#creating-a-vpc""")
30083
30604
  def service_ip_range_name(self) -> Optional[_builtins.str]:
30084
30605
  return pulumi.get(self, "service_ip_range_name")
30085
30606
 
@@ -30351,13 +30872,13 @@ class MwsWorkspacesGcpManagedNetworkConfig(dict):
30351
30872
 
30352
30873
  @_builtins.property
30353
30874
  @pulumi.getter(name="gkeClusterPodIpRange")
30354
- @_utilities.deprecated("""gcp_managed_network_config.gke_cluster_pod_ip_range is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.96.0/docs/guides/gcp-workspace#creating-a-databricks-workspace""")
30875
+ @_utilities.deprecated("""gcp_managed_network_config.gke_cluster_pod_ip_range is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.100.0/docs/guides/gcp-workspace#creating-a-databricks-workspace""")
30355
30876
  def gke_cluster_pod_ip_range(self) -> Optional[_builtins.str]:
30356
30877
  return pulumi.get(self, "gke_cluster_pod_ip_range")
30357
30878
 
30358
30879
  @_builtins.property
30359
30880
  @pulumi.getter(name="gkeClusterServiceIpRange")
30360
- @_utilities.deprecated("""gcp_managed_network_config.gke_cluster_service_ip_range is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.96.0/docs/guides/gcp-workspace#creating-a-databricks-workspace""")
30881
+ @_utilities.deprecated("""gcp_managed_network_config.gke_cluster_service_ip_range is deprecated and will be removed in a future release. For more information, review the documentation at https://registry.terraform.io/providers/databricks/databricks/1.100.0/docs/guides/gcp-workspace#creating-a-databricks-workspace""")
30361
30882
  def gke_cluster_service_ip_range(self) -> Optional[_builtins.str]:
30362
30883
  return pulumi.get(self, "gke_cluster_service_ip_range")
30363
30884
 
@@ -30470,6 +30991,41 @@ class MwsWorkspacesToken(dict):
30470
30991
  return pulumi.get(self, "token_value")
30471
30992
 
30472
30993
 
30994
+ @pulumi.output_type
30995
+ class NotebookProviderConfig(dict):
30996
+ @staticmethod
30997
+ def __key_warning(key: str):
30998
+ suggest = None
30999
+ if key == "workspaceId":
31000
+ suggest = "workspace_id"
31001
+
31002
+ if suggest:
31003
+ pulumi.log.warn(f"Key '{key}' not found in NotebookProviderConfig. Access the value via the '{suggest}' property getter instead.")
31004
+
31005
+ def __getitem__(self, key: str) -> Any:
31006
+ NotebookProviderConfig.__key_warning(key)
31007
+ return super().__getitem__(key)
31008
+
31009
+ def get(self, key: str, default = None) -> Any:
31010
+ NotebookProviderConfig.__key_warning(key)
31011
+ return super().get(key, default)
31012
+
31013
+ def __init__(__self__, *,
31014
+ workspace_id: _builtins.str):
31015
+ """
31016
+ :param _builtins.str workspace_id: Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
31017
+ """
31018
+ pulumi.set(__self__, "workspace_id", workspace_id)
31019
+
31020
+ @_builtins.property
31021
+ @pulumi.getter(name="workspaceId")
31022
+ def workspace_id(self) -> _builtins.str:
31023
+ """
31024
+ Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
31025
+ """
31026
+ return pulumi.get(self, "workspace_id")
31027
+
31028
+
30473
31029
  @pulumi.output_type
30474
31030
  class NotificationDestinationConfig(dict):
30475
31031
  @staticmethod
@@ -31539,6 +32095,41 @@ class OnlineTableStatusTriggeredUpdateStatusTriggeredUpdateProgress(dict):
31539
32095
  return pulumi.get(self, "total_row_count")
31540
32096
 
31541
32097
 
32098
+ @pulumi.output_type
32099
+ class PermissionAssignmentProviderConfig(dict):
32100
+ @staticmethod
32101
+ def __key_warning(key: str):
32102
+ suggest = None
32103
+ if key == "workspaceId":
32104
+ suggest = "workspace_id"
32105
+
32106
+ if suggest:
32107
+ pulumi.log.warn(f"Key '{key}' not found in PermissionAssignmentProviderConfig. Access the value via the '{suggest}' property getter instead.")
32108
+
32109
+ def __getitem__(self, key: str) -> Any:
32110
+ PermissionAssignmentProviderConfig.__key_warning(key)
32111
+ return super().__getitem__(key)
32112
+
32113
+ def get(self, key: str, default = None) -> Any:
32114
+ PermissionAssignmentProviderConfig.__key_warning(key)
32115
+ return super().get(key, default)
32116
+
32117
+ def __init__(__self__, *,
32118
+ workspace_id: _builtins.str):
32119
+ """
32120
+ :param _builtins.str workspace_id: Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
32121
+ """
32122
+ pulumi.set(__self__, "workspace_id", workspace_id)
32123
+
32124
+ @_builtins.property
32125
+ @pulumi.getter(name="workspaceId")
32126
+ def workspace_id(self) -> _builtins.str:
32127
+ """
32128
+ Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
32129
+ """
32130
+ return pulumi.get(self, "workspace_id")
32131
+
32132
+
31542
32133
  @pulumi.output_type
31543
32134
  class PermissionsAccessControl(dict):
31544
32135
  @staticmethod
@@ -32708,6 +33299,8 @@ class PipelineGatewayDefinition(dict):
32708
33299
  suggest = "gateway_storage_schema"
32709
33300
  elif key == "connectionId":
32710
33301
  suggest = "connection_id"
33302
+ elif key == "connectionParameters":
33303
+ suggest = "connection_parameters"
32711
33304
  elif key == "gatewayStorageName":
32712
33305
  suggest = "gateway_storage_name"
32713
33306
 
@@ -32727,11 +33320,13 @@ class PipelineGatewayDefinition(dict):
32727
33320
  gateway_storage_catalog: _builtins.str,
32728
33321
  gateway_storage_schema: _builtins.str,
32729
33322
  connection_id: Optional[_builtins.str] = None,
33323
+ connection_parameters: Optional['outputs.PipelineGatewayDefinitionConnectionParameters'] = None,
32730
33324
  gateway_storage_name: Optional[_builtins.str] = None):
32731
33325
  """
33326
+ :param _builtins.str connection_name: Immutable. The Unity Catalog connection that this gateway pipeline uses to communicate with the source.
32732
33327
  :param _builtins.str gateway_storage_catalog: Required, Immutable. The name of the catalog for the gateway pipeline's storage location.
32733
33328
  :param _builtins.str gateway_storage_schema: Required, Immutable. The name of the schema for the gateway pipelines's storage location.
32734
- :param _builtins.str connection_id: Immutable. The Unity Catalog connection this gateway pipeline uses to communicate with the source.
33329
+ :param _builtins.str connection_id: Deprecated, Immutable. The Unity Catalog connection this gateway pipeline uses to communicate with the source. *Use `connection_name` instead!*
32735
33330
  :param _builtins.str gateway_storage_name: Required. The Unity Catalog-compatible naming for the gateway storage location. This is the destination to use for the data that is extracted by the gateway. Lakeflow Declarative Pipelines system will automatically create the storage location under the catalog and schema.
32736
33331
  """
32737
33332
  pulumi.set(__self__, "connection_name", connection_name)
@@ -32739,12 +33334,17 @@ class PipelineGatewayDefinition(dict):
32739
33334
  pulumi.set(__self__, "gateway_storage_schema", gateway_storage_schema)
32740
33335
  if connection_id is not None:
32741
33336
  pulumi.set(__self__, "connection_id", connection_id)
33337
+ if connection_parameters is not None:
33338
+ pulumi.set(__self__, "connection_parameters", connection_parameters)
32742
33339
  if gateway_storage_name is not None:
32743
33340
  pulumi.set(__self__, "gateway_storage_name", gateway_storage_name)
32744
33341
 
32745
33342
  @_builtins.property
32746
33343
  @pulumi.getter(name="connectionName")
32747
33344
  def connection_name(self) -> _builtins.str:
33345
+ """
33346
+ Immutable. The Unity Catalog connection that this gateway pipeline uses to communicate with the source.
33347
+ """
32748
33348
  return pulumi.get(self, "connection_name")
32749
33349
 
32750
33350
  @_builtins.property
@@ -32767,10 +33367,15 @@ class PipelineGatewayDefinition(dict):
32767
33367
  @pulumi.getter(name="connectionId")
32768
33368
  def connection_id(self) -> Optional[_builtins.str]:
32769
33369
  """
32770
- Immutable. The Unity Catalog connection this gateway pipeline uses to communicate with the source.
33370
+ Deprecated, Immutable. The Unity Catalog connection this gateway pipeline uses to communicate with the source. *Use `connection_name` instead!*
32771
33371
  """
32772
33372
  return pulumi.get(self, "connection_id")
32773
33373
 
33374
+ @_builtins.property
33375
+ @pulumi.getter(name="connectionParameters")
33376
+ def connection_parameters(self) -> Optional['outputs.PipelineGatewayDefinitionConnectionParameters']:
33377
+ return pulumi.get(self, "connection_parameters")
33378
+
32774
33379
  @_builtins.property
32775
33380
  @pulumi.getter(name="gatewayStorageName")
32776
33381
  def gateway_storage_name(self) -> Optional[_builtins.str]:
@@ -32780,6 +33385,36 @@ class PipelineGatewayDefinition(dict):
32780
33385
  return pulumi.get(self, "gateway_storage_name")
32781
33386
 
32782
33387
 
33388
+ @pulumi.output_type
33389
+ class PipelineGatewayDefinitionConnectionParameters(dict):
33390
+ @staticmethod
33391
+ def __key_warning(key: str):
33392
+ suggest = None
33393
+ if key == "sourceCatalog":
33394
+ suggest = "source_catalog"
33395
+
33396
+ if suggest:
33397
+ pulumi.log.warn(f"Key '{key}' not found in PipelineGatewayDefinitionConnectionParameters. Access the value via the '{suggest}' property getter instead.")
33398
+
33399
+ def __getitem__(self, key: str) -> Any:
33400
+ PipelineGatewayDefinitionConnectionParameters.__key_warning(key)
33401
+ return super().__getitem__(key)
33402
+
33403
+ def get(self, key: str, default = None) -> Any:
33404
+ PipelineGatewayDefinitionConnectionParameters.__key_warning(key)
33405
+ return super().get(key, default)
33406
+
33407
+ def __init__(__self__, *,
33408
+ source_catalog: Optional[_builtins.str] = None):
33409
+ if source_catalog is not None:
33410
+ pulumi.set(__self__, "source_catalog", source_catalog)
33411
+
33412
+ @_builtins.property
33413
+ @pulumi.getter(name="sourceCatalog")
33414
+ def source_catalog(self) -> Optional[_builtins.str]:
33415
+ return pulumi.get(self, "source_catalog")
33416
+
33417
+
32783
33418
  @pulumi.output_type
32784
33419
  class PipelineIngestionDefinition(dict):
32785
33420
  @staticmethod
@@ -32787,6 +33422,8 @@ class PipelineIngestionDefinition(dict):
32787
33422
  suggest = None
32788
33423
  if key == "connectionName":
32789
33424
  suggest = "connection_name"
33425
+ elif key == "ingestFromUcForeignCatalog":
33426
+ suggest = "ingest_from_uc_foreign_catalog"
32790
33427
  elif key == "ingestionGatewayId":
32791
33428
  suggest = "ingestion_gateway_id"
32792
33429
  elif key == "netsuiteJarPath":
@@ -32811,6 +33448,7 @@ class PipelineIngestionDefinition(dict):
32811
33448
 
32812
33449
  def __init__(__self__, *,
32813
33450
  connection_name: Optional[_builtins.str] = None,
33451
+ ingest_from_uc_foreign_catalog: Optional[_builtins.bool] = None,
32814
33452
  ingestion_gateway_id: Optional[_builtins.str] = None,
32815
33453
  netsuite_jar_path: Optional[_builtins.str] = None,
32816
33454
  objects: Optional[Sequence['outputs.PipelineIngestionDefinitionObject']] = None,
@@ -32819,6 +33457,8 @@ class PipelineIngestionDefinition(dict):
32819
33457
  table_configuration: Optional['outputs.PipelineIngestionDefinitionTableConfiguration'] = None):
32820
33458
  if connection_name is not None:
32821
33459
  pulumi.set(__self__, "connection_name", connection_name)
33460
+ if ingest_from_uc_foreign_catalog is not None:
33461
+ pulumi.set(__self__, "ingest_from_uc_foreign_catalog", ingest_from_uc_foreign_catalog)
32822
33462
  if ingestion_gateway_id is not None:
32823
33463
  pulumi.set(__self__, "ingestion_gateway_id", ingestion_gateway_id)
32824
33464
  if netsuite_jar_path is not None:
@@ -32837,6 +33477,11 @@ class PipelineIngestionDefinition(dict):
32837
33477
  def connection_name(self) -> Optional[_builtins.str]:
32838
33478
  return pulumi.get(self, "connection_name")
32839
33479
 
33480
+ @_builtins.property
33481
+ @pulumi.getter(name="ingestFromUcForeignCatalog")
33482
+ def ingest_from_uc_foreign_catalog(self) -> Optional[_builtins.bool]:
33483
+ return pulumi.get(self, "ingest_from_uc_foreign_catalog")
33484
+
32840
33485
  @_builtins.property
32841
33486
  @pulumi.getter(name="ingestionGatewayId")
32842
33487
  def ingestion_gateway_id(self) -> Optional[_builtins.str]:
@@ -33780,7 +34425,7 @@ class PipelineIngestionDefinitionSourceConfiguration(dict):
33780
34425
  def __init__(__self__, *,
33781
34426
  catalog: Optional['outputs.PipelineIngestionDefinitionSourceConfigurationCatalog'] = None):
33782
34427
  """
33783
- :param 'PipelineIngestionDefinitionSourceConfigurationCatalogArgs' catalog: The name of catalog in Unity Catalog. *Change of this parameter forces recreation of the pipeline.* (Conflicts with `storage`).
34428
+ :param 'PipelineIngestionDefinitionSourceConfigurationCatalogArgs' catalog: The name of default catalog in Unity Catalog. *Change of this parameter forces recreation of the pipeline if you switch from `storage` to `catalog` or vice versa. If pipeline was already created with `catalog` set, the value could be changed.* (Conflicts with `storage`).
33784
34429
  """
33785
34430
  if catalog is not None:
33786
34431
  pulumi.set(__self__, "catalog", catalog)
@@ -33789,7 +34434,7 @@ class PipelineIngestionDefinitionSourceConfiguration(dict):
33789
34434
  @pulumi.getter
33790
34435
  def catalog(self) -> Optional['outputs.PipelineIngestionDefinitionSourceConfigurationCatalog']:
33791
34436
  """
33792
- The name of catalog in Unity Catalog. *Change of this parameter forces recreation of the pipeline.* (Conflicts with `storage`).
34437
+ The name of default catalog in Unity Catalog. *Change of this parameter forces recreation of the pipeline if you switch from `storage` to `catalog` or vice versa. If pipeline was already created with `catalog` set, the value could be changed.* (Conflicts with `storage`).
33793
34438
  """
33794
34439
  return pulumi.get(self, "catalog")
33795
34440
 
@@ -36427,13 +37072,15 @@ class ShareObject(dict):
36427
37072
  status: Optional[_builtins.str] = None,
36428
37073
  string_shared_as: Optional[_builtins.str] = None):
36429
37074
  """
36430
- :param _builtins.str data_object_type: Type of the data object, currently `TABLE`, `VIEW`, `SCHEMA`, `VOLUME`, and `MODEL` are supported.
37075
+ :param _builtins.str data_object_type: Type of the data object. Supported types: `TABLE`, `FOREIGN_TABLE`, `SCHEMA`, `VIEW`, `MATERIALIZED_VIEW`, `STREAMING_TABLE`, `MODEL`, `NOTEBOOK_FILE`, `FUNCTION`, `FEATURE_SPEC`, and `VOLUME`.
36431
37076
  :param _builtins.str name: Full name of the object, e.g. `catalog.schema.name` for a tables, views, volumes and models, or `catalog.schema` for schemas.
36432
37077
  :param _builtins.bool cdf_enabled: Whether to enable Change Data Feed (cdf) on the shared object. When this field is set, field `history_data_sharing_status` can not be set.
36433
37078
  :param _builtins.str comment: Description about the object.
37079
+ :param _builtins.str content: The content of the notebook file when the data object type is NOTEBOOK_FILE. This should be base64 encoded. Required for adding a NOTEBOOK_FILE, optional for updating, ignored for other types.
36434
37080
  :param _builtins.str history_data_sharing_status: Whether to enable history sharing, one of: `ENABLED`, `DISABLED`. When a table has history sharing enabled, recipients can query table data by version, starting from the current table version. If not specified, clients can only query starting from the version of the object at the time it was added to the share. *NOTE*: The start_version should be less than or equal the current version of the object. When this field is set, field `cdf_enabled` can not be set.
36435
37081
 
36436
37082
  To share only part of a table when you add the table to a share, you can provide partition specifications. This is specified by a number of `partition` blocks. Each entry in `partition` block takes a list of `value` blocks. The field is documented below.
37083
+ :param Sequence['ShareObjectPartitionArgs'] partitions: Array of partitions for the shared data.
36437
37084
  :param _builtins.str shared_as: A user-provided new name for the data object within the share. If this new name is not provided, the object's original name will be used as the `shared_as` name. The `shared_as` name must be unique within a Share. Change forces creation of a new resource.
36438
37085
  :param _builtins.int start_version: The start version associated with the object for cdf. This allows data providers to control the lowest object version that is accessible by clients.
36439
37086
  :param _builtins.str status: Status of the object, one of: `ACTIVE`, `PERMISSION_DENIED`.
@@ -36477,7 +37124,7 @@ class ShareObject(dict):
36477
37124
  @pulumi.getter(name="dataObjectType")
36478
37125
  def data_object_type(self) -> _builtins.str:
36479
37126
  """
36480
- Type of the data object, currently `TABLE`, `VIEW`, `SCHEMA`, `VOLUME`, and `MODEL` are supported.
37127
+ Type of the data object. Supported types: `TABLE`, `FOREIGN_TABLE`, `SCHEMA`, `VIEW`, `MATERIALIZED_VIEW`, `STREAMING_TABLE`, `MODEL`, `NOTEBOOK_FILE`, `FUNCTION`, `FEATURE_SPEC`, and `VOLUME`.
36481
37128
  """
36482
37129
  return pulumi.get(self, "data_object_type")
36483
37130
 
@@ -36518,6 +37165,9 @@ class ShareObject(dict):
36518
37165
  @_builtins.property
36519
37166
  @pulumi.getter
36520
37167
  def content(self) -> Optional[_builtins.str]:
37168
+ """
37169
+ The content of the notebook file when the data object type is NOTEBOOK_FILE. This should be base64 encoded. Required for adding a NOTEBOOK_FILE, optional for updating, ignored for other types.
37170
+ """
36521
37171
  return pulumi.get(self, "content")
36522
37172
 
36523
37173
  @_builtins.property
@@ -36558,6 +37208,9 @@ class ShareObject(dict):
36558
37208
  @_builtins.property
36559
37209
  @pulumi.getter
36560
37210
  def partitions(self) -> Optional[Sequence['outputs.ShareObjectPartition']]:
37211
+ """
37212
+ Array of partitions for the shared data.
37213
+ """
36561
37214
  return pulumi.get(self, "partitions")
36562
37215
 
36563
37216
  @_builtins.property
@@ -41366,7 +42019,9 @@ class GetAlertV2EvaluationNotificationResult(dict):
41366
42019
  subscriptions: Optional[Sequence['outputs.GetAlertV2EvaluationNotificationSubscriptionResult']] = None):
41367
42020
  """
41368
42021
  :param _builtins.bool notify_on_ok: (boolean) - Whether to notify alert subscribers when alert returns back to normal
41369
- :param _builtins.int retrigger_seconds: (integer) - Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
42022
+ :param _builtins.int retrigger_seconds: (integer) - Number of seconds an alert waits after being triggered before it is allowed to send another notification.
42023
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
42024
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
41370
42025
  :param Sequence['GetAlertV2EvaluationNotificationSubscriptionArgs'] subscriptions: (list of AlertV2Subscription)
41371
42026
  """
41372
42027
  pulumi.set(__self__, "effective_notify_on_ok", effective_notify_on_ok)
@@ -41400,7 +42055,9 @@ class GetAlertV2EvaluationNotificationResult(dict):
41400
42055
  @pulumi.getter(name="retriggerSeconds")
41401
42056
  def retrigger_seconds(self) -> Optional[_builtins.int]:
41402
42057
  """
41403
- (integer) - Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
42058
+ (integer) - Number of seconds an alert waits after being triggered before it is allowed to send another notification.
42059
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
42060
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
41404
42061
  """
41405
42062
  return pulumi.get(self, "retrigger_seconds")
41406
42063
 
@@ -41452,7 +42109,7 @@ class GetAlertV2EvaluationSourceResult(dict):
41452
42109
  display: Optional[_builtins.str] = None):
41453
42110
  """
41454
42111
  :param _builtins.str name: (string)
41455
- :param _builtins.str aggregation: (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42112
+ :param _builtins.str aggregation: (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
41456
42113
  :param _builtins.str display: (string)
41457
42114
  """
41458
42115
  pulumi.set(__self__, "name", name)
@@ -41473,7 +42130,7 @@ class GetAlertV2EvaluationSourceResult(dict):
41473
42130
  @pulumi.getter
41474
42131
  def aggregation(self) -> Optional[_builtins.str]:
41475
42132
  """
41476
- (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42133
+ (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
41477
42134
  """
41478
42135
  return pulumi.get(self, "aggregation")
41479
42136
 
@@ -41525,7 +42182,7 @@ class GetAlertV2EvaluationThresholdColumnResult(dict):
41525
42182
  display: Optional[_builtins.str] = None):
41526
42183
  """
41527
42184
  :param _builtins.str name: (string)
41528
- :param _builtins.str aggregation: (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42185
+ :param _builtins.str aggregation: (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
41529
42186
  :param _builtins.str display: (string)
41530
42187
  """
41531
42188
  pulumi.set(__self__, "name", name)
@@ -41546,7 +42203,7 @@ class GetAlertV2EvaluationThresholdColumnResult(dict):
41546
42203
  @pulumi.getter
41547
42204
  def aggregation(self) -> Optional[_builtins.str]:
41548
42205
  """
41549
- (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42206
+ (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
41550
42207
  """
41551
42208
  return pulumi.get(self, "aggregation")
41552
42209
 
@@ -42007,7 +42664,9 @@ class GetAlertsV2AlertEvaluationNotificationResult(dict):
42007
42664
  subscriptions: Optional[Sequence['outputs.GetAlertsV2AlertEvaluationNotificationSubscriptionResult']] = None):
42008
42665
  """
42009
42666
  :param _builtins.bool notify_on_ok: (boolean) - Whether to notify alert subscribers when alert returns back to normal
42010
- :param _builtins.int retrigger_seconds: (integer) - Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
42667
+ :param _builtins.int retrigger_seconds: (integer) - Number of seconds an alert waits after being triggered before it is allowed to send another notification.
42668
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
42669
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
42011
42670
  :param Sequence['GetAlertsV2AlertEvaluationNotificationSubscriptionArgs'] subscriptions: (list of AlertV2Subscription)
42012
42671
  """
42013
42672
  pulumi.set(__self__, "effective_notify_on_ok", effective_notify_on_ok)
@@ -42041,7 +42700,9 @@ class GetAlertsV2AlertEvaluationNotificationResult(dict):
42041
42700
  @pulumi.getter(name="retriggerSeconds")
42042
42701
  def retrigger_seconds(self) -> Optional[_builtins.int]:
42043
42702
  """
42044
- (integer) - Number of seconds an alert must wait after being triggered to rearm itself. After rearming, it can be triggered again. If 0 or not specified, the alert will not be triggered again
42703
+ (integer) - Number of seconds an alert waits after being triggered before it is allowed to send another notification.
42704
+ If set to 0 or omitted, the alert will not send any further notifications after the first trigger
42705
+ Setting this value to 1 allows the alert to send a notification on every evaluation where the condition is met, effectively making it always retrigger for notification purposes
42045
42706
  """
42046
42707
  return pulumi.get(self, "retrigger_seconds")
42047
42708
 
@@ -42093,7 +42754,7 @@ class GetAlertsV2AlertEvaluationSourceResult(dict):
42093
42754
  display: Optional[_builtins.str] = None):
42094
42755
  """
42095
42756
  :param _builtins.str name: (string)
42096
- :param _builtins.str aggregation: (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42757
+ :param _builtins.str aggregation: (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42097
42758
  :param _builtins.str display: (string)
42098
42759
  """
42099
42760
  pulumi.set(__self__, "name", name)
@@ -42114,7 +42775,7 @@ class GetAlertsV2AlertEvaluationSourceResult(dict):
42114
42775
  @pulumi.getter
42115
42776
  def aggregation(self) -> Optional[_builtins.str]:
42116
42777
  """
42117
- (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42778
+ (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42118
42779
  """
42119
42780
  return pulumi.get(self, "aggregation")
42120
42781
 
@@ -42166,7 +42827,7 @@ class GetAlertsV2AlertEvaluationThresholdColumnResult(dict):
42166
42827
  display: Optional[_builtins.str] = None):
42167
42828
  """
42168
42829
  :param _builtins.str name: (string)
42169
- :param _builtins.str aggregation: (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42830
+ :param _builtins.str aggregation: (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42170
42831
  :param _builtins.str display: (string)
42171
42832
  """
42172
42833
  pulumi.set(__self__, "name", name)
@@ -42187,7 +42848,7 @@ class GetAlertsV2AlertEvaluationThresholdColumnResult(dict):
42187
42848
  @pulumi.getter
42188
42849
  def aggregation(self) -> Optional[_builtins.str]:
42189
42850
  """
42190
- (string) - Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42851
+ (string) - If not set, the behavior is equivalent to using `First row` in the UI. Possible values are: `AVG`, `COUNT`, `COUNT_DISTINCT`, `MAX`, `MEDIAN`, `MIN`, `STDDEV`, `SUM`
42191
42852
  """
42192
42853
  return pulumi.get(self, "aggregation")
42193
42854
 
@@ -50927,17 +51588,29 @@ class GetDatabaseSyncedDatabaseTableSpecResult(dict):
50927
51588
  @pulumi.output_type
50928
51589
  class GetDatabaseSyncedDatabaseTableSpecNewPipelineSpecResult(dict):
50929
51590
  def __init__(__self__, *,
51591
+ budget_policy_id: Optional[_builtins.str] = None,
50930
51592
  storage_catalog: Optional[_builtins.str] = None,
50931
51593
  storage_schema: Optional[_builtins.str] = None):
50932
51594
  """
51595
+ :param _builtins.str budget_policy_id: (string) - Budget policy to set on the newly created pipeline
50933
51596
  :param _builtins.str storage_catalog: (string) - This field needs to be specified if the destination catalog is a managed postgres catalog.
50934
51597
  :param _builtins.str storage_schema: (string) - This field needs to be specified if the destination catalog is a managed postgres catalog.
50935
51598
  """
51599
+ if budget_policy_id is not None:
51600
+ pulumi.set(__self__, "budget_policy_id", budget_policy_id)
50936
51601
  if storage_catalog is not None:
50937
51602
  pulumi.set(__self__, "storage_catalog", storage_catalog)
50938
51603
  if storage_schema is not None:
50939
51604
  pulumi.set(__self__, "storage_schema", storage_schema)
50940
51605
 
51606
+ @_builtins.property
51607
+ @pulumi.getter(name="budgetPolicyId")
51608
+ def budget_policy_id(self) -> Optional[_builtins.str]:
51609
+ """
51610
+ (string) - Budget policy to set on the newly created pipeline
51611
+ """
51612
+ return pulumi.get(self, "budget_policy_id")
51613
+
50941
51614
  @_builtins.property
50942
51615
  @pulumi.getter(name="storageCatalog")
50943
51616
  def storage_catalog(self) -> Optional[_builtins.str]:
@@ -51697,17 +52370,29 @@ class GetDatabaseSyncedDatabaseTablesSyncedTableSpecResult(dict):
51697
52370
  @pulumi.output_type
51698
52371
  class GetDatabaseSyncedDatabaseTablesSyncedTableSpecNewPipelineSpecResult(dict):
51699
52372
  def __init__(__self__, *,
52373
+ budget_policy_id: Optional[_builtins.str] = None,
51700
52374
  storage_catalog: Optional[_builtins.str] = None,
51701
52375
  storage_schema: Optional[_builtins.str] = None):
51702
52376
  """
52377
+ :param _builtins.str budget_policy_id: (string) - Budget policy to set on the newly created pipeline
51703
52378
  :param _builtins.str storage_catalog: (string) - This field needs to be specified if the destination catalog is a managed postgres catalog.
51704
52379
  :param _builtins.str storage_schema: (string) - This field needs to be specified if the destination catalog is a managed postgres catalog.
51705
52380
  """
52381
+ if budget_policy_id is not None:
52382
+ pulumi.set(__self__, "budget_policy_id", budget_policy_id)
51706
52383
  if storage_catalog is not None:
51707
52384
  pulumi.set(__self__, "storage_catalog", storage_catalog)
51708
52385
  if storage_schema is not None:
51709
52386
  pulumi.set(__self__, "storage_schema", storage_schema)
51710
52387
 
52388
+ @_builtins.property
52389
+ @pulumi.getter(name="budgetPolicyId")
52390
+ def budget_policy_id(self) -> Optional[_builtins.str]:
52391
+ """
52392
+ (string) - Budget policy to set on the newly created pipeline
52393
+ """
52394
+ return pulumi.get(self, "budget_policy_id")
52395
+
51711
52396
  @_builtins.property
51712
52397
  @pulumi.getter(name="storageCatalog")
51713
52398
  def storage_catalog(self) -> Optional[_builtins.str]:
@@ -52541,15 +53226,81 @@ class GetFeatureEngineeringFeatureFunctionExtraParameterResult(dict):
52541
53226
  return pulumi.get(self, "value")
52542
53227
 
52543
53228
 
53229
+ @pulumi.output_type
53230
+ class GetFeatureEngineeringFeatureLineageContextResult(dict):
53231
+ def __init__(__self__, *,
53232
+ job_context: Optional['outputs.GetFeatureEngineeringFeatureLineageContextJobContextResult'] = None,
53233
+ notebook_id: Optional[_builtins.int] = None):
53234
+ """
53235
+ :param 'GetFeatureEngineeringFeatureLineageContextJobContextArgs' job_context: (JobContext) - Job context information including job ID and run ID
53236
+ :param _builtins.int notebook_id: (integer) - The notebook ID where this API was invoked
53237
+ """
53238
+ if job_context is not None:
53239
+ pulumi.set(__self__, "job_context", job_context)
53240
+ if notebook_id is not None:
53241
+ pulumi.set(__self__, "notebook_id", notebook_id)
53242
+
53243
+ @_builtins.property
53244
+ @pulumi.getter(name="jobContext")
53245
+ def job_context(self) -> Optional['outputs.GetFeatureEngineeringFeatureLineageContextJobContextResult']:
53246
+ """
53247
+ (JobContext) - Job context information including job ID and run ID
53248
+ """
53249
+ return pulumi.get(self, "job_context")
53250
+
53251
+ @_builtins.property
53252
+ @pulumi.getter(name="notebookId")
53253
+ def notebook_id(self) -> Optional[_builtins.int]:
53254
+ """
53255
+ (integer) - The notebook ID where this API was invoked
53256
+ """
53257
+ return pulumi.get(self, "notebook_id")
53258
+
53259
+
53260
+ @pulumi.output_type
53261
+ class GetFeatureEngineeringFeatureLineageContextJobContextResult(dict):
53262
+ def __init__(__self__, *,
53263
+ job_id: Optional[_builtins.int] = None,
53264
+ job_run_id: Optional[_builtins.int] = None):
53265
+ """
53266
+ :param _builtins.int job_id: (integer) - The job ID where this API invoked
53267
+ :param _builtins.int job_run_id: (integer) - The job run ID where this API was invoked
53268
+ """
53269
+ if job_id is not None:
53270
+ pulumi.set(__self__, "job_id", job_id)
53271
+ if job_run_id is not None:
53272
+ pulumi.set(__self__, "job_run_id", job_run_id)
53273
+
53274
+ @_builtins.property
53275
+ @pulumi.getter(name="jobId")
53276
+ def job_id(self) -> Optional[_builtins.int]:
53277
+ """
53278
+ (integer) - The job ID where this API invoked
53279
+ """
53280
+ return pulumi.get(self, "job_id")
53281
+
53282
+ @_builtins.property
53283
+ @pulumi.getter(name="jobRunId")
53284
+ def job_run_id(self) -> Optional[_builtins.int]:
53285
+ """
53286
+ (integer) - The job run ID where this API was invoked
53287
+ """
53288
+ return pulumi.get(self, "job_run_id")
53289
+
53290
+
52544
53291
  @pulumi.output_type
52545
53292
  class GetFeatureEngineeringFeatureSourceResult(dict):
52546
53293
  def __init__(__self__, *,
52547
- delta_table_source: Optional['outputs.GetFeatureEngineeringFeatureSourceDeltaTableSourceResult'] = None):
53294
+ delta_table_source: Optional['outputs.GetFeatureEngineeringFeatureSourceDeltaTableSourceResult'] = None,
53295
+ kafka_source: Optional['outputs.GetFeatureEngineeringFeatureSourceKafkaSourceResult'] = None):
52548
53296
  """
52549
53297
  :param 'GetFeatureEngineeringFeatureSourceDeltaTableSourceArgs' delta_table_source: (DeltaTableSource)
53298
+ :param 'GetFeatureEngineeringFeatureSourceKafkaSourceArgs' kafka_source: (KafkaSource)
52550
53299
  """
52551
53300
  if delta_table_source is not None:
52552
53301
  pulumi.set(__self__, "delta_table_source", delta_table_source)
53302
+ if kafka_source is not None:
53303
+ pulumi.set(__self__, "kafka_source", kafka_source)
52553
53304
 
52554
53305
  @_builtins.property
52555
53306
  @pulumi.getter(name="deltaTableSource")
@@ -52559,6 +53310,14 @@ class GetFeatureEngineeringFeatureSourceResult(dict):
52559
53310
  """
52560
53311
  return pulumi.get(self, "delta_table_source")
52561
53312
 
53313
+ @_builtins.property
53314
+ @pulumi.getter(name="kafkaSource")
53315
+ def kafka_source(self) -> Optional['outputs.GetFeatureEngineeringFeatureSourceKafkaSourceResult']:
53316
+ """
53317
+ (KafkaSource)
53318
+ """
53319
+ return pulumi.get(self, "kafka_source")
53320
+
52562
53321
 
52563
53322
  @pulumi.output_type
52564
53323
  class GetFeatureEngineeringFeatureSourceDeltaTableSourceResult(dict):
@@ -52600,6 +53359,86 @@ class GetFeatureEngineeringFeatureSourceDeltaTableSourceResult(dict):
52600
53359
  return pulumi.get(self, "timeseries_column")
52601
53360
 
52602
53361
 
53362
+ @pulumi.output_type
53363
+ class GetFeatureEngineeringFeatureSourceKafkaSourceResult(dict):
53364
+ def __init__(__self__, *,
53365
+ entity_column_identifiers: Sequence['outputs.GetFeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierResult'],
53366
+ name: _builtins.str,
53367
+ timeseries_column_identifier: 'outputs.GetFeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult'):
53368
+ """
53369
+ :param Sequence['GetFeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierArgs'] entity_column_identifiers: (list of ColumnIdentifier) - The entity column identifiers of the Kafka source
53370
+ :param _builtins.str name: (string) - Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
53371
+ :param 'GetFeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierArgs' timeseries_column_identifier: (ColumnIdentifier) - The timeseries column identifier of the Kafka source
53372
+ """
53373
+ pulumi.set(__self__, "entity_column_identifiers", entity_column_identifiers)
53374
+ pulumi.set(__self__, "name", name)
53375
+ pulumi.set(__self__, "timeseries_column_identifier", timeseries_column_identifier)
53376
+
53377
+ @_builtins.property
53378
+ @pulumi.getter(name="entityColumnIdentifiers")
53379
+ def entity_column_identifiers(self) -> Sequence['outputs.GetFeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierResult']:
53380
+ """
53381
+ (list of ColumnIdentifier) - The entity column identifiers of the Kafka source
53382
+ """
53383
+ return pulumi.get(self, "entity_column_identifiers")
53384
+
53385
+ @_builtins.property
53386
+ @pulumi.getter
53387
+ def name(self) -> _builtins.str:
53388
+ """
53389
+ (string) - Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
53390
+ """
53391
+ return pulumi.get(self, "name")
53392
+
53393
+ @_builtins.property
53394
+ @pulumi.getter(name="timeseriesColumnIdentifier")
53395
+ def timeseries_column_identifier(self) -> 'outputs.GetFeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult':
53396
+ """
53397
+ (ColumnIdentifier) - The timeseries column identifier of the Kafka source
53398
+ """
53399
+ return pulumi.get(self, "timeseries_column_identifier")
53400
+
53401
+
53402
+ @pulumi.output_type
53403
+ class GetFeatureEngineeringFeatureSourceKafkaSourceEntityColumnIdentifierResult(dict):
53404
+ def __init__(__self__, *,
53405
+ variant_expr_path: _builtins.str):
53406
+ """
53407
+ :param _builtins.str variant_expr_path: (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53408
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53409
+ """
53410
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
53411
+
53412
+ @_builtins.property
53413
+ @pulumi.getter(name="variantExprPath")
53414
+ def variant_expr_path(self) -> _builtins.str:
53415
+ """
53416
+ (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53417
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53418
+ """
53419
+ return pulumi.get(self, "variant_expr_path")
53420
+
53421
+
53422
+ @pulumi.output_type
53423
+ class GetFeatureEngineeringFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult(dict):
53424
+ def __init__(__self__, *,
53425
+ variant_expr_path: _builtins.str):
53426
+ """
53427
+ :param _builtins.str variant_expr_path: (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53428
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53429
+ """
53430
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
53431
+
53432
+ @_builtins.property
53433
+ @pulumi.getter(name="variantExprPath")
53434
+ def variant_expr_path(self) -> _builtins.str:
53435
+ """
53436
+ (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53437
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53438
+ """
53439
+ return pulumi.get(self, "variant_expr_path")
53440
+
53441
+
52603
53442
  @pulumi.output_type
52604
53443
  class GetFeatureEngineeringFeatureTimeWindowResult(dict):
52605
53444
  def __init__(__self__, *,
@@ -52728,6 +53567,7 @@ class GetFeatureEngineeringFeaturesFeatureResult(dict):
52728
53567
  full_name: _builtins.str,
52729
53568
  function: 'outputs.GetFeatureEngineeringFeaturesFeatureFunctionResult',
52730
53569
  inputs: Sequence[_builtins.str],
53570
+ lineage_context: 'outputs.GetFeatureEngineeringFeaturesFeatureLineageContextResult',
52731
53571
  source: 'outputs.GetFeatureEngineeringFeaturesFeatureSourceResult',
52732
53572
  time_window: 'outputs.GetFeatureEngineeringFeaturesFeatureTimeWindowResult'):
52733
53573
  """
@@ -52744,6 +53584,7 @@ class GetFeatureEngineeringFeaturesFeatureResult(dict):
52744
53584
  pulumi.set(__self__, "full_name", full_name)
52745
53585
  pulumi.set(__self__, "function", function)
52746
53586
  pulumi.set(__self__, "inputs", inputs)
53587
+ pulumi.set(__self__, "lineage_context", lineage_context)
52747
53588
  pulumi.set(__self__, "source", source)
52748
53589
  pulumi.set(__self__, "time_window", time_window)
52749
53590
 
@@ -52787,6 +53628,11 @@ class GetFeatureEngineeringFeaturesFeatureResult(dict):
52787
53628
  """
52788
53629
  return pulumi.get(self, "inputs")
52789
53630
 
53631
+ @_builtins.property
53632
+ @pulumi.getter(name="lineageContext")
53633
+ def lineage_context(self) -> 'outputs.GetFeatureEngineeringFeaturesFeatureLineageContextResult':
53634
+ return pulumi.get(self, "lineage_context")
53635
+
52790
53636
  @_builtins.property
52791
53637
  @pulumi.getter
52792
53638
  def source(self) -> 'outputs.GetFeatureEngineeringFeaturesFeatureSourceResult':
@@ -52863,15 +53709,81 @@ class GetFeatureEngineeringFeaturesFeatureFunctionExtraParameterResult(dict):
52863
53709
  return pulumi.get(self, "value")
52864
53710
 
52865
53711
 
53712
+ @pulumi.output_type
53713
+ class GetFeatureEngineeringFeaturesFeatureLineageContextResult(dict):
53714
+ def __init__(__self__, *,
53715
+ job_context: Optional['outputs.GetFeatureEngineeringFeaturesFeatureLineageContextJobContextResult'] = None,
53716
+ notebook_id: Optional[_builtins.int] = None):
53717
+ """
53718
+ :param 'GetFeatureEngineeringFeaturesFeatureLineageContextJobContextArgs' job_context: (JobContext) - Job context information including job ID and run ID
53719
+ :param _builtins.int notebook_id: (integer) - The notebook ID where this API was invoked
53720
+ """
53721
+ if job_context is not None:
53722
+ pulumi.set(__self__, "job_context", job_context)
53723
+ if notebook_id is not None:
53724
+ pulumi.set(__self__, "notebook_id", notebook_id)
53725
+
53726
+ @_builtins.property
53727
+ @pulumi.getter(name="jobContext")
53728
+ def job_context(self) -> Optional['outputs.GetFeatureEngineeringFeaturesFeatureLineageContextJobContextResult']:
53729
+ """
53730
+ (JobContext) - Job context information including job ID and run ID
53731
+ """
53732
+ return pulumi.get(self, "job_context")
53733
+
53734
+ @_builtins.property
53735
+ @pulumi.getter(name="notebookId")
53736
+ def notebook_id(self) -> Optional[_builtins.int]:
53737
+ """
53738
+ (integer) - The notebook ID where this API was invoked
53739
+ """
53740
+ return pulumi.get(self, "notebook_id")
53741
+
53742
+
53743
+ @pulumi.output_type
53744
+ class GetFeatureEngineeringFeaturesFeatureLineageContextJobContextResult(dict):
53745
+ def __init__(__self__, *,
53746
+ job_id: Optional[_builtins.int] = None,
53747
+ job_run_id: Optional[_builtins.int] = None):
53748
+ """
53749
+ :param _builtins.int job_id: (integer) - The job ID where this API invoked
53750
+ :param _builtins.int job_run_id: (integer) - The job run ID where this API was invoked
53751
+ """
53752
+ if job_id is not None:
53753
+ pulumi.set(__self__, "job_id", job_id)
53754
+ if job_run_id is not None:
53755
+ pulumi.set(__self__, "job_run_id", job_run_id)
53756
+
53757
+ @_builtins.property
53758
+ @pulumi.getter(name="jobId")
53759
+ def job_id(self) -> Optional[_builtins.int]:
53760
+ """
53761
+ (integer) - The job ID where this API invoked
53762
+ """
53763
+ return pulumi.get(self, "job_id")
53764
+
53765
+ @_builtins.property
53766
+ @pulumi.getter(name="jobRunId")
53767
+ def job_run_id(self) -> Optional[_builtins.int]:
53768
+ """
53769
+ (integer) - The job run ID where this API was invoked
53770
+ """
53771
+ return pulumi.get(self, "job_run_id")
53772
+
53773
+
52866
53774
  @pulumi.output_type
52867
53775
  class GetFeatureEngineeringFeaturesFeatureSourceResult(dict):
52868
53776
  def __init__(__self__, *,
52869
- delta_table_source: Optional['outputs.GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceResult'] = None):
53777
+ delta_table_source: Optional['outputs.GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceResult'] = None,
53778
+ kafka_source: Optional['outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceResult'] = None):
52870
53779
  """
52871
53780
  :param 'GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceArgs' delta_table_source: (DeltaTableSource)
53781
+ :param 'GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceArgs' kafka_source: (KafkaSource)
52872
53782
  """
52873
53783
  if delta_table_source is not None:
52874
53784
  pulumi.set(__self__, "delta_table_source", delta_table_source)
53785
+ if kafka_source is not None:
53786
+ pulumi.set(__self__, "kafka_source", kafka_source)
52875
53787
 
52876
53788
  @_builtins.property
52877
53789
  @pulumi.getter(name="deltaTableSource")
@@ -52881,6 +53793,14 @@ class GetFeatureEngineeringFeaturesFeatureSourceResult(dict):
52881
53793
  """
52882
53794
  return pulumi.get(self, "delta_table_source")
52883
53795
 
53796
+ @_builtins.property
53797
+ @pulumi.getter(name="kafkaSource")
53798
+ def kafka_source(self) -> Optional['outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceResult']:
53799
+ """
53800
+ (KafkaSource)
53801
+ """
53802
+ return pulumi.get(self, "kafka_source")
53803
+
52884
53804
 
52885
53805
  @pulumi.output_type
52886
53806
  class GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceResult(dict):
@@ -52922,6 +53842,86 @@ class GetFeatureEngineeringFeaturesFeatureSourceDeltaTableSourceResult(dict):
52922
53842
  return pulumi.get(self, "timeseries_column")
52923
53843
 
52924
53844
 
53845
+ @pulumi.output_type
53846
+ class GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceResult(dict):
53847
+ def __init__(__self__, *,
53848
+ entity_column_identifiers: Sequence['outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceEntityColumnIdentifierResult'],
53849
+ name: _builtins.str,
53850
+ timeseries_column_identifier: 'outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult'):
53851
+ """
53852
+ :param Sequence['GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceEntityColumnIdentifierArgs'] entity_column_identifiers: (list of ColumnIdentifier) - The entity column identifiers of the Kafka source
53853
+ :param _builtins.str name: (string) - Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
53854
+ :param 'GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceTimeseriesColumnIdentifierArgs' timeseries_column_identifier: (ColumnIdentifier) - The timeseries column identifier of the Kafka source
53855
+ """
53856
+ pulumi.set(__self__, "entity_column_identifiers", entity_column_identifiers)
53857
+ pulumi.set(__self__, "name", name)
53858
+ pulumi.set(__self__, "timeseries_column_identifier", timeseries_column_identifier)
53859
+
53860
+ @_builtins.property
53861
+ @pulumi.getter(name="entityColumnIdentifiers")
53862
+ def entity_column_identifiers(self) -> Sequence['outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceEntityColumnIdentifierResult']:
53863
+ """
53864
+ (list of ColumnIdentifier) - The entity column identifiers of the Kafka source
53865
+ """
53866
+ return pulumi.get(self, "entity_column_identifiers")
53867
+
53868
+ @_builtins.property
53869
+ @pulumi.getter
53870
+ def name(self) -> _builtins.str:
53871
+ """
53872
+ (string) - Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name
53873
+ """
53874
+ return pulumi.get(self, "name")
53875
+
53876
+ @_builtins.property
53877
+ @pulumi.getter(name="timeseriesColumnIdentifier")
53878
+ def timeseries_column_identifier(self) -> 'outputs.GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult':
53879
+ """
53880
+ (ColumnIdentifier) - The timeseries column identifier of the Kafka source
53881
+ """
53882
+ return pulumi.get(self, "timeseries_column_identifier")
53883
+
53884
+
53885
+ @pulumi.output_type
53886
+ class GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceEntityColumnIdentifierResult(dict):
53887
+ def __init__(__self__, *,
53888
+ variant_expr_path: _builtins.str):
53889
+ """
53890
+ :param _builtins.str variant_expr_path: (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53891
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53892
+ """
53893
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
53894
+
53895
+ @_builtins.property
53896
+ @pulumi.getter(name="variantExprPath")
53897
+ def variant_expr_path(self) -> _builtins.str:
53898
+ """
53899
+ (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53900
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53901
+ """
53902
+ return pulumi.get(self, "variant_expr_path")
53903
+
53904
+
53905
+ @pulumi.output_type
53906
+ class GetFeatureEngineeringFeaturesFeatureSourceKafkaSourceTimeseriesColumnIdentifierResult(dict):
53907
+ def __init__(__self__, *,
53908
+ variant_expr_path: _builtins.str):
53909
+ """
53910
+ :param _builtins.str variant_expr_path: (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53911
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53912
+ """
53913
+ pulumi.set(__self__, "variant_expr_path", variant_expr_path)
53914
+
53915
+ @_builtins.property
53916
+ @pulumi.getter(name="variantExprPath")
53917
+ def variant_expr_path(self) -> _builtins.str:
53918
+ """
53919
+ (string) - String representation of the column name or variant expression path. For nested fields, the leaf value is what will be present in materialized tables
53920
+ and expected to match at query time. For example, the leaf node of value:trip_details.location_details.pickup_zip is pickup_zip
53921
+ """
53922
+ return pulumi.get(self, "variant_expr_path")
53923
+
53924
+
52925
53925
  @pulumi.output_type
52926
53926
  class GetFeatureEngineeringFeaturesFeatureTimeWindowResult(dict):
52927
53927
  def __init__(__self__, *,
@@ -53042,6 +54042,296 @@ class GetFeatureEngineeringFeaturesFeatureTimeWindowTumblingResult(dict):
53042
54042
  return pulumi.get(self, "window_duration")
53043
54043
 
53044
54044
 
54045
+ @pulumi.output_type
54046
+ class GetFeatureEngineeringKafkaConfigAuthConfigResult(dict):
54047
+ def __init__(__self__, *,
54048
+ uc_service_credential_name: Optional[_builtins.str] = None):
54049
+ """
54050
+ :param _builtins.str uc_service_credential_name: (string) - Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
54051
+ """
54052
+ if uc_service_credential_name is not None:
54053
+ pulumi.set(__self__, "uc_service_credential_name", uc_service_credential_name)
54054
+
54055
+ @_builtins.property
54056
+ @pulumi.getter(name="ucServiceCredentialName")
54057
+ def uc_service_credential_name(self) -> Optional[_builtins.str]:
54058
+ """
54059
+ (string) - Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
54060
+ """
54061
+ return pulumi.get(self, "uc_service_credential_name")
54062
+
54063
+
54064
+ @pulumi.output_type
54065
+ class GetFeatureEngineeringKafkaConfigKeySchemaResult(dict):
54066
+ def __init__(__self__, *,
54067
+ json_schema: Optional[_builtins.str] = None):
54068
+ """
54069
+ :param _builtins.str json_schema: (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54070
+ """
54071
+ if json_schema is not None:
54072
+ pulumi.set(__self__, "json_schema", json_schema)
54073
+
54074
+ @_builtins.property
54075
+ @pulumi.getter(name="jsonSchema")
54076
+ def json_schema(self) -> Optional[_builtins.str]:
54077
+ """
54078
+ (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54079
+ """
54080
+ return pulumi.get(self, "json_schema")
54081
+
54082
+
54083
+ @pulumi.output_type
54084
+ class GetFeatureEngineeringKafkaConfigSubscriptionModeResult(dict):
54085
+ def __init__(__self__, *,
54086
+ assign: Optional[_builtins.str] = None,
54087
+ subscribe: Optional[_builtins.str] = None,
54088
+ subscribe_pattern: Optional[_builtins.str] = None):
54089
+ """
54090
+ :param _builtins.str assign: (string) - A JSON string that contains the specific topic-partitions to consume from.
54091
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
54092
+ :param _builtins.str subscribe: (string) - A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
54093
+ :param _builtins.str subscribe_pattern: (string) - A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
54094
+ """
54095
+ if assign is not None:
54096
+ pulumi.set(__self__, "assign", assign)
54097
+ if subscribe is not None:
54098
+ pulumi.set(__self__, "subscribe", subscribe)
54099
+ if subscribe_pattern is not None:
54100
+ pulumi.set(__self__, "subscribe_pattern", subscribe_pattern)
54101
+
54102
+ @_builtins.property
54103
+ @pulumi.getter
54104
+ def assign(self) -> Optional[_builtins.str]:
54105
+ """
54106
+ (string) - A JSON string that contains the specific topic-partitions to consume from.
54107
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
54108
+ """
54109
+ return pulumi.get(self, "assign")
54110
+
54111
+ @_builtins.property
54112
+ @pulumi.getter
54113
+ def subscribe(self) -> Optional[_builtins.str]:
54114
+ """
54115
+ (string) - A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
54116
+ """
54117
+ return pulumi.get(self, "subscribe")
54118
+
54119
+ @_builtins.property
54120
+ @pulumi.getter(name="subscribePattern")
54121
+ def subscribe_pattern(self) -> Optional[_builtins.str]:
54122
+ """
54123
+ (string) - A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
54124
+ """
54125
+ return pulumi.get(self, "subscribe_pattern")
54126
+
54127
+
54128
+ @pulumi.output_type
54129
+ class GetFeatureEngineeringKafkaConfigValueSchemaResult(dict):
54130
+ def __init__(__self__, *,
54131
+ json_schema: Optional[_builtins.str] = None):
54132
+ """
54133
+ :param _builtins.str json_schema: (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54134
+ """
54135
+ if json_schema is not None:
54136
+ pulumi.set(__self__, "json_schema", json_schema)
54137
+
54138
+ @_builtins.property
54139
+ @pulumi.getter(name="jsonSchema")
54140
+ def json_schema(self) -> Optional[_builtins.str]:
54141
+ """
54142
+ (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54143
+ """
54144
+ return pulumi.get(self, "json_schema")
54145
+
54146
+
54147
+ @pulumi.output_type
54148
+ class GetFeatureEngineeringKafkaConfigsKafkaConfigResult(dict):
54149
+ def __init__(__self__, *,
54150
+ auth_config: 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigAuthConfigResult',
54151
+ bootstrap_servers: _builtins.str,
54152
+ extra_options: Mapping[str, _builtins.str],
54153
+ key_schema: 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigKeySchemaResult',
54154
+ name: _builtins.str,
54155
+ subscription_mode: 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigSubscriptionModeResult',
54156
+ value_schema: 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigValueSchemaResult'):
54157
+ """
54158
+ :param 'GetFeatureEngineeringKafkaConfigsKafkaConfigAuthConfigArgs' auth_config: (AuthConfig) - Authentication configuration for connection to topics
54159
+ :param _builtins.str bootstrap_servers: (string) - A comma-separated list of host/port pairs pointing to Kafka cluster
54160
+ :param Mapping[str, _builtins.str] extra_options: (object) - Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*)
54161
+ :param 'GetFeatureEngineeringKafkaConfigsKafkaConfigKeySchemaArgs' key_schema: (SchemaConfig) - Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided
54162
+ :param _builtins.str name: (string) - Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.
54163
+ Can be distinct from topic name
54164
+ :param 'GetFeatureEngineeringKafkaConfigsKafkaConfigSubscriptionModeArgs' subscription_mode: (SubscriptionMode) - Options to configure which Kafka topics to pull data from
54165
+ :param 'GetFeatureEngineeringKafkaConfigsKafkaConfigValueSchemaArgs' value_schema: (SchemaConfig) - Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided
54166
+ """
54167
+ pulumi.set(__self__, "auth_config", auth_config)
54168
+ pulumi.set(__self__, "bootstrap_servers", bootstrap_servers)
54169
+ pulumi.set(__self__, "extra_options", extra_options)
54170
+ pulumi.set(__self__, "key_schema", key_schema)
54171
+ pulumi.set(__self__, "name", name)
54172
+ pulumi.set(__self__, "subscription_mode", subscription_mode)
54173
+ pulumi.set(__self__, "value_schema", value_schema)
54174
+
54175
+ @_builtins.property
54176
+ @pulumi.getter(name="authConfig")
54177
+ def auth_config(self) -> 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigAuthConfigResult':
54178
+ """
54179
+ (AuthConfig) - Authentication configuration for connection to topics
54180
+ """
54181
+ return pulumi.get(self, "auth_config")
54182
+
54183
+ @_builtins.property
54184
+ @pulumi.getter(name="bootstrapServers")
54185
+ def bootstrap_servers(self) -> _builtins.str:
54186
+ """
54187
+ (string) - A comma-separated list of host/port pairs pointing to Kafka cluster
54188
+ """
54189
+ return pulumi.get(self, "bootstrap_servers")
54190
+
54191
+ @_builtins.property
54192
+ @pulumi.getter(name="extraOptions")
54193
+ def extra_options(self) -> Mapping[str, _builtins.str]:
54194
+ """
54195
+ (object) - Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*)
54196
+ """
54197
+ return pulumi.get(self, "extra_options")
54198
+
54199
+ @_builtins.property
54200
+ @pulumi.getter(name="keySchema")
54201
+ def key_schema(self) -> 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigKeySchemaResult':
54202
+ """
54203
+ (SchemaConfig) - Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided
54204
+ """
54205
+ return pulumi.get(self, "key_schema")
54206
+
54207
+ @_builtins.property
54208
+ @pulumi.getter
54209
+ def name(self) -> _builtins.str:
54210
+ """
54211
+ (string) - Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.
54212
+ Can be distinct from topic name
54213
+ """
54214
+ return pulumi.get(self, "name")
54215
+
54216
+ @_builtins.property
54217
+ @pulumi.getter(name="subscriptionMode")
54218
+ def subscription_mode(self) -> 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigSubscriptionModeResult':
54219
+ """
54220
+ (SubscriptionMode) - Options to configure which Kafka topics to pull data from
54221
+ """
54222
+ return pulumi.get(self, "subscription_mode")
54223
+
54224
+ @_builtins.property
54225
+ @pulumi.getter(name="valueSchema")
54226
+ def value_schema(self) -> 'outputs.GetFeatureEngineeringKafkaConfigsKafkaConfigValueSchemaResult':
54227
+ """
54228
+ (SchemaConfig) - Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided
54229
+ """
54230
+ return pulumi.get(self, "value_schema")
54231
+
54232
+
54233
+ @pulumi.output_type
54234
+ class GetFeatureEngineeringKafkaConfigsKafkaConfigAuthConfigResult(dict):
54235
+ def __init__(__self__, *,
54236
+ uc_service_credential_name: Optional[_builtins.str] = None):
54237
+ """
54238
+ :param _builtins.str uc_service_credential_name: (string) - Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
54239
+ """
54240
+ if uc_service_credential_name is not None:
54241
+ pulumi.set(__self__, "uc_service_credential_name", uc_service_credential_name)
54242
+
54243
+ @_builtins.property
54244
+ @pulumi.getter(name="ucServiceCredentialName")
54245
+ def uc_service_credential_name(self) -> Optional[_builtins.str]:
54246
+ """
54247
+ (string) - Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential
54248
+ """
54249
+ return pulumi.get(self, "uc_service_credential_name")
54250
+
54251
+
54252
+ @pulumi.output_type
54253
+ class GetFeatureEngineeringKafkaConfigsKafkaConfigKeySchemaResult(dict):
54254
+ def __init__(__self__, *,
54255
+ json_schema: Optional[_builtins.str] = None):
54256
+ """
54257
+ :param _builtins.str json_schema: (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54258
+ """
54259
+ if json_schema is not None:
54260
+ pulumi.set(__self__, "json_schema", json_schema)
54261
+
54262
+ @_builtins.property
54263
+ @pulumi.getter(name="jsonSchema")
54264
+ def json_schema(self) -> Optional[_builtins.str]:
54265
+ """
54266
+ (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54267
+ """
54268
+ return pulumi.get(self, "json_schema")
54269
+
54270
+
54271
+ @pulumi.output_type
54272
+ class GetFeatureEngineeringKafkaConfigsKafkaConfigSubscriptionModeResult(dict):
54273
+ def __init__(__self__, *,
54274
+ assign: Optional[_builtins.str] = None,
54275
+ subscribe: Optional[_builtins.str] = None,
54276
+ subscribe_pattern: Optional[_builtins.str] = None):
54277
+ """
54278
+ :param _builtins.str assign: (string) - A JSON string that contains the specific topic-partitions to consume from.
54279
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
54280
+ :param _builtins.str subscribe: (string) - A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
54281
+ :param _builtins.str subscribe_pattern: (string) - A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
54282
+ """
54283
+ if assign is not None:
54284
+ pulumi.set(__self__, "assign", assign)
54285
+ if subscribe is not None:
54286
+ pulumi.set(__self__, "subscribe", subscribe)
54287
+ if subscribe_pattern is not None:
54288
+ pulumi.set(__self__, "subscribe_pattern", subscribe_pattern)
54289
+
54290
+ @_builtins.property
54291
+ @pulumi.getter
54292
+ def assign(self) -> Optional[_builtins.str]:
54293
+ """
54294
+ (string) - A JSON string that contains the specific topic-partitions to consume from.
54295
+ For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from
54296
+ """
54297
+ return pulumi.get(self, "assign")
54298
+
54299
+ @_builtins.property
54300
+ @pulumi.getter
54301
+ def subscribe(self) -> Optional[_builtins.str]:
54302
+ """
54303
+ (string) - A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'
54304
+ """
54305
+ return pulumi.get(self, "subscribe")
54306
+
54307
+ @_builtins.property
54308
+ @pulumi.getter(name="subscribePattern")
54309
+ def subscribe_pattern(self) -> Optional[_builtins.str]:
54310
+ """
54311
+ (string) - A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'
54312
+ """
54313
+ return pulumi.get(self, "subscribe_pattern")
54314
+
54315
+
54316
+ @pulumi.output_type
54317
+ class GetFeatureEngineeringKafkaConfigsKafkaConfigValueSchemaResult(dict):
54318
+ def __init__(__self__, *,
54319
+ json_schema: Optional[_builtins.str] = None):
54320
+ """
54321
+ :param _builtins.str json_schema: (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54322
+ """
54323
+ if json_schema is not None:
54324
+ pulumi.set(__self__, "json_schema", json_schema)
54325
+
54326
+ @_builtins.property
54327
+ @pulumi.getter(name="jsonSchema")
54328
+ def json_schema(self) -> Optional[_builtins.str]:
54329
+ """
54330
+ (string) - Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/)
54331
+ """
54332
+ return pulumi.get(self, "json_schema")
54333
+
54334
+
53045
54335
  @pulumi.output_type
53046
54336
  class GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult(dict):
53047
54337
  def __init__(__self__, *,
@@ -53049,10 +54339,10 @@ class GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult(dict):
53049
54339
  schema_name: _builtins.str,
53050
54340
  table_name_prefix: _builtins.str):
53051
54341
  """
53052
- :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name
54342
+ :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53053
54343
  :param _builtins.str schema_name: (string) - The Unity Catalog schema name
53054
54344
  :param _builtins.str table_name_prefix: (string) - Prefix for Unity Catalog table name.
53055
- The materialized feature will be stored in a table with this prefix and a generated postfix
54345
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53056
54346
  """
53057
54347
  pulumi.set(__self__, "catalog_name", catalog_name)
53058
54348
  pulumi.set(__self__, "schema_name", schema_name)
@@ -53062,7 +54352,7 @@ class GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult(dict):
53062
54352
  @pulumi.getter(name="catalogName")
53063
54353
  def catalog_name(self) -> _builtins.str:
53064
54354
  """
53065
- (string) - The Unity Catalog catalog name
54355
+ (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53066
54356
  """
53067
54357
  return pulumi.get(self, "catalog_name")
53068
54358
 
@@ -53079,7 +54369,7 @@ class GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult(dict):
53079
54369
  def table_name_prefix(self) -> _builtins.str:
53080
54370
  """
53081
54371
  (string) - Prefix for Unity Catalog table name.
53082
- The materialized feature will be stored in a table with this prefix and a generated postfix
54372
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53083
54373
  """
53084
54374
  return pulumi.get(self, "table_name_prefix")
53085
54375
 
@@ -53087,80 +54377,60 @@ class GetFeatureEngineeringMaterializedFeatureOfflineStoreConfigResult(dict):
53087
54377
  @pulumi.output_type
53088
54378
  class GetFeatureEngineeringMaterializedFeatureOnlineStoreConfigResult(dict):
53089
54379
  def __init__(__self__, *,
53090
- capacity: _builtins.str,
53091
- creation_time: _builtins.str,
53092
- creator: _builtins.str,
53093
- name: _builtins.str,
53094
- state: _builtins.str,
53095
- read_replica_count: Optional[_builtins.int] = None):
53096
- """
53097
- :param _builtins.str capacity: (string) - The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
53098
- :param _builtins.str creation_time: (string) - The timestamp when the online store was created
53099
- :param _builtins.str creator: (string) - The email of the creator of the online store
53100
- :param _builtins.str name: (string) - The name of the online store. This is the unique identifier for the online store
53101
- :param _builtins.str state: (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
53102
- :param _builtins.int read_replica_count: (integer) - The number of read replicas for the online store. Defaults to 0
53103
- """
53104
- pulumi.set(__self__, "capacity", capacity)
53105
- pulumi.set(__self__, "creation_time", creation_time)
53106
- pulumi.set(__self__, "creator", creator)
53107
- pulumi.set(__self__, "name", name)
53108
- pulumi.set(__self__, "state", state)
53109
- if read_replica_count is not None:
53110
- pulumi.set(__self__, "read_replica_count", read_replica_count)
53111
-
53112
- @_builtins.property
53113
- @pulumi.getter
53114
- def capacity(self) -> _builtins.str:
53115
- """
53116
- (string) - The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
53117
- """
53118
- return pulumi.get(self, "capacity")
53119
-
53120
- @_builtins.property
53121
- @pulumi.getter(name="creationTime")
53122
- def creation_time(self) -> _builtins.str:
54380
+ catalog_name: _builtins.str,
54381
+ online_store_name: _builtins.str,
54382
+ schema_name: _builtins.str,
54383
+ table_name_prefix: _builtins.str):
53123
54384
  """
53124
- (string) - The timestamp when the online store was created
54385
+ :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
54386
+ :param _builtins.str online_store_name: (string) - The name of the target online store
54387
+ :param _builtins.str schema_name: (string) - The Unity Catalog schema name
54388
+ :param _builtins.str table_name_prefix: (string) - Prefix for Unity Catalog table name.
54389
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53125
54390
  """
53126
- return pulumi.get(self, "creation_time")
54391
+ pulumi.set(__self__, "catalog_name", catalog_name)
54392
+ pulumi.set(__self__, "online_store_name", online_store_name)
54393
+ pulumi.set(__self__, "schema_name", schema_name)
54394
+ pulumi.set(__self__, "table_name_prefix", table_name_prefix)
53127
54395
 
53128
54396
  @_builtins.property
53129
- @pulumi.getter
53130
- def creator(self) -> _builtins.str:
54397
+ @pulumi.getter(name="catalogName")
54398
+ def catalog_name(self) -> _builtins.str:
53131
54399
  """
53132
- (string) - The email of the creator of the online store
54400
+ (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53133
54401
  """
53134
- return pulumi.get(self, "creator")
54402
+ return pulumi.get(self, "catalog_name")
53135
54403
 
53136
54404
  @_builtins.property
53137
- @pulumi.getter
53138
- def name(self) -> _builtins.str:
54405
+ @pulumi.getter(name="onlineStoreName")
54406
+ def online_store_name(self) -> _builtins.str:
53139
54407
  """
53140
- (string) - The name of the online store. This is the unique identifier for the online store
54408
+ (string) - The name of the target online store
53141
54409
  """
53142
- return pulumi.get(self, "name")
54410
+ return pulumi.get(self, "online_store_name")
53143
54411
 
53144
54412
  @_builtins.property
53145
- @pulumi.getter
53146
- def state(self) -> _builtins.str:
54413
+ @pulumi.getter(name="schemaName")
54414
+ def schema_name(self) -> _builtins.str:
53147
54415
  """
53148
- (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
54416
+ (string) - The Unity Catalog schema name
53149
54417
  """
53150
- return pulumi.get(self, "state")
54418
+ return pulumi.get(self, "schema_name")
53151
54419
 
53152
54420
  @_builtins.property
53153
- @pulumi.getter(name="readReplicaCount")
53154
- def read_replica_count(self) -> Optional[_builtins.int]:
54421
+ @pulumi.getter(name="tableNamePrefix")
54422
+ def table_name_prefix(self) -> _builtins.str:
53155
54423
  """
53156
- (integer) - The number of read replicas for the online store. Defaults to 0
54424
+ (string) - Prefix for Unity Catalog table name.
54425
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53157
54426
  """
53158
- return pulumi.get(self, "read_replica_count")
54427
+ return pulumi.get(self, "table_name_prefix")
53159
54428
 
53160
54429
 
53161
54430
  @pulumi.output_type
53162
54431
  class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureResult(dict):
53163
54432
  def __init__(__self__, *,
54433
+ cron_schedule: _builtins.str,
53164
54434
  feature_name: _builtins.str,
53165
54435
  last_materialization_time: _builtins.str,
53166
54436
  materialized_feature_id: _builtins.str,
@@ -53169,15 +54439,17 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureResult(dict):
53169
54439
  pipeline_schedule_state: _builtins.str,
53170
54440
  table_name: _builtins.str):
53171
54441
  """
54442
+ :param _builtins.str cron_schedule: (string) - The quartz cron expression that defines the schedule of the materialization pipeline. The schedule is evaluated in the UTC timezone
53172
54443
  :param _builtins.str feature_name: Filter by feature name. If specified, only materialized features materialized from this feature will be returned
53173
54444
  :param _builtins.str last_materialization_time: (string) - The timestamp when the pipeline last ran and updated the materialized feature values.
53174
54445
  If the pipeline has not run yet, this field will be null
53175
54446
  :param _builtins.str materialized_feature_id: (string) - Unique identifier for the materialized feature
53176
54447
  :param 'GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOfflineStoreConfigArgs' offline_store_config: (OfflineStoreConfig)
53177
- :param 'GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOnlineStoreConfigArgs' online_store_config: (OnlineStore)
54448
+ :param 'GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOnlineStoreConfigArgs' online_store_config: (OnlineStoreConfig)
53178
54449
  :param _builtins.str pipeline_schedule_state: (string) - The schedule state of the materialization pipeline. Possible values are: `ACTIVE`, `PAUSED`, `SNAPSHOT`
53179
54450
  :param _builtins.str table_name: (string) - The fully qualified Unity Catalog path to the table containing the materialized feature (Delta table or Lakebase table). Output only
53180
54451
  """
54452
+ pulumi.set(__self__, "cron_schedule", cron_schedule)
53181
54453
  pulumi.set(__self__, "feature_name", feature_name)
53182
54454
  pulumi.set(__self__, "last_materialization_time", last_materialization_time)
53183
54455
  pulumi.set(__self__, "materialized_feature_id", materialized_feature_id)
@@ -53186,6 +54458,14 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureResult(dict):
53186
54458
  pulumi.set(__self__, "pipeline_schedule_state", pipeline_schedule_state)
53187
54459
  pulumi.set(__self__, "table_name", table_name)
53188
54460
 
54461
+ @_builtins.property
54462
+ @pulumi.getter(name="cronSchedule")
54463
+ def cron_schedule(self) -> _builtins.str:
54464
+ """
54465
+ (string) - The quartz cron expression that defines the schedule of the materialization pipeline. The schedule is evaluated in the UTC timezone
54466
+ """
54467
+ return pulumi.get(self, "cron_schedule")
54468
+
53189
54469
  @_builtins.property
53190
54470
  @pulumi.getter(name="featureName")
53191
54471
  def feature_name(self) -> _builtins.str:
@@ -53223,7 +54503,7 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureResult(dict):
53223
54503
  @pulumi.getter(name="onlineStoreConfig")
53224
54504
  def online_store_config(self) -> 'outputs.GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOnlineStoreConfigResult':
53225
54505
  """
53226
- (OnlineStore)
54506
+ (OnlineStoreConfig)
53227
54507
  """
53228
54508
  return pulumi.get(self, "online_store_config")
53229
54509
 
@@ -53251,10 +54531,10 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOfflineStoreCo
53251
54531
  schema_name: _builtins.str,
53252
54532
  table_name_prefix: _builtins.str):
53253
54533
  """
53254
- :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name
54534
+ :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53255
54535
  :param _builtins.str schema_name: (string) - The Unity Catalog schema name
53256
54536
  :param _builtins.str table_name_prefix: (string) - Prefix for Unity Catalog table name.
53257
- The materialized feature will be stored in a table with this prefix and a generated postfix
54537
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53258
54538
  """
53259
54539
  pulumi.set(__self__, "catalog_name", catalog_name)
53260
54540
  pulumi.set(__self__, "schema_name", schema_name)
@@ -53264,7 +54544,7 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOfflineStoreCo
53264
54544
  @pulumi.getter(name="catalogName")
53265
54545
  def catalog_name(self) -> _builtins.str:
53266
54546
  """
53267
- (string) - The Unity Catalog catalog name
54547
+ (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53268
54548
  """
53269
54549
  return pulumi.get(self, "catalog_name")
53270
54550
 
@@ -53281,7 +54561,7 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOfflineStoreCo
53281
54561
  def table_name_prefix(self) -> _builtins.str:
53282
54562
  """
53283
54563
  (string) - Prefix for Unity Catalog table name.
53284
- The materialized feature will be stored in a table with this prefix and a generated postfix
54564
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53285
54565
  """
53286
54566
  return pulumi.get(self, "table_name_prefix")
53287
54567
 
@@ -53289,75 +54569,54 @@ class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOfflineStoreCo
53289
54569
  @pulumi.output_type
53290
54570
  class GetFeatureEngineeringMaterializedFeaturesMaterializedFeatureOnlineStoreConfigResult(dict):
53291
54571
  def __init__(__self__, *,
53292
- capacity: _builtins.str,
53293
- creation_time: _builtins.str,
53294
- creator: _builtins.str,
53295
- name: _builtins.str,
53296
- state: _builtins.str,
53297
- read_replica_count: Optional[_builtins.int] = None):
53298
- """
53299
- :param _builtins.str capacity: (string) - The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
53300
- :param _builtins.str creation_time: (string) - The timestamp when the online store was created
53301
- :param _builtins.str creator: (string) - The email of the creator of the online store
53302
- :param _builtins.str name: (string) - The name of the online store. This is the unique identifier for the online store
53303
- :param _builtins.str state: (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
53304
- :param _builtins.int read_replica_count: (integer) - The number of read replicas for the online store. Defaults to 0
53305
- """
53306
- pulumi.set(__self__, "capacity", capacity)
53307
- pulumi.set(__self__, "creation_time", creation_time)
53308
- pulumi.set(__self__, "creator", creator)
53309
- pulumi.set(__self__, "name", name)
53310
- pulumi.set(__self__, "state", state)
53311
- if read_replica_count is not None:
53312
- pulumi.set(__self__, "read_replica_count", read_replica_count)
53313
-
53314
- @_builtins.property
53315
- @pulumi.getter
53316
- def capacity(self) -> _builtins.str:
53317
- """
53318
- (string) - The capacity of the online store. Valid values are "CU_1", "CU_2", "CU_4", "CU_8"
53319
- """
53320
- return pulumi.get(self, "capacity")
53321
-
53322
- @_builtins.property
53323
- @pulumi.getter(name="creationTime")
53324
- def creation_time(self) -> _builtins.str:
54572
+ catalog_name: _builtins.str,
54573
+ online_store_name: _builtins.str,
54574
+ schema_name: _builtins.str,
54575
+ table_name_prefix: _builtins.str):
53325
54576
  """
53326
- (string) - The timestamp when the online store was created
54577
+ :param _builtins.str catalog_name: (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
54578
+ :param _builtins.str online_store_name: (string) - The name of the target online store
54579
+ :param _builtins.str schema_name: (string) - The Unity Catalog schema name
54580
+ :param _builtins.str table_name_prefix: (string) - Prefix for Unity Catalog table name.
54581
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53327
54582
  """
53328
- return pulumi.get(self, "creation_time")
54583
+ pulumi.set(__self__, "catalog_name", catalog_name)
54584
+ pulumi.set(__self__, "online_store_name", online_store_name)
54585
+ pulumi.set(__self__, "schema_name", schema_name)
54586
+ pulumi.set(__self__, "table_name_prefix", table_name_prefix)
53329
54587
 
53330
54588
  @_builtins.property
53331
- @pulumi.getter
53332
- def creator(self) -> _builtins.str:
54589
+ @pulumi.getter(name="catalogName")
54590
+ def catalog_name(self) -> _builtins.str:
53333
54591
  """
53334
- (string) - The email of the creator of the online store
54592
+ (string) - The Unity Catalog catalog name. This name is also used as the Lakebase logical database name
53335
54593
  """
53336
- return pulumi.get(self, "creator")
54594
+ return pulumi.get(self, "catalog_name")
53337
54595
 
53338
54596
  @_builtins.property
53339
- @pulumi.getter
53340
- def name(self) -> _builtins.str:
54597
+ @pulumi.getter(name="onlineStoreName")
54598
+ def online_store_name(self) -> _builtins.str:
53341
54599
  """
53342
- (string) - The name of the online store. This is the unique identifier for the online store
54600
+ (string) - The name of the target online store
53343
54601
  """
53344
- return pulumi.get(self, "name")
54602
+ return pulumi.get(self, "online_store_name")
53345
54603
 
53346
54604
  @_builtins.property
53347
- @pulumi.getter
53348
- def state(self) -> _builtins.str:
54605
+ @pulumi.getter(name="schemaName")
54606
+ def schema_name(self) -> _builtins.str:
53349
54607
  """
53350
- (string) - The current state of the online store. Possible values are: `AVAILABLE`, `DELETING`, `FAILING_OVER`, `STARTING`, `STOPPED`, `UPDATING`
54608
+ (string) - The Unity Catalog schema name
53351
54609
  """
53352
- return pulumi.get(self, "state")
54610
+ return pulumi.get(self, "schema_name")
53353
54611
 
53354
54612
  @_builtins.property
53355
- @pulumi.getter(name="readReplicaCount")
53356
- def read_replica_count(self) -> Optional[_builtins.int]:
54613
+ @pulumi.getter(name="tableNamePrefix")
54614
+ def table_name_prefix(self) -> _builtins.str:
53357
54615
  """
53358
- (integer) - The number of read replicas for the online store. Defaults to 0
54616
+ (string) - Prefix for Unity Catalog table name.
54617
+ The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix
53359
54618
  """
53360
- return pulumi.get(self, "read_replica_count")
54619
+ return pulumi.get(self, "table_name_prefix")
53361
54620
 
53362
54621
 
53363
54622
  @pulumi.output_type
@@ -62973,6 +64232,24 @@ class GetNotebookPathsNotebookPathListResult(dict):
62973
64232
  return pulumi.get(self, "path")
62974
64233
 
62975
64234
 
64235
+ @pulumi.output_type
64236
+ class GetNotebookProviderConfigResult(dict):
64237
+ def __init__(__self__, *,
64238
+ workspace_id: _builtins.str):
64239
+ """
64240
+ :param _builtins.str workspace_id: Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
64241
+ """
64242
+ pulumi.set(__self__, "workspace_id", workspace_id)
64243
+
64244
+ @_builtins.property
64245
+ @pulumi.getter(name="workspaceId")
64246
+ def workspace_id(self) -> _builtins.str:
64247
+ """
64248
+ Workspace ID which the resource belongs to. This workspace must be part of the account which the provider is configured with.
64249
+ """
64250
+ return pulumi.get(self, "workspace_id")
64251
+
64252
+
62976
64253
  @pulumi.output_type
62977
64254
  class GetNotificationDestinationsNotificationDestinationResult(dict):
62978
64255
  def __init__(__self__, *,
@@ -65201,6 +66478,119 @@ class GetServicePrincipalFederationPolicyOidcPolicyResult(dict):
65201
66478
  return pulumi.get(self, "subject_claim")
65202
66479
 
65203
66480
 
66481
+ @pulumi.output_type
66482
+ class GetServicePrincipalsServicePrincipalResult(dict):
66483
+ def __init__(__self__, *,
66484
+ acl_principal_id: _builtins.str,
66485
+ active: _builtins.bool,
66486
+ application_id: _builtins.str,
66487
+ display_name: _builtins.str,
66488
+ external_id: _builtins.str,
66489
+ home: _builtins.str,
66490
+ id: _builtins.str,
66491
+ repos: _builtins.str,
66492
+ scim_id: _builtins.str,
66493
+ sp_id: _builtins.str):
66494
+ """
66495
+ :param _builtins.str acl_principal_id: identifier for use in databricks_access_control_rule_set, e.g. `servicePrincipals/00000000-0000-0000-0000-000000000000`.
66496
+ :param _builtins.bool active: Whether service principal is active or not.
66497
+ :param _builtins.str application_id: Application ID of the service principal.
66498
+ :param _builtins.str display_name: Display name of the service principal, e.g. `Foo SPN`.
66499
+ :param _builtins.str external_id: ID of the service principal in an external identity provider.
66500
+ :param _builtins.str home: Home folder of the service principal, e.g. `/Users/11111111-2222-3333-4444-555666777888`.
66501
+ :param _builtins.str id: The id of the service principal (SCIM ID).
66502
+ :param _builtins.str repos: Repos location of the service principal, e.g. `/Repos/11111111-2222-3333-4444-555666777888`.
66503
+ :param _builtins.str scim_id: same as `id`.
66504
+ """
66505
+ pulumi.set(__self__, "acl_principal_id", acl_principal_id)
66506
+ pulumi.set(__self__, "active", active)
66507
+ pulumi.set(__self__, "application_id", application_id)
66508
+ pulumi.set(__self__, "display_name", display_name)
66509
+ pulumi.set(__self__, "external_id", external_id)
66510
+ pulumi.set(__self__, "home", home)
66511
+ pulumi.set(__self__, "id", id)
66512
+ pulumi.set(__self__, "repos", repos)
66513
+ pulumi.set(__self__, "scim_id", scim_id)
66514
+ pulumi.set(__self__, "sp_id", sp_id)
66515
+
66516
+ @_builtins.property
66517
+ @pulumi.getter(name="aclPrincipalId")
66518
+ def acl_principal_id(self) -> _builtins.str:
66519
+ """
66520
+ identifier for use in databricks_access_control_rule_set, e.g. `servicePrincipals/00000000-0000-0000-0000-000000000000`.
66521
+ """
66522
+ return pulumi.get(self, "acl_principal_id")
66523
+
66524
+ @_builtins.property
66525
+ @pulumi.getter
66526
+ def active(self) -> _builtins.bool:
66527
+ """
66528
+ Whether service principal is active or not.
66529
+ """
66530
+ return pulumi.get(self, "active")
66531
+
66532
+ @_builtins.property
66533
+ @pulumi.getter(name="applicationId")
66534
+ def application_id(self) -> _builtins.str:
66535
+ """
66536
+ Application ID of the service principal.
66537
+ """
66538
+ return pulumi.get(self, "application_id")
66539
+
66540
+ @_builtins.property
66541
+ @pulumi.getter(name="displayName")
66542
+ def display_name(self) -> _builtins.str:
66543
+ """
66544
+ Display name of the service principal, e.g. `Foo SPN`.
66545
+ """
66546
+ return pulumi.get(self, "display_name")
66547
+
66548
+ @_builtins.property
66549
+ @pulumi.getter(name="externalId")
66550
+ def external_id(self) -> _builtins.str:
66551
+ """
66552
+ ID of the service principal in an external identity provider.
66553
+ """
66554
+ return pulumi.get(self, "external_id")
66555
+
66556
+ @_builtins.property
66557
+ @pulumi.getter
66558
+ def home(self) -> _builtins.str:
66559
+ """
66560
+ Home folder of the service principal, e.g. `/Users/11111111-2222-3333-4444-555666777888`.
66561
+ """
66562
+ return pulumi.get(self, "home")
66563
+
66564
+ @_builtins.property
66565
+ @pulumi.getter
66566
+ def id(self) -> _builtins.str:
66567
+ """
66568
+ The id of the service principal (SCIM ID).
66569
+ """
66570
+ return pulumi.get(self, "id")
66571
+
66572
+ @_builtins.property
66573
+ @pulumi.getter
66574
+ def repos(self) -> _builtins.str:
66575
+ """
66576
+ Repos location of the service principal, e.g. `/Repos/11111111-2222-3333-4444-555666777888`.
66577
+ """
66578
+ return pulumi.get(self, "repos")
66579
+
66580
+ @_builtins.property
66581
+ @pulumi.getter(name="scimId")
66582
+ def scim_id(self) -> _builtins.str:
66583
+ """
66584
+ same as `id`.
66585
+ """
66586
+ return pulumi.get(self, "scim_id")
66587
+
66588
+ @_builtins.property
66589
+ @pulumi.getter(name="spId")
66590
+ def sp_id(self) -> _builtins.str:
66591
+ return pulumi.get(self, "sp_id")
66592
+
66593
+
65204
66594
  @pulumi.output_type
65205
66595
  class GetServingEndpointsEndpointResult(dict):
65206
66596
  def __init__(__self__, *,
@@ -68259,6 +69649,342 @@ class GetTagPolicyValueResult(dict):
68259
69649
  return pulumi.get(self, "name")
68260
69650
 
68261
69651
 
69652
+ @pulumi.output_type
69653
+ class GetUsersUserResult(dict):
69654
+ def __init__(__self__, *,
69655
+ active: Optional[_builtins.bool] = None,
69656
+ display_name: Optional[_builtins.str] = None,
69657
+ emails: Optional[Sequence['outputs.GetUsersUserEmailResult']] = None,
69658
+ entitlements: Optional[Sequence['outputs.GetUsersUserEntitlementResult']] = None,
69659
+ external_id: Optional[_builtins.str] = None,
69660
+ groups: Optional[Sequence['outputs.GetUsersUserGroupResult']] = None,
69661
+ id: Optional[_builtins.str] = None,
69662
+ name: Optional['outputs.GetUsersUserNameResult'] = None,
69663
+ roles: Optional[Sequence['outputs.GetUsersUserRoleResult']] = None,
69664
+ schemas: Optional[Sequence[_builtins.str]] = None,
69665
+ user_name: Optional[_builtins.str] = None):
69666
+ """
69667
+ :param _builtins.bool active: Boolean that represents if this user is active.
69668
+ :param Sequence['GetUsersUserEmailArgs'] emails: All the emails associated with the Databricks user.
69669
+ :param Sequence['GetUsersUserEntitlementArgs'] entitlements: Entitlements assigned to the user.
69670
+ :param Sequence['GetUsersUserGroupArgs'] groups: Indicates if the user is part of any groups.
69671
+ :param _builtins.str id: The ID of the user.
69672
+ - `userName` - The username of the user.
69673
+ :param 'GetUsersUserNameArgs' name: - `givenName` - Given name of the Databricks user.
69674
+ - `familyName` - Family name of the Databricks user.
69675
+ - `displayName` - The display name of the user.
69676
+ :param Sequence['GetUsersUserRoleArgs'] roles: Indicates if the user has any associated roles.
69677
+ :param Sequence[_builtins.str] schemas: The schema of the user.
69678
+ - `externalId` - Reserved for future use.
69679
+ """
69680
+ if active is not None:
69681
+ pulumi.set(__self__, "active", active)
69682
+ if display_name is not None:
69683
+ pulumi.set(__self__, "display_name", display_name)
69684
+ if emails is not None:
69685
+ pulumi.set(__self__, "emails", emails)
69686
+ if entitlements is not None:
69687
+ pulumi.set(__self__, "entitlements", entitlements)
69688
+ if external_id is not None:
69689
+ pulumi.set(__self__, "external_id", external_id)
69690
+ if groups is not None:
69691
+ pulumi.set(__self__, "groups", groups)
69692
+ if id is not None:
69693
+ pulumi.set(__self__, "id", id)
69694
+ if name is not None:
69695
+ pulumi.set(__self__, "name", name)
69696
+ if roles is not None:
69697
+ pulumi.set(__self__, "roles", roles)
69698
+ if schemas is not None:
69699
+ pulumi.set(__self__, "schemas", schemas)
69700
+ if user_name is not None:
69701
+ pulumi.set(__self__, "user_name", user_name)
69702
+
69703
+ @_builtins.property
69704
+ @pulumi.getter
69705
+ def active(self) -> Optional[_builtins.bool]:
69706
+ """
69707
+ Boolean that represents if this user is active.
69708
+ """
69709
+ return pulumi.get(self, "active")
69710
+
69711
+ @_builtins.property
69712
+ @pulumi.getter(name="displayName")
69713
+ def display_name(self) -> Optional[_builtins.str]:
69714
+ return pulumi.get(self, "display_name")
69715
+
69716
+ @_builtins.property
69717
+ @pulumi.getter
69718
+ def emails(self) -> Optional[Sequence['outputs.GetUsersUserEmailResult']]:
69719
+ """
69720
+ All the emails associated with the Databricks user.
69721
+ """
69722
+ return pulumi.get(self, "emails")
69723
+
69724
+ @_builtins.property
69725
+ @pulumi.getter
69726
+ def entitlements(self) -> Optional[Sequence['outputs.GetUsersUserEntitlementResult']]:
69727
+ """
69728
+ Entitlements assigned to the user.
69729
+ """
69730
+ return pulumi.get(self, "entitlements")
69731
+
69732
+ @_builtins.property
69733
+ @pulumi.getter(name="externalId")
69734
+ def external_id(self) -> Optional[_builtins.str]:
69735
+ return pulumi.get(self, "external_id")
69736
+
69737
+ @_builtins.property
69738
+ @pulumi.getter
69739
+ def groups(self) -> Optional[Sequence['outputs.GetUsersUserGroupResult']]:
69740
+ """
69741
+ Indicates if the user is part of any groups.
69742
+ """
69743
+ return pulumi.get(self, "groups")
69744
+
69745
+ @_builtins.property
69746
+ @pulumi.getter
69747
+ def id(self) -> Optional[_builtins.str]:
69748
+ """
69749
+ The ID of the user.
69750
+ - `userName` - The username of the user.
69751
+ """
69752
+ return pulumi.get(self, "id")
69753
+
69754
+ @_builtins.property
69755
+ @pulumi.getter
69756
+ def name(self) -> Optional['outputs.GetUsersUserNameResult']:
69757
+ """
69758
+ - `givenName` - Given name of the Databricks user.
69759
+ - `familyName` - Family name of the Databricks user.
69760
+ - `displayName` - The display name of the user.
69761
+ """
69762
+ return pulumi.get(self, "name")
69763
+
69764
+ @_builtins.property
69765
+ @pulumi.getter
69766
+ def roles(self) -> Optional[Sequence['outputs.GetUsersUserRoleResult']]:
69767
+ """
69768
+ Indicates if the user has any associated roles.
69769
+ """
69770
+ return pulumi.get(self, "roles")
69771
+
69772
+ @_builtins.property
69773
+ @pulumi.getter
69774
+ def schemas(self) -> Optional[Sequence[_builtins.str]]:
69775
+ """
69776
+ The schema of the user.
69777
+ - `externalId` - Reserved for future use.
69778
+ """
69779
+ return pulumi.get(self, "schemas")
69780
+
69781
+ @_builtins.property
69782
+ @pulumi.getter(name="userName")
69783
+ def user_name(self) -> Optional[_builtins.str]:
69784
+ return pulumi.get(self, "user_name")
69785
+
69786
+
69787
+ @pulumi.output_type
69788
+ class GetUsersUserEmailResult(dict):
69789
+ def __init__(__self__, *,
69790
+ display: Optional[_builtins.str] = None,
69791
+ primary: Optional[_builtins.bool] = None,
69792
+ ref: Optional[_builtins.str] = None,
69793
+ type: Optional[_builtins.str] = None,
69794
+ value: Optional[_builtins.str] = None):
69795
+ if display is not None:
69796
+ pulumi.set(__self__, "display", display)
69797
+ if primary is not None:
69798
+ pulumi.set(__self__, "primary", primary)
69799
+ if ref is not None:
69800
+ pulumi.set(__self__, "ref", ref)
69801
+ if type is not None:
69802
+ pulumi.set(__self__, "type", type)
69803
+ if value is not None:
69804
+ pulumi.set(__self__, "value", value)
69805
+
69806
+ @_builtins.property
69807
+ @pulumi.getter
69808
+ def display(self) -> Optional[_builtins.str]:
69809
+ return pulumi.get(self, "display")
69810
+
69811
+ @_builtins.property
69812
+ @pulumi.getter
69813
+ def primary(self) -> Optional[_builtins.bool]:
69814
+ return pulumi.get(self, "primary")
69815
+
69816
+ @_builtins.property
69817
+ @pulumi.getter
69818
+ def ref(self) -> Optional[_builtins.str]:
69819
+ return pulumi.get(self, "ref")
69820
+
69821
+ @_builtins.property
69822
+ @pulumi.getter
69823
+ def type(self) -> Optional[_builtins.str]:
69824
+ return pulumi.get(self, "type")
69825
+
69826
+ @_builtins.property
69827
+ @pulumi.getter
69828
+ def value(self) -> Optional[_builtins.str]:
69829
+ return pulumi.get(self, "value")
69830
+
69831
+
69832
+ @pulumi.output_type
69833
+ class GetUsersUserEntitlementResult(dict):
69834
+ def __init__(__self__, *,
69835
+ display: Optional[_builtins.str] = None,
69836
+ primary: Optional[_builtins.bool] = None,
69837
+ ref: Optional[_builtins.str] = None,
69838
+ type: Optional[_builtins.str] = None,
69839
+ value: Optional[_builtins.str] = None):
69840
+ if display is not None:
69841
+ pulumi.set(__self__, "display", display)
69842
+ if primary is not None:
69843
+ pulumi.set(__self__, "primary", primary)
69844
+ if ref is not None:
69845
+ pulumi.set(__self__, "ref", ref)
69846
+ if type is not None:
69847
+ pulumi.set(__self__, "type", type)
69848
+ if value is not None:
69849
+ pulumi.set(__self__, "value", value)
69850
+
69851
+ @_builtins.property
69852
+ @pulumi.getter
69853
+ def display(self) -> Optional[_builtins.str]:
69854
+ return pulumi.get(self, "display")
69855
+
69856
+ @_builtins.property
69857
+ @pulumi.getter
69858
+ def primary(self) -> Optional[_builtins.bool]:
69859
+ return pulumi.get(self, "primary")
69860
+
69861
+ @_builtins.property
69862
+ @pulumi.getter
69863
+ def ref(self) -> Optional[_builtins.str]:
69864
+ return pulumi.get(self, "ref")
69865
+
69866
+ @_builtins.property
69867
+ @pulumi.getter
69868
+ def type(self) -> Optional[_builtins.str]:
69869
+ return pulumi.get(self, "type")
69870
+
69871
+ @_builtins.property
69872
+ @pulumi.getter
69873
+ def value(self) -> Optional[_builtins.str]:
69874
+ return pulumi.get(self, "value")
69875
+
69876
+
69877
+ @pulumi.output_type
69878
+ class GetUsersUserGroupResult(dict):
69879
+ def __init__(__self__, *,
69880
+ display: Optional[_builtins.str] = None,
69881
+ primary: Optional[_builtins.bool] = None,
69882
+ ref: Optional[_builtins.str] = None,
69883
+ type: Optional[_builtins.str] = None,
69884
+ value: Optional[_builtins.str] = None):
69885
+ if display is not None:
69886
+ pulumi.set(__self__, "display", display)
69887
+ if primary is not None:
69888
+ pulumi.set(__self__, "primary", primary)
69889
+ if ref is not None:
69890
+ pulumi.set(__self__, "ref", ref)
69891
+ if type is not None:
69892
+ pulumi.set(__self__, "type", type)
69893
+ if value is not None:
69894
+ pulumi.set(__self__, "value", value)
69895
+
69896
+ @_builtins.property
69897
+ @pulumi.getter
69898
+ def display(self) -> Optional[_builtins.str]:
69899
+ return pulumi.get(self, "display")
69900
+
69901
+ @_builtins.property
69902
+ @pulumi.getter
69903
+ def primary(self) -> Optional[_builtins.bool]:
69904
+ return pulumi.get(self, "primary")
69905
+
69906
+ @_builtins.property
69907
+ @pulumi.getter
69908
+ def ref(self) -> Optional[_builtins.str]:
69909
+ return pulumi.get(self, "ref")
69910
+
69911
+ @_builtins.property
69912
+ @pulumi.getter
69913
+ def type(self) -> Optional[_builtins.str]:
69914
+ return pulumi.get(self, "type")
69915
+
69916
+ @_builtins.property
69917
+ @pulumi.getter
69918
+ def value(self) -> Optional[_builtins.str]:
69919
+ return pulumi.get(self, "value")
69920
+
69921
+
69922
+ @pulumi.output_type
69923
+ class GetUsersUserNameResult(dict):
69924
+ def __init__(__self__, *,
69925
+ family_name: Optional[_builtins.str] = None,
69926
+ given_name: Optional[_builtins.str] = None):
69927
+ if family_name is not None:
69928
+ pulumi.set(__self__, "family_name", family_name)
69929
+ if given_name is not None:
69930
+ pulumi.set(__self__, "given_name", given_name)
69931
+
69932
+ @_builtins.property
69933
+ @pulumi.getter(name="familyName")
69934
+ def family_name(self) -> Optional[_builtins.str]:
69935
+ return pulumi.get(self, "family_name")
69936
+
69937
+ @_builtins.property
69938
+ @pulumi.getter(name="givenName")
69939
+ def given_name(self) -> Optional[_builtins.str]:
69940
+ return pulumi.get(self, "given_name")
69941
+
69942
+
69943
+ @pulumi.output_type
69944
+ class GetUsersUserRoleResult(dict):
69945
+ def __init__(__self__, *,
69946
+ display: Optional[_builtins.str] = None,
69947
+ primary: Optional[_builtins.bool] = None,
69948
+ ref: Optional[_builtins.str] = None,
69949
+ type: Optional[_builtins.str] = None,
69950
+ value: Optional[_builtins.str] = None):
69951
+ if display is not None:
69952
+ pulumi.set(__self__, "display", display)
69953
+ if primary is not None:
69954
+ pulumi.set(__self__, "primary", primary)
69955
+ if ref is not None:
69956
+ pulumi.set(__self__, "ref", ref)
69957
+ if type is not None:
69958
+ pulumi.set(__self__, "type", type)
69959
+ if value is not None:
69960
+ pulumi.set(__self__, "value", value)
69961
+
69962
+ @_builtins.property
69963
+ @pulumi.getter
69964
+ def display(self) -> Optional[_builtins.str]:
69965
+ return pulumi.get(self, "display")
69966
+
69967
+ @_builtins.property
69968
+ @pulumi.getter
69969
+ def primary(self) -> Optional[_builtins.bool]:
69970
+ return pulumi.get(self, "primary")
69971
+
69972
+ @_builtins.property
69973
+ @pulumi.getter
69974
+ def ref(self) -> Optional[_builtins.str]:
69975
+ return pulumi.get(self, "ref")
69976
+
69977
+ @_builtins.property
69978
+ @pulumi.getter
69979
+ def type(self) -> Optional[_builtins.str]:
69980
+ return pulumi.get(self, "type")
69981
+
69982
+ @_builtins.property
69983
+ @pulumi.getter
69984
+ def value(self) -> Optional[_builtins.str]:
69985
+ return pulumi.get(self, "value")
69986
+
69987
+
68262
69988
  @pulumi.output_type
68263
69989
  class GetViewsProviderConfigResult(dict):
68264
69990
  def __init__(__self__, *,
@@ -68558,6 +70284,57 @@ class GetVolumesProviderConfigResult(dict):
68558
70284
  return pulumi.get(self, "workspace_id")
68559
70285
 
68560
70286
 
70287
+ @pulumi.output_type
70288
+ class GetWorkspaceEntityTagAssignmentsTagAssignmentResult(dict):
70289
+ def __init__(__self__, *,
70290
+ entity_id: _builtins.str,
70291
+ entity_type: _builtins.str,
70292
+ tag_key: _builtins.str,
70293
+ tag_value: _builtins.str):
70294
+ """
70295
+ :param _builtins.str entity_id: The identifier of the entity to which the tag is assigned
70296
+ :param _builtins.str entity_type: The type of entity to which the tag is assigned. Allowed values are dashboards, geniespaces
70297
+ :param _builtins.str tag_key: (string) - The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed
70298
+ :param _builtins.str tag_value: (string) - The value of the tag
70299
+ """
70300
+ pulumi.set(__self__, "entity_id", entity_id)
70301
+ pulumi.set(__self__, "entity_type", entity_type)
70302
+ pulumi.set(__self__, "tag_key", tag_key)
70303
+ pulumi.set(__self__, "tag_value", tag_value)
70304
+
70305
+ @_builtins.property
70306
+ @pulumi.getter(name="entityId")
70307
+ def entity_id(self) -> _builtins.str:
70308
+ """
70309
+ The identifier of the entity to which the tag is assigned
70310
+ """
70311
+ return pulumi.get(self, "entity_id")
70312
+
70313
+ @_builtins.property
70314
+ @pulumi.getter(name="entityType")
70315
+ def entity_type(self) -> _builtins.str:
70316
+ """
70317
+ The type of entity to which the tag is assigned. Allowed values are dashboards, geniespaces
70318
+ """
70319
+ return pulumi.get(self, "entity_type")
70320
+
70321
+ @_builtins.property
70322
+ @pulumi.getter(name="tagKey")
70323
+ def tag_key(self) -> _builtins.str:
70324
+ """
70325
+ (string) - The key of the tag. The characters , . : / - = and leading/trailing spaces are not allowed
70326
+ """
70327
+ return pulumi.get(self, "tag_key")
70328
+
70329
+ @_builtins.property
70330
+ @pulumi.getter(name="tagValue")
70331
+ def tag_value(self) -> _builtins.str:
70332
+ """
70333
+ (string) - The value of the tag
70334
+ """
70335
+ return pulumi.get(self, "tag_value")
70336
+
70337
+
68561
70338
  @pulumi.output_type
68562
70339
  class GetWorkspaceSettingV2AibiDashboardEmbeddingAccessPolicyResult(dict):
68563
70340
  def __init__(__self__, *,