databricks-sdk 0.32.2__py3-none-any.whl → 0.33.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.
Potentially problematic release.
This version of databricks-sdk might be problematic. Click here for more details.
- databricks/sdk/__init__.py +9 -0
- databricks/sdk/credentials_provider.py +91 -6
- databricks/sdk/service/apps.py +154 -106
- databricks/sdk/service/catalog.py +266 -7
- databricks/sdk/service/compute.py +68 -18
- databricks/sdk/service/dashboards.py +32 -9
- databricks/sdk/service/jobs.py +98 -86
- databricks/sdk/service/pipelines.py +58 -1
- databricks/sdk/service/serving.py +326 -10
- databricks/sdk/service/settings.py +394 -1
- databricks/sdk/service/sql.py +3 -243
- databricks/sdk/service/workspace.py +266 -105
- databricks/sdk/version.py +1 -1
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/METADATA +1 -1
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/RECORD +19 -19
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/LICENSE +0 -0
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/NOTICE +0 -0
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/WHEEL +0 -0
- {databricks_sdk-0.32.2.dist-info → databricks_sdk-0.33.0.dist-info}/top_level.txt +0 -0
|
@@ -25,6 +25,9 @@ class CreatePipeline:
|
|
|
25
25
|
allow_duplicate_names: Optional[bool] = None
|
|
26
26
|
"""If false, deployment will fail if name conflicts with that of another pipeline."""
|
|
27
27
|
|
|
28
|
+
budget_policy_id: Optional[str] = None
|
|
29
|
+
"""Budget policy of this pipeline."""
|
|
30
|
+
|
|
28
31
|
catalog: Optional[str] = None
|
|
29
32
|
"""A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified,
|
|
30
33
|
tables in this pipeline are published to a `target` schema inside `catalog` (for example,
|
|
@@ -79,6 +82,10 @@ class CreatePipeline:
|
|
|
79
82
|
photon: Optional[bool] = None
|
|
80
83
|
"""Whether Photon is enabled for this pipeline."""
|
|
81
84
|
|
|
85
|
+
schema: Optional[str] = None
|
|
86
|
+
"""The default schema (database) where tables are read from or published to. The presence of this
|
|
87
|
+
field implies that the pipeline is in direct publishing mode."""
|
|
88
|
+
|
|
82
89
|
serverless: Optional[bool] = None
|
|
83
90
|
"""Whether serverless compute is enabled for this pipeline."""
|
|
84
91
|
|
|
@@ -97,6 +104,7 @@ class CreatePipeline:
|
|
|
97
104
|
"""Serializes the CreatePipeline into a dictionary suitable for use as a JSON request body."""
|
|
98
105
|
body = {}
|
|
99
106
|
if self.allow_duplicate_names is not None: body['allow_duplicate_names'] = self.allow_duplicate_names
|
|
107
|
+
if self.budget_policy_id is not None: body['budget_policy_id'] = self.budget_policy_id
|
|
100
108
|
if self.catalog is not None: body['catalog'] = self.catalog
|
|
101
109
|
if self.channel is not None: body['channel'] = self.channel
|
|
102
110
|
if self.clusters: body['clusters'] = [v.as_dict() for v in self.clusters]
|
|
@@ -114,6 +122,7 @@ class CreatePipeline:
|
|
|
114
122
|
if self.name is not None: body['name'] = self.name
|
|
115
123
|
if self.notifications: body['notifications'] = [v.as_dict() for v in self.notifications]
|
|
116
124
|
if self.photon is not None: body['photon'] = self.photon
|
|
125
|
+
if self.schema is not None: body['schema'] = self.schema
|
|
117
126
|
if self.serverless is not None: body['serverless'] = self.serverless
|
|
118
127
|
if self.storage is not None: body['storage'] = self.storage
|
|
119
128
|
if self.target is not None: body['target'] = self.target
|
|
@@ -124,6 +133,7 @@ class CreatePipeline:
|
|
|
124
133
|
def from_dict(cls, d: Dict[str, any]) -> CreatePipeline:
|
|
125
134
|
"""Deserializes the CreatePipeline from a dictionary."""
|
|
126
135
|
return cls(allow_duplicate_names=d.get('allow_duplicate_names', None),
|
|
136
|
+
budget_policy_id=d.get('budget_policy_id', None),
|
|
127
137
|
catalog=d.get('catalog', None),
|
|
128
138
|
channel=d.get('channel', None),
|
|
129
139
|
clusters=_repeated_dict(d, 'clusters', PipelineCluster),
|
|
@@ -141,6 +151,7 @@ class CreatePipeline:
|
|
|
141
151
|
name=d.get('name', None),
|
|
142
152
|
notifications=_repeated_dict(d, 'notifications', Notifications),
|
|
143
153
|
photon=d.get('photon', None),
|
|
154
|
+
schema=d.get('schema', None),
|
|
144
155
|
serverless=d.get('serverless', None),
|
|
145
156
|
storage=d.get('storage', None),
|
|
146
157
|
target=d.get('target', None),
|
|
@@ -236,6 +247,9 @@ class EditPipeline:
|
|
|
236
247
|
allow_duplicate_names: Optional[bool] = None
|
|
237
248
|
"""If false, deployment will fail if name has changed and conflicts the name of another pipeline."""
|
|
238
249
|
|
|
250
|
+
budget_policy_id: Optional[str] = None
|
|
251
|
+
"""Budget policy of this pipeline."""
|
|
252
|
+
|
|
239
253
|
catalog: Optional[str] = None
|
|
240
254
|
"""A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified,
|
|
241
255
|
tables in this pipeline are published to a `target` schema inside `catalog` (for example,
|
|
@@ -295,6 +309,10 @@ class EditPipeline:
|
|
|
295
309
|
pipeline_id: Optional[str] = None
|
|
296
310
|
"""Unique identifier for this pipeline."""
|
|
297
311
|
|
|
312
|
+
schema: Optional[str] = None
|
|
313
|
+
"""The default schema (database) where tables are read from or published to. The presence of this
|
|
314
|
+
field implies that the pipeline is in direct publishing mode."""
|
|
315
|
+
|
|
298
316
|
serverless: Optional[bool] = None
|
|
299
317
|
"""Whether serverless compute is enabled for this pipeline."""
|
|
300
318
|
|
|
@@ -313,6 +331,7 @@ class EditPipeline:
|
|
|
313
331
|
"""Serializes the EditPipeline into a dictionary suitable for use as a JSON request body."""
|
|
314
332
|
body = {}
|
|
315
333
|
if self.allow_duplicate_names is not None: body['allow_duplicate_names'] = self.allow_duplicate_names
|
|
334
|
+
if self.budget_policy_id is not None: body['budget_policy_id'] = self.budget_policy_id
|
|
316
335
|
if self.catalog is not None: body['catalog'] = self.catalog
|
|
317
336
|
if self.channel is not None: body['channel'] = self.channel
|
|
318
337
|
if self.clusters: body['clusters'] = [v.as_dict() for v in self.clusters]
|
|
@@ -332,6 +351,7 @@ class EditPipeline:
|
|
|
332
351
|
if self.notifications: body['notifications'] = [v.as_dict() for v in self.notifications]
|
|
333
352
|
if self.photon is not None: body['photon'] = self.photon
|
|
334
353
|
if self.pipeline_id is not None: body['pipeline_id'] = self.pipeline_id
|
|
354
|
+
if self.schema is not None: body['schema'] = self.schema
|
|
335
355
|
if self.serverless is not None: body['serverless'] = self.serverless
|
|
336
356
|
if self.storage is not None: body['storage'] = self.storage
|
|
337
357
|
if self.target is not None: body['target'] = self.target
|
|
@@ -342,6 +362,7 @@ class EditPipeline:
|
|
|
342
362
|
def from_dict(cls, d: Dict[str, any]) -> EditPipeline:
|
|
343
363
|
"""Deserializes the EditPipeline from a dictionary."""
|
|
344
364
|
return cls(allow_duplicate_names=d.get('allow_duplicate_names', None),
|
|
365
|
+
budget_policy_id=d.get('budget_policy_id', None),
|
|
345
366
|
catalog=d.get('catalog', None),
|
|
346
367
|
channel=d.get('channel', None),
|
|
347
368
|
clusters=_repeated_dict(d, 'clusters', PipelineCluster),
|
|
@@ -360,6 +381,7 @@ class EditPipeline:
|
|
|
360
381
|
notifications=_repeated_dict(d, 'notifications', Notifications),
|
|
361
382
|
photon=d.get('photon', None),
|
|
362
383
|
pipeline_id=d.get('pipeline_id', None),
|
|
384
|
+
schema=d.get('schema', None),
|
|
363
385
|
serverless=d.get('serverless', None),
|
|
364
386
|
storage=d.get('storage', None),
|
|
365
387
|
target=d.get('target', None),
|
|
@@ -477,6 +499,9 @@ class GetPipelineResponse:
|
|
|
477
499
|
creator_user_name: Optional[str] = None
|
|
478
500
|
"""The username of the pipeline creator."""
|
|
479
501
|
|
|
502
|
+
effective_budget_policy_id: Optional[str] = None
|
|
503
|
+
"""Serverless budget policy ID of this pipeline."""
|
|
504
|
+
|
|
480
505
|
health: Optional[GetPipelineResponseHealth] = None
|
|
481
506
|
"""The health of a pipeline."""
|
|
482
507
|
|
|
@@ -507,6 +532,8 @@ class GetPipelineResponse:
|
|
|
507
532
|
if self.cause is not None: body['cause'] = self.cause
|
|
508
533
|
if self.cluster_id is not None: body['cluster_id'] = self.cluster_id
|
|
509
534
|
if self.creator_user_name is not None: body['creator_user_name'] = self.creator_user_name
|
|
535
|
+
if self.effective_budget_policy_id is not None:
|
|
536
|
+
body['effective_budget_policy_id'] = self.effective_budget_policy_id
|
|
510
537
|
if self.health is not None: body['health'] = self.health.value
|
|
511
538
|
if self.last_modified is not None: body['last_modified'] = self.last_modified
|
|
512
539
|
if self.latest_updates: body['latest_updates'] = [v.as_dict() for v in self.latest_updates]
|
|
@@ -523,6 +550,7 @@ class GetPipelineResponse:
|
|
|
523
550
|
return cls(cause=d.get('cause', None),
|
|
524
551
|
cluster_id=d.get('cluster_id', None),
|
|
525
552
|
creator_user_name=d.get('creator_user_name', None),
|
|
553
|
+
effective_budget_policy_id=d.get('effective_budget_policy_id', None),
|
|
526
554
|
health=_enum(d, 'health', GetPipelineResponseHealth),
|
|
527
555
|
last_modified=d.get('last_modified', None),
|
|
528
556
|
latest_updates=_repeated_dict(d, 'latest_updates', UpdateStateInfo),
|
|
@@ -1376,6 +1404,9 @@ class PipelinePermissionsRequest:
|
|
|
1376
1404
|
|
|
1377
1405
|
@dataclass
|
|
1378
1406
|
class PipelineSpec:
|
|
1407
|
+
budget_policy_id: Optional[str] = None
|
|
1408
|
+
"""Budget policy of this pipeline."""
|
|
1409
|
+
|
|
1379
1410
|
catalog: Optional[str] = None
|
|
1380
1411
|
"""A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified,
|
|
1381
1412
|
tables in this pipeline are published to a `target` schema inside `catalog` (for example,
|
|
@@ -1428,6 +1459,10 @@ class PipelineSpec:
|
|
|
1428
1459
|
photon: Optional[bool] = None
|
|
1429
1460
|
"""Whether Photon is enabled for this pipeline."""
|
|
1430
1461
|
|
|
1462
|
+
schema: Optional[str] = None
|
|
1463
|
+
"""The default schema (database) where tables are read from or published to. The presence of this
|
|
1464
|
+
field implies that the pipeline is in direct publishing mode."""
|
|
1465
|
+
|
|
1431
1466
|
serverless: Optional[bool] = None
|
|
1432
1467
|
"""Whether serverless compute is enabled for this pipeline."""
|
|
1433
1468
|
|
|
@@ -1445,6 +1480,7 @@ class PipelineSpec:
|
|
|
1445
1480
|
def as_dict(self) -> dict:
|
|
1446
1481
|
"""Serializes the PipelineSpec into a dictionary suitable for use as a JSON request body."""
|
|
1447
1482
|
body = {}
|
|
1483
|
+
if self.budget_policy_id is not None: body['budget_policy_id'] = self.budget_policy_id
|
|
1448
1484
|
if self.catalog is not None: body['catalog'] = self.catalog
|
|
1449
1485
|
if self.channel is not None: body['channel'] = self.channel
|
|
1450
1486
|
if self.clusters: body['clusters'] = [v.as_dict() for v in self.clusters]
|
|
@@ -1461,6 +1497,7 @@ class PipelineSpec:
|
|
|
1461
1497
|
if self.name is not None: body['name'] = self.name
|
|
1462
1498
|
if self.notifications: body['notifications'] = [v.as_dict() for v in self.notifications]
|
|
1463
1499
|
if self.photon is not None: body['photon'] = self.photon
|
|
1500
|
+
if self.schema is not None: body['schema'] = self.schema
|
|
1464
1501
|
if self.serverless is not None: body['serverless'] = self.serverless
|
|
1465
1502
|
if self.storage is not None: body['storage'] = self.storage
|
|
1466
1503
|
if self.target is not None: body['target'] = self.target
|
|
@@ -1470,7 +1507,8 @@ class PipelineSpec:
|
|
|
1470
1507
|
@classmethod
|
|
1471
1508
|
def from_dict(cls, d: Dict[str, any]) -> PipelineSpec:
|
|
1472
1509
|
"""Deserializes the PipelineSpec from a dictionary."""
|
|
1473
|
-
return cls(
|
|
1510
|
+
return cls(budget_policy_id=d.get('budget_policy_id', None),
|
|
1511
|
+
catalog=d.get('catalog', None),
|
|
1474
1512
|
channel=d.get('channel', None),
|
|
1475
1513
|
clusters=_repeated_dict(d, 'clusters', PipelineCluster),
|
|
1476
1514
|
configuration=d.get('configuration', None),
|
|
@@ -1486,6 +1524,7 @@ class PipelineSpec:
|
|
|
1486
1524
|
name=d.get('name', None),
|
|
1487
1525
|
notifications=_repeated_dict(d, 'notifications', Notifications),
|
|
1488
1526
|
photon=d.get('photon', None),
|
|
1527
|
+
schema=d.get('schema', None),
|
|
1489
1528
|
serverless=d.get('serverless', None),
|
|
1490
1529
|
storage=d.get('storage', None),
|
|
1491
1530
|
target=d.get('target', None),
|
|
@@ -2098,6 +2137,7 @@ class PipelinesAPI:
|
|
|
2098
2137
|
def create(self,
|
|
2099
2138
|
*,
|
|
2100
2139
|
allow_duplicate_names: Optional[bool] = None,
|
|
2140
|
+
budget_policy_id: Optional[str] = None,
|
|
2101
2141
|
catalog: Optional[str] = None,
|
|
2102
2142
|
channel: Optional[str] = None,
|
|
2103
2143
|
clusters: Optional[List[PipelineCluster]] = None,
|
|
@@ -2115,6 +2155,7 @@ class PipelinesAPI:
|
|
|
2115
2155
|
name: Optional[str] = None,
|
|
2116
2156
|
notifications: Optional[List[Notifications]] = None,
|
|
2117
2157
|
photon: Optional[bool] = None,
|
|
2158
|
+
schema: Optional[str] = None,
|
|
2118
2159
|
serverless: Optional[bool] = None,
|
|
2119
2160
|
storage: Optional[str] = None,
|
|
2120
2161
|
target: Optional[str] = None,
|
|
@@ -2126,6 +2167,8 @@ class PipelinesAPI:
|
|
|
2126
2167
|
|
|
2127
2168
|
:param allow_duplicate_names: bool (optional)
|
|
2128
2169
|
If false, deployment will fail if name conflicts with that of another pipeline.
|
|
2170
|
+
:param budget_policy_id: str (optional)
|
|
2171
|
+
Budget policy of this pipeline.
|
|
2129
2172
|
:param catalog: str (optional)
|
|
2130
2173
|
A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables
|
|
2131
2174
|
in this pipeline are published to a `target` schema inside `catalog` (for example,
|
|
@@ -2162,6 +2205,9 @@ class PipelinesAPI:
|
|
|
2162
2205
|
List of notification settings for this pipeline.
|
|
2163
2206
|
:param photon: bool (optional)
|
|
2164
2207
|
Whether Photon is enabled for this pipeline.
|
|
2208
|
+
:param schema: str (optional)
|
|
2209
|
+
The default schema (database) where tables are read from or published to. The presence of this field
|
|
2210
|
+
implies that the pipeline is in direct publishing mode.
|
|
2165
2211
|
:param serverless: bool (optional)
|
|
2166
2212
|
Whether serverless compute is enabled for this pipeline.
|
|
2167
2213
|
:param storage: str (optional)
|
|
@@ -2176,6 +2222,7 @@ class PipelinesAPI:
|
|
|
2176
2222
|
"""
|
|
2177
2223
|
body = {}
|
|
2178
2224
|
if allow_duplicate_names is not None: body['allow_duplicate_names'] = allow_duplicate_names
|
|
2225
|
+
if budget_policy_id is not None: body['budget_policy_id'] = budget_policy_id
|
|
2179
2226
|
if catalog is not None: body['catalog'] = catalog
|
|
2180
2227
|
if channel is not None: body['channel'] = channel
|
|
2181
2228
|
if clusters is not None: body['clusters'] = [v.as_dict() for v in clusters]
|
|
@@ -2193,6 +2240,7 @@ class PipelinesAPI:
|
|
|
2193
2240
|
if name is not None: body['name'] = name
|
|
2194
2241
|
if notifications is not None: body['notifications'] = [v.as_dict() for v in notifications]
|
|
2195
2242
|
if photon is not None: body['photon'] = photon
|
|
2243
|
+
if schema is not None: body['schema'] = schema
|
|
2196
2244
|
if serverless is not None: body['serverless'] = serverless
|
|
2197
2245
|
if storage is not None: body['storage'] = storage
|
|
2198
2246
|
if target is not None: body['target'] = target
|
|
@@ -2506,6 +2554,7 @@ class PipelinesAPI:
|
|
|
2506
2554
|
pipeline_id: str,
|
|
2507
2555
|
*,
|
|
2508
2556
|
allow_duplicate_names: Optional[bool] = None,
|
|
2557
|
+
budget_policy_id: Optional[str] = None,
|
|
2509
2558
|
catalog: Optional[str] = None,
|
|
2510
2559
|
channel: Optional[str] = None,
|
|
2511
2560
|
clusters: Optional[List[PipelineCluster]] = None,
|
|
@@ -2523,6 +2572,7 @@ class PipelinesAPI:
|
|
|
2523
2572
|
name: Optional[str] = None,
|
|
2524
2573
|
notifications: Optional[List[Notifications]] = None,
|
|
2525
2574
|
photon: Optional[bool] = None,
|
|
2575
|
+
schema: Optional[str] = None,
|
|
2526
2576
|
serverless: Optional[bool] = None,
|
|
2527
2577
|
storage: Optional[str] = None,
|
|
2528
2578
|
target: Optional[str] = None,
|
|
@@ -2535,6 +2585,8 @@ class PipelinesAPI:
|
|
|
2535
2585
|
Unique identifier for this pipeline.
|
|
2536
2586
|
:param allow_duplicate_names: bool (optional)
|
|
2537
2587
|
If false, deployment will fail if name has changed and conflicts the name of another pipeline.
|
|
2588
|
+
:param budget_policy_id: str (optional)
|
|
2589
|
+
Budget policy of this pipeline.
|
|
2538
2590
|
:param catalog: str (optional)
|
|
2539
2591
|
A catalog in Unity Catalog to publish data from this pipeline to. If `target` is specified, tables
|
|
2540
2592
|
in this pipeline are published to a `target` schema inside `catalog` (for example,
|
|
@@ -2573,6 +2625,9 @@ class PipelinesAPI:
|
|
|
2573
2625
|
List of notification settings for this pipeline.
|
|
2574
2626
|
:param photon: bool (optional)
|
|
2575
2627
|
Whether Photon is enabled for this pipeline.
|
|
2628
|
+
:param schema: str (optional)
|
|
2629
|
+
The default schema (database) where tables are read from or published to. The presence of this field
|
|
2630
|
+
implies that the pipeline is in direct publishing mode.
|
|
2576
2631
|
:param serverless: bool (optional)
|
|
2577
2632
|
Whether serverless compute is enabled for this pipeline.
|
|
2578
2633
|
:param storage: str (optional)
|
|
@@ -2587,6 +2642,7 @@ class PipelinesAPI:
|
|
|
2587
2642
|
"""
|
|
2588
2643
|
body = {}
|
|
2589
2644
|
if allow_duplicate_names is not None: body['allow_duplicate_names'] = allow_duplicate_names
|
|
2645
|
+
if budget_policy_id is not None: body['budget_policy_id'] = budget_policy_id
|
|
2590
2646
|
if catalog is not None: body['catalog'] = catalog
|
|
2591
2647
|
if channel is not None: body['channel'] = channel
|
|
2592
2648
|
if clusters is not None: body['clusters'] = [v.as_dict() for v in clusters]
|
|
@@ -2604,6 +2660,7 @@ class PipelinesAPI:
|
|
|
2604
2660
|
if name is not None: body['name'] = name
|
|
2605
2661
|
if notifications is not None: body['notifications'] = [v.as_dict() for v in notifications]
|
|
2606
2662
|
if photon is not None: body['photon'] = photon
|
|
2663
|
+
if schema is not None: body['schema'] = schema
|
|
2607
2664
|
if serverless is not None: body['serverless'] = serverless
|
|
2608
2665
|
if storage is not None: body['storage'] = storage
|
|
2609
2666
|
if target is not None: body['target'] = target
|