Catalogs

Package: databricks.bundles.catalogs

Classes

class AzureEncryptionSettings
azure_tenant_id: str
azure_cmk_access_connector_id: str | None = None
azure_cmk_managed_identity_id: str | None = None
classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class Catalog
name: str

Name of catalog.

comment: str | None = None

User-provided free-form text description.

connection_name: str | None = None

The name of the connection to an external data source.

custom_max_retention_hours: int | None = None

[Public Preview] Custom maximum retention period in hours for the catalog

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.

managed_encryption_settings: EncryptionSettings | None = None

Control CMK encryption for managed catalog data

options: dict[str, str]

A map of key-value properties attached to the securable.

properties: dict[str, str]

A map of key-value properties attached to the securable.

provider_name: str | None = None

The name of delta sharing provider.

A Delta Sharing catalog is a catalog that is based on a Delta share on a remote sharing server.

share_name: str | None = None

The name of the share under the share provider.

storage_root: str | None = None

Storage root URL for managed tables within catalog.

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

alias of PrivilegeAssignment

CatalogGrantPrivilege

alias of Privilege

class DependsOn
resource: str

Key of the resource to depend on, as foo or jobs.foo.

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

Encryption Settings are used to carry metadata for securable encryption at rest. Currently used for catalogs, we can use the information supplied here to interact with a CMK.

azure_encryption_settings: AzureEncryptionSettings | None = None

optional Azure settings - only required if an Azure CMK is used.

azure_key_vault_key_id: str | None = None

the AKV URL in Azure, null otherwise.

customer_managed_key_id: str | None = None

the CMK uuid in AWS and GCP, null otherwise.

classmethod from_dict(
value: dict,
) → Self
as_dict(
self,
) → dict
class Lifecycle
depends_on: list[DependsOn]

Resources that must be deployed before this resource and deleted after it. Unlike variable references, this only affects ordering.

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'
CREATE_FEATURE = 'CREATE_FEATURE'
READ_FEATURE = 'READ_FEATURE'
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