External Locations

Package: databricks.bundles.external_locations

Classes

class AwsSqsQueue
queue_url: str | None = None

The AQS queue url in the format https://sqs.{region}.amazonaws.com/{account id}/{queue name}. Only required for provided_sqs.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class AzureQueueStorage
queue_url: str | None = None

The AQS queue url in the format https://{storage account}.queue.core.windows.net/{queue name} Only required for provided_aqs.

resource_group: str | None = None

Optional resource group for the queue, event grid subscription, and external location storage account. Only required for locations with a service principal storage credential

subscription_id: str | None = None

Optional subscription id for the queue, event grid subscription, and external location storage account. Required for locations with a service principal storage credential

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class EncryptionDetails

Encryption options that apply to clients connecting to cloud storage.

sse_encryption_details: SseEncryptionDetails | None = None

Server-Side Encryption properties for clients communicating with AWS s3.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class ExternalLocation
credential_name: str

Name of the storage credential used with this location.

name: str

Name of the external location.

url: str

Path URL of the external location.

comment: str | None = None

User-provided free-form text description.

enable_file_events: bool | None = None

Whether to enable file events on this external location. Default to true. Set to false to disable file events. The actual applied value may differ due to server-side defaults; check effective_enable_file_events for the effective state.

encryption_details: EncryptionDetails | None = None

Encryption options that apply to clients connecting to cloud storage.

fallback: bool | None = None

Indicates whether fallback mode is enabled for this external location. When fallback mode is enabled, the access to the location falls back to cluster credentials if UC credentials are not sufficient.

file_event_queue: FileEventQueue | None = None

File event queue settings. If enable_file_events is not false, must be defined and have exactly one of the documented properties.

grants: list[PrivilegeAssignment]

The Unity Catalog privileges to grant to principals on this securable.

lifecycle: Lifecycle | None = None

Settings that control the deployment lifecycle of the resource, such as preventing it from being destroyed.

read_only: bool | None = None

Indicates whether the external location is read-only.

skip_validation: bool | None = None

Skips validation of the storage credential associated with the external location.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class FileEventQueue
managed_aqs: AzureQueueStorage | None = None
managed_pubsub: GcpPubsub | None = None
managed_sqs: AwsSqsQueue | None = None
provided_aqs: AzureQueueStorage | None = None
provided_pubsub: GcpPubsub | None = None
provided_sqs: AwsSqsQueue | None = None
classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class GcpPubsub
subscription_name: str | None = None

The Pub/Sub subscription name in the format projects/{project}/subscriptions/{subscription name}. Only required for provided_pubsub.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class Lifecycle
prevent_destroy: bool | None = None

Lifecycle setting to prevent the resource from being destroyed.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class Privilege
SELECT = 'SELECT'
READ_PRIVATE_FILES = 'READ_PRIVATE_FILES'
WRITE_PRIVATE_FILES = 'WRITE_PRIVATE_FILES'
CREATE = 'CREATE'
USAGE = 'USAGE'
USE_CATALOG = 'USE_CATALOG'
USE_SCHEMA = 'USE_SCHEMA'
CREATE_SCHEMA = 'CREATE_SCHEMA'
CREATE_VIEW = 'CREATE_VIEW'
CREATE_EXTERNAL_TABLE = 'CREATE_EXTERNAL_TABLE'
CREATE_MATERIALIZED_VIEW = 'CREATE_MATERIALIZED_VIEW'
CREATE_FUNCTION = 'CREATE_FUNCTION'
CREATE_MODEL = 'CREATE_MODEL'
CREATE_CATALOG = 'CREATE_CATALOG'
CREATE_MANAGED_STORAGE = 'CREATE_MANAGED_STORAGE'
CREATE_EXTERNAL_LOCATION = 'CREATE_EXTERNAL_LOCATION'
CREATE_STORAGE_CREDENTIAL = 'CREATE_STORAGE_CREDENTIAL'
CREATE_SERVICE_CREDENTIAL = 'CREATE_SERVICE_CREDENTIAL'
ACCESS = 'ACCESS'
CREATE_SHARE = 'CREATE_SHARE'
CREATE_RECIPIENT = 'CREATE_RECIPIENT'
CREATE_PROVIDER = 'CREATE_PROVIDER'
USE_SHARE = 'USE_SHARE'
USE_RECIPIENT = 'USE_RECIPIENT'
USE_PROVIDER = 'USE_PROVIDER'
USE_MARKETPLACE_ASSETS = 'USE_MARKETPLACE_ASSETS'
SET_SHARE_PERMISSION = 'SET_SHARE_PERMISSION'
MODIFY = 'MODIFY'
REFRESH = 'REFRESH'
EXECUTE = 'EXECUTE'
READ_FILES = 'READ_FILES'
WRITE_FILES = 'WRITE_FILES'
CREATE_TABLE = 'CREATE_TABLE'
ALL_PRIVILEGES = 'ALL_PRIVILEGES'
CREATE_CONNECTION = 'CREATE_CONNECTION'
USE_CONNECTION = 'USE_CONNECTION'
APPLY_TAG = 'APPLY_TAG'
CREATE_FOREIGN_CATALOG = 'CREATE_FOREIGN_CATALOG'
CREATE_FOREIGN_SECURABLE = 'CREATE_FOREIGN_SECURABLE'
MANAGE_ALLOWLIST = 'MANAGE_ALLOWLIST'
CREATE_VOLUME = 'CREATE_VOLUME'
CREATE_EXTERNAL_VOLUME = 'CREATE_EXTERNAL_VOLUME'
READ_VOLUME = 'READ_VOLUME'
WRITE_VOLUME = 'WRITE_VOLUME'
MANAGE = 'MANAGE'
BROWSE = 'BROWSE'
CREATE_CLEAN_ROOM = 'CREATE_CLEAN_ROOM'
MODIFY_CLEAN_ROOM = 'MODIFY_CLEAN_ROOM'
EXECUTE_CLEAN_ROOM_TASK = 'EXECUTE_CLEAN_ROOM_TASK'
EXTERNAL_USE_SCHEMA = 'EXTERNAL_USE_SCHEMA'
READ_METADATA = 'READ_METADATA'
EXTERNAL_USE_LOCATION = 'EXTERNAL_USE_LOCATION'
class PrivilegeAssignment
principal: str | None = None

The principal (user email address or group name). For deleted principals, principal is empty while principal_id is populated.

privileges: list[Privilege]

The privileges assigned to the principal.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class SseEncryptionDetails

Server-Side Encryption properties for clients communicating with AWS s3.

algorithm: SseEncryptionDetailsAlgorithm | None = None

Sets the value of the ‘x-amz-server-side-encryption’ header in S3 request.

aws_kms_key_arn: str | None = None

Optional. The ARN of the SSE-KMS key used with the S3 location, when algorithm = “SSE-KMS”. Sets the value of the ‘x-amz-server-side-encryption-aws-kms-key-id’ header.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class SseEncryptionDetailsAlgorithm

SSE algorithm to use for encrypting S3 objects

AWS_SSE_S3 = 'AWS_SSE_S3'
AWS_SSE_KMS = 'AWS_SSE_KMS'