databricks-sdk 0.50.0__py3-none-any.whl → 0.52.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 +15 -5
- databricks/sdk/config.py +2 -3
- databricks/sdk/credentials_provider.py +61 -15
- databricks/sdk/oidc_token_supplier.py +28 -0
- databricks/sdk/service/apps.py +8 -10
- databricks/sdk/service/billing.py +3 -3
- databricks/sdk/service/catalog.py +51 -4
- databricks/sdk/service/cleanrooms.py +9 -14
- databricks/sdk/service/compute.py +138 -6
- databricks/sdk/service/dashboards.py +24 -29
- databricks/sdk/service/files.py +2 -1
- databricks/sdk/service/jobs.py +73 -18
- databricks/sdk/service/ml.py +19 -2
- databricks/sdk/service/oauth2.py +8 -13
- databricks/sdk/service/pipelines.py +55 -27
- databricks/sdk/service/serving.py +11 -14
- databricks/sdk/service/settings.py +214 -125
- databricks/sdk/service/sql.py +744 -6
- databricks/sdk/service/vectorsearch.py +355 -159
- databricks/sdk/version.py +1 -1
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/METADATA +11 -11
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/RECORD +26 -25
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/WHEEL +1 -1
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/licenses/LICENSE +0 -0
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/licenses/NOTICE +0 -0
- {databricks_sdk-0.50.0.dist-info → databricks_sdk-0.52.0.dist-info}/top_level.txt +0 -0
|
@@ -635,6 +635,7 @@ class ComplianceStandard(Enum):
|
|
|
635
635
|
IRAP_PROTECTED = "IRAP_PROTECTED"
|
|
636
636
|
ISMAP = "ISMAP"
|
|
637
637
|
ITAR_EAR = "ITAR_EAR"
|
|
638
|
+
K_FSI = "K_FSI"
|
|
638
639
|
NONE = "NONE"
|
|
639
640
|
PCI_DSS = "PCI_DSS"
|
|
640
641
|
|
|
@@ -768,18 +769,20 @@ class CreateIpAccessListResponse:
|
|
|
768
769
|
|
|
769
770
|
|
|
770
771
|
@dataclass
|
|
771
|
-
class
|
|
772
|
+
class CreateNetworkConnectivityConfiguration:
|
|
773
|
+
"""Properties of the new network connectivity configuration."""
|
|
774
|
+
|
|
772
775
|
name: str
|
|
773
776
|
"""The name of the network connectivity configuration. The name can contain alphanumeric
|
|
774
777
|
characters, hyphens, and underscores. The length must be between 3 and 30 characters. The name
|
|
775
|
-
must match the regular expression
|
|
778
|
+
must match the regular expression ^[0-9a-zA-Z-_]{3,30}$"""
|
|
776
779
|
|
|
777
780
|
region: str
|
|
778
781
|
"""The region for the network connectivity configuration. Only workspaces in the same region can be
|
|
779
782
|
attached to the network connectivity configuration."""
|
|
780
783
|
|
|
781
784
|
def as_dict(self) -> dict:
|
|
782
|
-
"""Serializes the
|
|
785
|
+
"""Serializes the CreateNetworkConnectivityConfiguration into a dictionary suitable for use as a JSON request body."""
|
|
783
786
|
body = {}
|
|
784
787
|
if self.name is not None:
|
|
785
788
|
body["name"] = self.name
|
|
@@ -788,7 +791,7 @@ class CreateNetworkConnectivityConfigRequest:
|
|
|
788
791
|
return body
|
|
789
792
|
|
|
790
793
|
def as_shallow_dict(self) -> dict:
|
|
791
|
-
"""Serializes the
|
|
794
|
+
"""Serializes the CreateNetworkConnectivityConfiguration into a shallow dictionary of its immediate attributes."""
|
|
792
795
|
body = {}
|
|
793
796
|
if self.name is not None:
|
|
794
797
|
body["name"] = self.name
|
|
@@ -797,8 +800,8 @@ class CreateNetworkConnectivityConfigRequest:
|
|
|
797
800
|
return body
|
|
798
801
|
|
|
799
802
|
@classmethod
|
|
800
|
-
def from_dict(cls, d: Dict[str, Any]) ->
|
|
801
|
-
"""Deserializes the
|
|
803
|
+
def from_dict(cls, d: Dict[str, Any]) -> CreateNetworkConnectivityConfiguration:
|
|
804
|
+
"""Deserializes the CreateNetworkConnectivityConfiguration from a dictionary."""
|
|
802
805
|
return cls(name=d.get("name", None), region=d.get("region", None))
|
|
803
806
|
|
|
804
807
|
|
|
@@ -913,59 +916,58 @@ class CreateOboTokenResponse:
|
|
|
913
916
|
|
|
914
917
|
|
|
915
918
|
@dataclass
|
|
916
|
-
class
|
|
919
|
+
class CreatePrivateEndpointRule:
|
|
920
|
+
"""Properties of the new private endpoint rule. Note that you must approve the endpoint in Azure
|
|
921
|
+
portal after initialization."""
|
|
922
|
+
|
|
917
923
|
resource_id: str
|
|
918
924
|
"""The Azure resource ID of the target resource."""
|
|
919
925
|
|
|
920
|
-
|
|
921
|
-
"""
|
|
922
|
-
|
|
926
|
+
domain_names: Optional[List[str]] = None
|
|
927
|
+
"""Only used by private endpoints to customer-managed resources.
|
|
928
|
+
|
|
929
|
+
Domain names of target private link service. When updating this field, the full list of target
|
|
930
|
+
domain_names must be specified."""
|
|
923
931
|
|
|
924
|
-
|
|
925
|
-
"""
|
|
932
|
+
group_id: Optional[str] = None
|
|
933
|
+
"""Only used by private endpoints to Azure first-party services. Enum: blob | dfs | sqlServer |
|
|
934
|
+
mysqlServer
|
|
935
|
+
|
|
936
|
+
The sub-resource type (group ID) of the target resource. Note that to connect to workspace root
|
|
937
|
+
storage (root DBFS), you need two endpoints, one for blob and one for dfs."""
|
|
926
938
|
|
|
927
939
|
def as_dict(self) -> dict:
|
|
928
|
-
"""Serializes the
|
|
940
|
+
"""Serializes the CreatePrivateEndpointRule into a dictionary suitable for use as a JSON request body."""
|
|
929
941
|
body = {}
|
|
942
|
+
if self.domain_names:
|
|
943
|
+
body["domain_names"] = [v for v in self.domain_names]
|
|
930
944
|
if self.group_id is not None:
|
|
931
|
-
body["group_id"] = self.group_id
|
|
932
|
-
if self.network_connectivity_config_id is not None:
|
|
933
|
-
body["network_connectivity_config_id"] = self.network_connectivity_config_id
|
|
945
|
+
body["group_id"] = self.group_id
|
|
934
946
|
if self.resource_id is not None:
|
|
935
947
|
body["resource_id"] = self.resource_id
|
|
936
948
|
return body
|
|
937
949
|
|
|
938
950
|
def as_shallow_dict(self) -> dict:
|
|
939
|
-
"""Serializes the
|
|
951
|
+
"""Serializes the CreatePrivateEndpointRule into a shallow dictionary of its immediate attributes."""
|
|
940
952
|
body = {}
|
|
953
|
+
if self.domain_names:
|
|
954
|
+
body["domain_names"] = self.domain_names
|
|
941
955
|
if self.group_id is not None:
|
|
942
956
|
body["group_id"] = self.group_id
|
|
943
|
-
if self.network_connectivity_config_id is not None:
|
|
944
|
-
body["network_connectivity_config_id"] = self.network_connectivity_config_id
|
|
945
957
|
if self.resource_id is not None:
|
|
946
958
|
body["resource_id"] = self.resource_id
|
|
947
959
|
return body
|
|
948
960
|
|
|
949
961
|
@classmethod
|
|
950
|
-
def from_dict(cls, d: Dict[str, Any]) ->
|
|
951
|
-
"""Deserializes the
|
|
962
|
+
def from_dict(cls, d: Dict[str, Any]) -> CreatePrivateEndpointRule:
|
|
963
|
+
"""Deserializes the CreatePrivateEndpointRule from a dictionary."""
|
|
952
964
|
return cls(
|
|
953
|
-
|
|
954
|
-
|
|
965
|
+
domain_names=d.get("domain_names", None),
|
|
966
|
+
group_id=d.get("group_id", None),
|
|
955
967
|
resource_id=d.get("resource_id", None),
|
|
956
968
|
)
|
|
957
969
|
|
|
958
970
|
|
|
959
|
-
class CreatePrivateEndpointRuleRequestGroupId(Enum):
|
|
960
|
-
"""The sub-resource type (group ID) of the target resource. Note that to connect to workspace root
|
|
961
|
-
storage (root DBFS), you need two endpoints, one for `blob` and one for `dfs`."""
|
|
962
|
-
|
|
963
|
-
BLOB = "blob"
|
|
964
|
-
DFS = "dfs"
|
|
965
|
-
MYSQL_SERVER = "mysqlServer"
|
|
966
|
-
SQL_SERVER = "sqlServer"
|
|
967
|
-
|
|
968
|
-
|
|
969
971
|
@dataclass
|
|
970
972
|
class CreateTokenRequest:
|
|
971
973
|
comment: Optional[str] = None
|
|
@@ -1961,6 +1963,14 @@ class EgressNetworkPolicyInternetAccessPolicyStorageDestinationStorageDestinatio
|
|
|
1961
1963
|
GOOGLE_CLOUD_STORAGE = "GOOGLE_CLOUD_STORAGE"
|
|
1962
1964
|
|
|
1963
1965
|
|
|
1966
|
+
class EgressResourceType(Enum):
|
|
1967
|
+
"""The target resources that are supported by Network Connectivity Config. Note: some egress types
|
|
1968
|
+
can support general types that are not defined in EgressResourceType. E.g.: Azure private
|
|
1969
|
+
endpoint supports private link enabled Azure services."""
|
|
1970
|
+
|
|
1971
|
+
AZURE_BLOB_STORAGE = "AZURE_BLOB_STORAGE"
|
|
1972
|
+
|
|
1973
|
+
|
|
1964
1974
|
@dataclass
|
|
1965
1975
|
class EmailConfig:
|
|
1966
1976
|
addresses: Optional[List[str]] = None
|
|
@@ -2721,6 +2731,8 @@ class ListIpAccessListResponse:
|
|
|
2721
2731
|
|
|
2722
2732
|
@dataclass
|
|
2723
2733
|
class ListNccAzurePrivateEndpointRulesResponse:
|
|
2734
|
+
"""The private endpoint rule list was successfully retrieved."""
|
|
2735
|
+
|
|
2724
2736
|
items: Optional[List[NccAzurePrivateEndpointRule]] = None
|
|
2725
2737
|
|
|
2726
2738
|
next_page_token: Optional[str] = None
|
|
@@ -2756,6 +2768,8 @@ class ListNccAzurePrivateEndpointRulesResponse:
|
|
|
2756
2768
|
|
|
2757
2769
|
@dataclass
|
|
2758
2770
|
class ListNetworkConnectivityConfigurationsResponse:
|
|
2771
|
+
"""The network connectivity configuration list was successfully retrieved."""
|
|
2772
|
+
|
|
2759
2773
|
items: Optional[List[NetworkConnectivityConfiguration]] = None
|
|
2760
2774
|
|
|
2761
2775
|
next_page_token: Optional[str] = None
|
|
@@ -2991,17 +3005,19 @@ class NccAwsStableIpRule:
|
|
|
2991
3005
|
|
|
2992
3006
|
@dataclass
|
|
2993
3007
|
class NccAzurePrivateEndpointRule:
|
|
3008
|
+
"""Properties of the new private endpoint rule. Note that you must approve the endpoint in Azure
|
|
3009
|
+
portal after initialization."""
|
|
3010
|
+
|
|
2994
3011
|
connection_state: Optional[NccAzurePrivateEndpointRuleConnectionState] = None
|
|
2995
3012
|
"""The current status of this private endpoint. The private endpoint rules are effective only if
|
|
2996
|
-
the connection state is
|
|
2997
|
-
resources in the Azure portal before they take effect.
|
|
2998
|
-
|
|
2999
|
-
|
|
3000
|
-
|
|
3001
|
-
|
|
3002
|
-
|
|
3003
|
-
|
|
3004
|
-
be deleted for clean-up."""
|
|
3013
|
+
the connection state is ESTABLISHED. Remember that you must approve new endpoints on your
|
|
3014
|
+
resources in the Azure portal before they take effect. The possible values are: - INIT:
|
|
3015
|
+
(deprecated) The endpoint has been created and pending approval. - PENDING: The endpoint has
|
|
3016
|
+
been created and pending approval. - ESTABLISHED: The endpoint has been approved and is ready to
|
|
3017
|
+
use in your serverless compute resources. - REJECTED: Connection was rejected by the private
|
|
3018
|
+
link resource owner. - DISCONNECTED: Connection was removed by the private link resource owner,
|
|
3019
|
+
the private endpoint becomes informative and should be deleted for clean-up. - EXPIRED: If the
|
|
3020
|
+
endpoint was created but not approved in 14 days, it will be EXPIRED."""
|
|
3005
3021
|
|
|
3006
3022
|
creation_time: Optional[int] = None
|
|
3007
3023
|
"""Time in epoch milliseconds when this object was created."""
|
|
@@ -3012,12 +3028,21 @@ class NccAzurePrivateEndpointRule:
|
|
|
3012
3028
|
deactivated_at: Optional[int] = None
|
|
3013
3029
|
"""Time in epoch milliseconds when this object was deactivated."""
|
|
3014
3030
|
|
|
3031
|
+
domain_names: Optional[List[str]] = None
|
|
3032
|
+
"""Only used by private endpoints to customer-managed resources.
|
|
3033
|
+
|
|
3034
|
+
Domain names of target private link service. When updating this field, the full list of target
|
|
3035
|
+
domain_names must be specified."""
|
|
3036
|
+
|
|
3015
3037
|
endpoint_name: Optional[str] = None
|
|
3016
3038
|
"""The name of the Azure private endpoint resource."""
|
|
3017
3039
|
|
|
3018
|
-
group_id: Optional[
|
|
3019
|
-
"""
|
|
3020
|
-
|
|
3040
|
+
group_id: Optional[str] = None
|
|
3041
|
+
"""Only used by private endpoints to Azure first-party services. Enum: blob | dfs | sqlServer |
|
|
3042
|
+
mysqlServer
|
|
3043
|
+
|
|
3044
|
+
The sub-resource type (group ID) of the target resource. Note that to connect to workspace root
|
|
3045
|
+
storage (root DBFS), you need two endpoints, one for blob and one for dfs."""
|
|
3021
3046
|
|
|
3022
3047
|
network_connectivity_config_id: Optional[str] = None
|
|
3023
3048
|
"""The ID of a network connectivity configuration, which is the parent resource of this private
|
|
@@ -3043,10 +3068,12 @@ class NccAzurePrivateEndpointRule:
|
|
|
3043
3068
|
body["deactivated"] = self.deactivated
|
|
3044
3069
|
if self.deactivated_at is not None:
|
|
3045
3070
|
body["deactivated_at"] = self.deactivated_at
|
|
3071
|
+
if self.domain_names:
|
|
3072
|
+
body["domain_names"] = [v for v in self.domain_names]
|
|
3046
3073
|
if self.endpoint_name is not None:
|
|
3047
3074
|
body["endpoint_name"] = self.endpoint_name
|
|
3048
3075
|
if self.group_id is not None:
|
|
3049
|
-
body["group_id"] = self.group_id
|
|
3076
|
+
body["group_id"] = self.group_id
|
|
3050
3077
|
if self.network_connectivity_config_id is not None:
|
|
3051
3078
|
body["network_connectivity_config_id"] = self.network_connectivity_config_id
|
|
3052
3079
|
if self.resource_id is not None:
|
|
@@ -3068,6 +3095,8 @@ class NccAzurePrivateEndpointRule:
|
|
|
3068
3095
|
body["deactivated"] = self.deactivated
|
|
3069
3096
|
if self.deactivated_at is not None:
|
|
3070
3097
|
body["deactivated_at"] = self.deactivated_at
|
|
3098
|
+
if self.domain_names:
|
|
3099
|
+
body["domain_names"] = self.domain_names
|
|
3071
3100
|
if self.endpoint_name is not None:
|
|
3072
3101
|
body["endpoint_name"] = self.endpoint_name
|
|
3073
3102
|
if self.group_id is not None:
|
|
@@ -3090,8 +3119,9 @@ class NccAzurePrivateEndpointRule:
|
|
|
3090
3119
|
creation_time=d.get("creation_time", None),
|
|
3091
3120
|
deactivated=d.get("deactivated", None),
|
|
3092
3121
|
deactivated_at=d.get("deactivated_at", None),
|
|
3122
|
+
domain_names=d.get("domain_names", None),
|
|
3093
3123
|
endpoint_name=d.get("endpoint_name", None),
|
|
3094
|
-
group_id=
|
|
3124
|
+
group_id=d.get("group_id", None),
|
|
3095
3125
|
network_connectivity_config_id=d.get("network_connectivity_config_id", None),
|
|
3096
3126
|
resource_id=d.get("resource_id", None),
|
|
3097
3127
|
rule_id=d.get("rule_id", None),
|
|
@@ -3100,34 +3130,15 @@ class NccAzurePrivateEndpointRule:
|
|
|
3100
3130
|
|
|
3101
3131
|
|
|
3102
3132
|
class NccAzurePrivateEndpointRuleConnectionState(Enum):
|
|
3103
|
-
"""The current status of this private endpoint. The private endpoint rules are effective only if
|
|
3104
|
-
the connection state is `ESTABLISHED`. Remember that you must approve new endpoints on your
|
|
3105
|
-
resources in the Azure portal before they take effect.
|
|
3106
|
-
|
|
3107
|
-
The possible values are: - INIT: (deprecated) The endpoint has been created and pending
|
|
3108
|
-
approval. - PENDING: The endpoint has been created and pending approval. - ESTABLISHED: The
|
|
3109
|
-
endpoint has been approved and is ready to use in your serverless compute resources. - REJECTED:
|
|
3110
|
-
Connection was rejected by the private link resource owner. - DISCONNECTED: Connection was
|
|
3111
|
-
removed by the private link resource owner, the private endpoint becomes informative and should
|
|
3112
|
-
be deleted for clean-up."""
|
|
3113
3133
|
|
|
3114
3134
|
DISCONNECTED = "DISCONNECTED"
|
|
3115
3135
|
ESTABLISHED = "ESTABLISHED"
|
|
3136
|
+
EXPIRED = "EXPIRED"
|
|
3116
3137
|
INIT = "INIT"
|
|
3117
3138
|
PENDING = "PENDING"
|
|
3118
3139
|
REJECTED = "REJECTED"
|
|
3119
3140
|
|
|
3120
3141
|
|
|
3121
|
-
class NccAzurePrivateEndpointRuleGroupId(Enum):
|
|
3122
|
-
"""The sub-resource type (group ID) of the target resource. Note that to connect to workspace root
|
|
3123
|
-
storage (root DBFS), you need two endpoints, one for `blob` and one for `dfs`."""
|
|
3124
|
-
|
|
3125
|
-
BLOB = "blob"
|
|
3126
|
-
DFS = "dfs"
|
|
3127
|
-
MYSQL_SERVER = "mysqlServer"
|
|
3128
|
-
SQL_SERVER = "sqlServer"
|
|
3129
|
-
|
|
3130
|
-
|
|
3131
3142
|
@dataclass
|
|
3132
3143
|
class NccAzureServiceEndpointRule:
|
|
3133
3144
|
"""The stable Azure service endpoints. You can configure the firewall of your Azure resources to
|
|
@@ -3138,9 +3149,9 @@ class NccAzureServiceEndpointRule:
|
|
|
3138
3149
|
resources."""
|
|
3139
3150
|
|
|
3140
3151
|
target_region: Optional[str] = None
|
|
3141
|
-
"""The Azure region in which this service endpoint rule applies
|
|
3152
|
+
"""The Azure region in which this service endpoint rule applies.."""
|
|
3142
3153
|
|
|
3143
|
-
target_services: Optional[List[
|
|
3154
|
+
target_services: Optional[List[EgressResourceType]] = None
|
|
3144
3155
|
"""The Azure services to which this service endpoint rule applies to."""
|
|
3145
3156
|
|
|
3146
3157
|
def as_dict(self) -> dict:
|
|
@@ -3151,7 +3162,7 @@ class NccAzureServiceEndpointRule:
|
|
|
3151
3162
|
if self.target_region is not None:
|
|
3152
3163
|
body["target_region"] = self.target_region
|
|
3153
3164
|
if self.target_services:
|
|
3154
|
-
body["target_services"] = [v for v in self.target_services]
|
|
3165
|
+
body["target_services"] = [v.value for v in self.target_services]
|
|
3155
3166
|
return body
|
|
3156
3167
|
|
|
3157
3168
|
def as_shallow_dict(self) -> dict:
|
|
@@ -3171,15 +3182,12 @@ class NccAzureServiceEndpointRule:
|
|
|
3171
3182
|
return cls(
|
|
3172
3183
|
subnets=d.get("subnets", None),
|
|
3173
3184
|
target_region=d.get("target_region", None),
|
|
3174
|
-
target_services=d
|
|
3185
|
+
target_services=_repeated_enum(d, "target_services", EgressResourceType),
|
|
3175
3186
|
)
|
|
3176
3187
|
|
|
3177
3188
|
|
|
3178
3189
|
@dataclass
|
|
3179
3190
|
class NccEgressConfig:
|
|
3180
|
-
"""The network connectivity rules that apply to network traffic from your serverless compute
|
|
3181
|
-
resources."""
|
|
3182
|
-
|
|
3183
3191
|
default_rules: Optional[NccEgressDefaultRules] = None
|
|
3184
3192
|
"""The network connectivity rules that are applied by default without resource specific
|
|
3185
3193
|
configurations. You can find the stable network information of your serverless compute resources
|
|
@@ -3218,9 +3226,7 @@ class NccEgressConfig:
|
|
|
3218
3226
|
|
|
3219
3227
|
@dataclass
|
|
3220
3228
|
class NccEgressDefaultRules:
|
|
3221
|
-
"""
|
|
3222
|
-
configurations. You can find the stable network information of your serverless compute resources
|
|
3223
|
-
here."""
|
|
3229
|
+
"""Default rules don't have specific targets."""
|
|
3224
3230
|
|
|
3225
3231
|
aws_stable_ip_rule: Optional[NccAwsStableIpRule] = None
|
|
3226
3232
|
"""The stable AWS IP CIDR blocks. You can use these to configure the firewall of your resources to
|
|
@@ -3259,8 +3265,7 @@ class NccEgressDefaultRules:
|
|
|
3259
3265
|
|
|
3260
3266
|
@dataclass
|
|
3261
3267
|
class NccEgressTargetRules:
|
|
3262
|
-
"""
|
|
3263
|
-
default rules."""
|
|
3268
|
+
"""Target rule controls the egress rules that are dedicated to specific resources."""
|
|
3264
3269
|
|
|
3265
3270
|
azure_private_endpoint_rules: Optional[List[NccAzurePrivateEndpointRule]] = None
|
|
3266
3271
|
|
|
@@ -3288,6 +3293,8 @@ class NccEgressTargetRules:
|
|
|
3288
3293
|
|
|
3289
3294
|
@dataclass
|
|
3290
3295
|
class NetworkConnectivityConfiguration:
|
|
3296
|
+
"""Properties of the new network connectivity configuration."""
|
|
3297
|
+
|
|
3291
3298
|
account_id: Optional[str] = None
|
|
3292
3299
|
"""The Databricks account ID that hosts the credential."""
|
|
3293
3300
|
|
|
@@ -3301,7 +3308,7 @@ class NetworkConnectivityConfiguration:
|
|
|
3301
3308
|
name: Optional[str] = None
|
|
3302
3309
|
"""The name of the network connectivity configuration. The name can contain alphanumeric
|
|
3303
3310
|
characters, hyphens, and underscores. The length must be between 3 and 30 characters. The name
|
|
3304
|
-
must match the regular expression
|
|
3311
|
+
must match the regular expression ^[0-9a-zA-Z-_]{3,30}$"""
|
|
3305
3312
|
|
|
3306
3313
|
network_connectivity_config_id: Optional[str] = None
|
|
3307
3314
|
"""Databricks network connectivity configuration ID."""
|
|
@@ -5198,6 +5205,37 @@ class UpdatePersonalComputeSettingRequest:
|
|
|
5198
5205
|
)
|
|
5199
5206
|
|
|
5200
5207
|
|
|
5208
|
+
@dataclass
|
|
5209
|
+
class UpdatePrivateEndpointRule:
|
|
5210
|
+
"""Properties of the new private endpoint rule. Note that you must approve the endpoint in Azure
|
|
5211
|
+
portal after initialization."""
|
|
5212
|
+
|
|
5213
|
+
domain_names: Optional[List[str]] = None
|
|
5214
|
+
"""Only used by private endpoints to customer-managed resources.
|
|
5215
|
+
|
|
5216
|
+
Domain names of target private link service. When updating this field, the full list of target
|
|
5217
|
+
domain_names must be specified."""
|
|
5218
|
+
|
|
5219
|
+
def as_dict(self) -> dict:
|
|
5220
|
+
"""Serializes the UpdatePrivateEndpointRule into a dictionary suitable for use as a JSON request body."""
|
|
5221
|
+
body = {}
|
|
5222
|
+
if self.domain_names:
|
|
5223
|
+
body["domain_names"] = [v for v in self.domain_names]
|
|
5224
|
+
return body
|
|
5225
|
+
|
|
5226
|
+
def as_shallow_dict(self) -> dict:
|
|
5227
|
+
"""Serializes the UpdatePrivateEndpointRule into a shallow dictionary of its immediate attributes."""
|
|
5228
|
+
body = {}
|
|
5229
|
+
if self.domain_names:
|
|
5230
|
+
body["domain_names"] = self.domain_names
|
|
5231
|
+
return body
|
|
5232
|
+
|
|
5233
|
+
@classmethod
|
|
5234
|
+
def from_dict(cls, d: Dict[str, Any]) -> UpdatePrivateEndpointRule:
|
|
5235
|
+
"""Deserializes the UpdatePrivateEndpointRule from a dictionary."""
|
|
5236
|
+
return cls(domain_names=d.get("domain_names", None))
|
|
5237
|
+
|
|
5238
|
+
|
|
5201
5239
|
@dataclass
|
|
5202
5240
|
class UpdateResponse:
|
|
5203
5241
|
def as_dict(self) -> dict:
|
|
@@ -6490,16 +6528,16 @@ class DisableLegacyFeaturesAPI:
|
|
|
6490
6528
|
|
|
6491
6529
|
|
|
6492
6530
|
class EnableExportNotebookAPI:
|
|
6493
|
-
"""Controls whether users can export notebooks and files from the Workspace. By default, this setting is
|
|
6531
|
+
"""Controls whether users can export notebooks and files from the Workspace UI. By default, this setting is
|
|
6494
6532
|
enabled."""
|
|
6495
6533
|
|
|
6496
6534
|
def __init__(self, api_client):
|
|
6497
6535
|
self._api = api_client
|
|
6498
6536
|
|
|
6499
6537
|
def get_enable_export_notebook(self) -> EnableExportNotebook:
|
|
6500
|
-
"""Get the
|
|
6538
|
+
"""Get the Notebook and File exporting setting.
|
|
6501
6539
|
|
|
6502
|
-
Gets the
|
|
6540
|
+
Gets the Notebook and File exporting setting.
|
|
6503
6541
|
|
|
6504
6542
|
:returns: :class:`EnableExportNotebook`
|
|
6505
6543
|
"""
|
|
@@ -6514,10 +6552,10 @@ class EnableExportNotebookAPI:
|
|
|
6514
6552
|
def patch_enable_export_notebook(
|
|
6515
6553
|
self, allow_missing: bool, setting: EnableExportNotebook, field_mask: str
|
|
6516
6554
|
) -> EnableExportNotebook:
|
|
6517
|
-
"""Update the
|
|
6555
|
+
"""Update the Notebook and File exporting setting.
|
|
6518
6556
|
|
|
6519
|
-
Updates the
|
|
6520
|
-
get after the update operation might receive stale values for some time.
|
|
6557
|
+
Updates the Notebook and File exporting setting. The model follows eventual consistency, which means
|
|
6558
|
+
the get after the update operation might receive stale values for some time.
|
|
6521
6559
|
|
|
6522
6560
|
:param allow_missing: bool
|
|
6523
6561
|
This should always be set to true for Settings API. Added for AIP compliance.
|
|
@@ -6670,9 +6708,9 @@ class EnableNotebookTableClipboardAPI:
|
|
|
6670
6708
|
self._api = api_client
|
|
6671
6709
|
|
|
6672
6710
|
def get_enable_notebook_table_clipboard(self) -> EnableNotebookTableClipboard:
|
|
6673
|
-
"""Get the
|
|
6711
|
+
"""Get the Results Table Clipboard features setting.
|
|
6674
6712
|
|
|
6675
|
-
Gets the
|
|
6713
|
+
Gets the Results Table Clipboard features setting.
|
|
6676
6714
|
|
|
6677
6715
|
:returns: :class:`EnableNotebookTableClipboard`
|
|
6678
6716
|
"""
|
|
@@ -6689,9 +6727,9 @@ class EnableNotebookTableClipboardAPI:
|
|
|
6689
6727
|
def patch_enable_notebook_table_clipboard(
|
|
6690
6728
|
self, allow_missing: bool, setting: EnableNotebookTableClipboard, field_mask: str
|
|
6691
6729
|
) -> EnableNotebookTableClipboard:
|
|
6692
|
-
"""Update the
|
|
6730
|
+
"""Update the Results Table Clipboard features setting.
|
|
6693
6731
|
|
|
6694
|
-
Updates the
|
|
6732
|
+
Updates the Results Table Clipboard features setting. The model follows eventual consistency, which
|
|
6695
6733
|
means the get after the update operation might receive stale values for some time.
|
|
6696
6734
|
|
|
6697
6735
|
:param allow_missing: bool
|
|
@@ -6735,9 +6773,9 @@ class EnableResultsDownloadingAPI:
|
|
|
6735
6773
|
self._api = api_client
|
|
6736
6774
|
|
|
6737
6775
|
def get_enable_results_downloading(self) -> EnableResultsDownloading:
|
|
6738
|
-
"""Get the
|
|
6776
|
+
"""Get the Notebook results download setting.
|
|
6739
6777
|
|
|
6740
|
-
Gets the
|
|
6778
|
+
Gets the Notebook results download setting.
|
|
6741
6779
|
|
|
6742
6780
|
:returns: :class:`EnableResultsDownloading`
|
|
6743
6781
|
"""
|
|
@@ -6752,10 +6790,10 @@ class EnableResultsDownloadingAPI:
|
|
|
6752
6790
|
def patch_enable_results_downloading(
|
|
6753
6791
|
self, allow_missing: bool, setting: EnableResultsDownloading, field_mask: str
|
|
6754
6792
|
) -> EnableResultsDownloading:
|
|
6755
|
-
"""Update the
|
|
6793
|
+
"""Update the Notebook results download setting.
|
|
6756
6794
|
|
|
6757
|
-
Updates the
|
|
6758
|
-
|
|
6795
|
+
Updates the Notebook results download setting. The model follows eventual consistency, which means the
|
|
6796
|
+
get after the update operation might receive stale values for some time.
|
|
6759
6797
|
|
|
6760
6798
|
:param allow_missing: bool
|
|
6761
6799
|
This should always be set to true for Settings API. Added for AIP compliance.
|
|
@@ -7183,29 +7221,40 @@ class IpAccessListsAPI:
|
|
|
7183
7221
|
|
|
7184
7222
|
class NetworkConnectivityAPI:
|
|
7185
7223
|
"""These APIs provide configurations for the network connectivity of your workspaces for serverless compute
|
|
7186
|
-
resources.
|
|
7224
|
+
resources. This API provides stable subnets for your workspace so that you can configure your firewalls on
|
|
7225
|
+
your Azure Storage accounts to allow access from Databricks. You can also use the API to provision private
|
|
7226
|
+
endpoints for Databricks to privately connect serverless compute resources to your Azure resources using
|
|
7227
|
+
Azure Private Link. See [configure serverless secure connectivity].
|
|
7228
|
+
|
|
7229
|
+
[configure serverless secure connectivity]: https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security
|
|
7230
|
+
"""
|
|
7187
7231
|
|
|
7188
7232
|
def __init__(self, api_client):
|
|
7189
7233
|
self._api = api_client
|
|
7190
7234
|
|
|
7191
|
-
def create_network_connectivity_configuration(
|
|
7235
|
+
def create_network_connectivity_configuration(
|
|
7236
|
+
self, network_connectivity_config: CreateNetworkConnectivityConfiguration
|
|
7237
|
+
) -> NetworkConnectivityConfiguration:
|
|
7192
7238
|
"""Create a network connectivity configuration.
|
|
7193
7239
|
|
|
7194
|
-
|
|
7195
|
-
|
|
7196
|
-
|
|
7197
|
-
|
|
7198
|
-
|
|
7199
|
-
|
|
7200
|
-
|
|
7240
|
+
Creates a network connectivity configuration (NCC), which provides stable Azure service subnets when
|
|
7241
|
+
accessing your Azure Storage accounts. You can also use a network connectivity configuration to create
|
|
7242
|
+
Databricks managed private endpoints so that Databricks serverless compute resources privately access
|
|
7243
|
+
your resources.
|
|
7244
|
+
|
|
7245
|
+
**IMPORTANT**: After you create the network connectivity configuration, you must assign one or more
|
|
7246
|
+
workspaces to the new network connectivity configuration. You can share one network connectivity
|
|
7247
|
+
configuration with multiple workspaces from the same Azure region within the same Databricks account.
|
|
7248
|
+
See [configure serverless secure connectivity].
|
|
7249
|
+
|
|
7250
|
+
[configure serverless secure connectivity]: https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security
|
|
7251
|
+
|
|
7252
|
+
:param network_connectivity_config: :class:`CreateNetworkConnectivityConfiguration`
|
|
7253
|
+
Properties of the new network connectivity configuration.
|
|
7201
7254
|
|
|
7202
7255
|
:returns: :class:`NetworkConnectivityConfiguration`
|
|
7203
7256
|
"""
|
|
7204
|
-
body =
|
|
7205
|
-
if name is not None:
|
|
7206
|
-
body["name"] = name
|
|
7207
|
-
if region is not None:
|
|
7208
|
-
body["region"] = region
|
|
7257
|
+
body = network_connectivity_config.as_dict()
|
|
7209
7258
|
headers = {
|
|
7210
7259
|
"Accept": "application/json",
|
|
7211
7260
|
"Content-Type": "application/json",
|
|
@@ -7217,7 +7266,7 @@ class NetworkConnectivityAPI:
|
|
|
7217
7266
|
return NetworkConnectivityConfiguration.from_dict(res)
|
|
7218
7267
|
|
|
7219
7268
|
def create_private_endpoint_rule(
|
|
7220
|
-
self, network_connectivity_config_id: str,
|
|
7269
|
+
self, network_connectivity_config_id: str, private_endpoint_rule: CreatePrivateEndpointRule
|
|
7221
7270
|
) -> NccAzurePrivateEndpointRule:
|
|
7222
7271
|
"""Create a private endpoint rule.
|
|
7223
7272
|
|
|
@@ -7232,20 +7281,14 @@ class NetworkConnectivityAPI:
|
|
|
7232
7281
|
[serverless private link]: https://learn.microsoft.com/azure/databricks/security/network/serverless-network-security/serverless-private-link
|
|
7233
7282
|
|
|
7234
7283
|
:param network_connectivity_config_id: str
|
|
7235
|
-
Your Network
|
|
7236
|
-
:param
|
|
7237
|
-
|
|
7238
|
-
|
|
7239
|
-
The sub-resource type (group ID) of the target resource. Note that to connect to workspace root
|
|
7240
|
-
storage (root DBFS), you need two endpoints, one for `blob` and one for `dfs`.
|
|
7284
|
+
Your Network Connectivity Configuration ID.
|
|
7285
|
+
:param private_endpoint_rule: :class:`CreatePrivateEndpointRule`
|
|
7286
|
+
Properties of the new private endpoint rule. Note that you must approve the endpoint in Azure portal
|
|
7287
|
+
after initialization.
|
|
7241
7288
|
|
|
7242
7289
|
:returns: :class:`NccAzurePrivateEndpointRule`
|
|
7243
7290
|
"""
|
|
7244
|
-
body =
|
|
7245
|
-
if group_id is not None:
|
|
7246
|
-
body["group_id"] = group_id.value
|
|
7247
|
-
if resource_id is not None:
|
|
7248
|
-
body["resource_id"] = resource_id
|
|
7291
|
+
body = private_endpoint_rule.as_dict()
|
|
7249
7292
|
headers = {
|
|
7250
7293
|
"Accept": "application/json",
|
|
7251
7294
|
"Content-Type": "application/json",
|
|
@@ -7265,7 +7308,7 @@ class NetworkConnectivityAPI:
|
|
|
7265
7308
|
Deletes a network connectivity configuration.
|
|
7266
7309
|
|
|
7267
7310
|
:param network_connectivity_config_id: str
|
|
7268
|
-
Your Network
|
|
7311
|
+
Your Network Connectivity Configuration ID.
|
|
7269
7312
|
|
|
7270
7313
|
|
|
7271
7314
|
"""
|
|
@@ -7317,7 +7360,7 @@ class NetworkConnectivityAPI:
|
|
|
7317
7360
|
Gets a network connectivity configuration.
|
|
7318
7361
|
|
|
7319
7362
|
:param network_connectivity_config_id: str
|
|
7320
|
-
Your Network
|
|
7363
|
+
Your Network Connectivity Configuration ID.
|
|
7321
7364
|
|
|
7322
7365
|
:returns: :class:`NetworkConnectivityConfiguration`
|
|
7323
7366
|
"""
|
|
@@ -7336,7 +7379,7 @@ class NetworkConnectivityAPI:
|
|
|
7336
7379
|
def get_private_endpoint_rule(
|
|
7337
7380
|
self, network_connectivity_config_id: str, private_endpoint_rule_id: str
|
|
7338
7381
|
) -> NccAzurePrivateEndpointRule:
|
|
7339
|
-
"""
|
|
7382
|
+
"""Gets a private endpoint rule.
|
|
7340
7383
|
|
|
7341
7384
|
Gets the private endpoint rule.
|
|
7342
7385
|
|
|
@@ -7429,6 +7472,52 @@ class NetworkConnectivityAPI:
|
|
|
7429
7472
|
return
|
|
7430
7473
|
query["page_token"] = json["next_page_token"]
|
|
7431
7474
|
|
|
7475
|
+
def update_ncc_azure_private_endpoint_rule_public(
|
|
7476
|
+
self,
|
|
7477
|
+
network_connectivity_config_id: str,
|
|
7478
|
+
private_endpoint_rule_id: str,
|
|
7479
|
+
private_endpoint_rule: UpdatePrivateEndpointRule,
|
|
7480
|
+
update_mask: str,
|
|
7481
|
+
) -> NccAzurePrivateEndpointRule:
|
|
7482
|
+
"""Update a private endpoint rule.
|
|
7483
|
+
|
|
7484
|
+
Updates a private endpoint rule. Currently only a private endpoint rule to customer-managed resources
|
|
7485
|
+
is allowed to be updated.
|
|
7486
|
+
|
|
7487
|
+
:param network_connectivity_config_id: str
|
|
7488
|
+
Your Network Connectivity Configuration ID.
|
|
7489
|
+
:param private_endpoint_rule_id: str
|
|
7490
|
+
Your private endpoint rule ID.
|
|
7491
|
+
:param private_endpoint_rule: :class:`UpdatePrivateEndpointRule`
|
|
7492
|
+
Properties of the new private endpoint rule. Note that you must approve the endpoint in Azure portal
|
|
7493
|
+
after initialization.
|
|
7494
|
+
:param update_mask: str
|
|
7495
|
+
The field mask must be a single string, with multiple fields separated by commas (no spaces). The
|
|
7496
|
+
field path is relative to the resource object, using a dot (`.`) to navigate sub-fields (e.g.,
|
|
7497
|
+
`author.given_name`). Specification of elements in sequence or map fields is not allowed, as only
|
|
7498
|
+
the entire collection field can be specified. Field names must exactly match the resource field
|
|
7499
|
+
names.
|
|
7500
|
+
|
|
7501
|
+
:returns: :class:`NccAzurePrivateEndpointRule`
|
|
7502
|
+
"""
|
|
7503
|
+
body = private_endpoint_rule.as_dict()
|
|
7504
|
+
query = {}
|
|
7505
|
+
if update_mask is not None:
|
|
7506
|
+
query["update_mask"] = update_mask
|
|
7507
|
+
headers = {
|
|
7508
|
+
"Accept": "application/json",
|
|
7509
|
+
"Content-Type": "application/json",
|
|
7510
|
+
}
|
|
7511
|
+
|
|
7512
|
+
res = self._api.do(
|
|
7513
|
+
"PATCH",
|
|
7514
|
+
f"/api/2.0/accounts/{self._api.account_id}/network-connectivity-configs/{network_connectivity_config_id}/private-endpoint-rules/{private_endpoint_rule_id}",
|
|
7515
|
+
query=query,
|
|
7516
|
+
body=body,
|
|
7517
|
+
headers=headers,
|
|
7518
|
+
)
|
|
7519
|
+
return NccAzurePrivateEndpointRule.from_dict(res)
|
|
7520
|
+
|
|
7432
7521
|
|
|
7433
7522
|
class NotificationDestinationsAPI:
|
|
7434
7523
|
"""The notification destinations API lets you programmatically manage a workspace's notification
|
|
@@ -7844,7 +7933,7 @@ class SettingsAPI:
|
|
|
7844
7933
|
|
|
7845
7934
|
@property
|
|
7846
7935
|
def enable_export_notebook(self) -> EnableExportNotebookAPI:
|
|
7847
|
-
"""Controls whether users can export notebooks and files from the Workspace."""
|
|
7936
|
+
"""Controls whether users can export notebooks and files from the Workspace UI."""
|
|
7848
7937
|
return self._enable_export_notebook
|
|
7849
7938
|
|
|
7850
7939
|
@property
|