配置参考

本文提供了 Databricks 资产捆绑包配置 (YAML) 支持的密钥参考。 请参阅什么是 Databricks 资产捆绑包?

对于完整的捆绑包示例,请参阅捆绑包配置示例捆绑包示例 GitHub 存储库

artifacts

Type: Map

定义生成项目所需的属性,其中每个键是项目的名称,值是定义项目生成设置的映射。 有关 artifacts 映射的信息,请参阅 artifacts

可以在 targets 映射中重写捆绑包配置顶层中定义的项目设置。 请参阅在 Databricks 资产捆绑包中定义项目设置

artifacts:
  <artifact-name>:
    <artifact-field-name>: <artifact-field-value>
密钥 类型 说明
build 字符串 一组可选的生成命令,用于在部署之前在本地运行。
executable 字符串 可执行类型 有效值为:bashshcmd
files 序列 生成的项目文件的相对路径或绝对路径。 请参阅 artifacts.name.files
path 字符串 项目目录的本地路径。
type 字符串 如果项目是 Python Wheel,则为必需项。 工件的类型。 有效值为 whljar

示例

artifacts:
  default:
    type: whl
    build: poetry build
    path: .

artifacts.name.files

Type: Sequence

项目的源文件。

密钥 类型 说明
source 字符串 必需。 项目源文件。

bundle

Type: Map

部署到此目标时的捆绑包属性。

密钥 类型 说明
cluster_id 字符串 用于运行捆绑包的群集的 ID。 请参阅 cluster_id
compute_id 字符串 已弃用。 用于运行捆绑包的计算的 ID。
databricks_cli_version 字符串 用于捆绑包的 Databricks CLI 版本。 请参阅 databricks_cli_version
deployment 地图 捆绑部署的定义。 有关支持的属性,请参阅 Databricks 资产捆绑包部署模式。 请参阅 bundle.deployment
git 地图 与捆绑包关联的 Git 版本控制详细信息。 有关支持的属性,请参阅 git。 请参阅 bundle.git
name 字符串 捆绑包的名称。
uuid 字符串 预留。 捆绑包的通用唯一标识符(UUID),用于唯一标识内部 Databricks 系统中的捆绑包。 当使用 Databricks 模板(使用 databricks bundle init 命令)初始化捆绑项目时,将生成此项。

bundle.deployment

Type: Map

捆绑部署的定义

密钥 类型 说明
fail_on_active_runs 布尔 是否在活动运行中失败。 如果设置为 true,则可以中断正在运行的部署。
lock 地图 部署锁属性。 请参阅 bundle.deployment.lock

bundle.deployment.lock

Type: Map

部署锁属性。

密钥 类型 说明
enabled 布尔 是否启用此锁定。
force 布尔 是否强制执行此锁(如果已启用)。

bundle.git

Type: Map

与捆绑包关联的 Git 版本控制详细信息。

密钥 类型 说明
branch 字符串 Git 分支名称。 请参阅 git
origin_url 字符串 存储库的源 URL。 请参阅 git

experimental

Type: Map

定义实验性特征的属性。

密钥 类型 说明
pydabs 地图 PyDABs 的配置。 请参阅 experimental.pydabs
python 地图 配置加载使用“databricks-bundles”包定义的 Python 代码。 请参阅 experimental.python
python_wheel_wrapper 布尔 是否使用 Python Wheel 包装器。
scripts 地图 要运行的命令。
use_legacy_run_as 布尔 是否使用旧版 run_as 行为。

experimental.pydabs

Type: Map

PyDAB 的配置。

密钥 类型 说明
enabled 布尔 是否启用 PyDAB(个人预览版)。
import 序列 要导入的 PyDAB 项目,用于发现资源、资源生成器和赋值函数。
venv_path 字符串 Python 虚拟环境路径。

experimental.python

Type: Map

配置加载通过“databricks-bundles”包定义的 Python 代码。

密钥 类型 说明
mutators 序列 Mutators 包含完全限定的变异器函数路径列表,例如 [my_project.mutators:add_default_cluster]
resources 序列 资源包含完全限定的函数路径列表,用于加载 Python 代码中定义的资源,例如 ["my_project.resources:load_resources"]
venv_path 字符串 VEnvPath 是虚拟环境的路径。 如果启用,Python 代码将在此环境中执行。 如果禁用,则默认使用当前 shell 中可用的 Python 解释器。

include

Type: Sequence

指定路径 glob 列表,其中包含要放入捆绑包中的配置文件。 请参阅 include

权限

Type: Sequence

一个序列,用于定义应用于捆绑包中定义的试验、作业、管道和模型的权限,其中序列中的每个项都是特定实体的权限。

请参阅权限为 Databricks 资产捆绑包中的资源设置权限

密钥 类型 说明
group_name 字符串 在级别中设置权限的组的名称。
level 字符串 为此权限定义的用户、组、服务主体的允许权限。
service_principal_name 字符串 在级别中设置权限的服务主体名称。
user_name 字符串 在级别中设置权限的用户名称。

示例

permissions:
  - level: CAN_VIEW
    group_name: test-group
  - level: CAN_MANAGE
    user_name: someone@example.com
  - level: CAN_RUN
    service_principal_name: 123456-abcdef

presets

Type: Map

定义软件包部署预设值。 请参阅自定义预设

密钥 类型 说明
jobs_max_concurrent_runs 整数 作业的最大并发运行数。
name_prefix 字符串 捆绑包的作业运行的前缀。
pipelines_development 布尔 是否应在开发模式下锁定管道部署。
source_linked_deployment 布尔 是否将部署链接到捆绑包源。
tags 地图 捆绑包部署的标记。
trigger_pause_status 字符串 需对所有作业触发器和计划实施的暂停状态。 有效值为 PAUSED 或 UNPAUSED。

资源

Type: Map

定义捆绑包的资源的映射,其中每个密钥都是资源的名称,值是定义资源的映射。 有关 Databricks 资产捆绑包支持的资源的详细信息和资源定义的参考,请参阅 Databricks 资产捆绑包资源

resources:
  <resource-type>:
    <resource-name>:
      <resource-field-name>: <resource-field-value>
密钥 类型 说明
apps 地图 捆绑包的 Databricks 应用程序定义,其中每个键都代表一个应用程序的名称。 请参阅应用
clusters 地图 捆绑包的群集定义,其中每个密钥都是群集的名称。 请参阅群集
dashboards 地图 捆绑包的仪表板定义,其中每个键都是仪表板的名称。 请参阅仪表板
experiments 地图 捆绑包的实验定义,其中的各键都是实验的名称。 请参阅 试验
jobs 地图 捆绑包的作业定义,其中每个密钥都是作业的名称。 请参阅 job
model_serving_endpoints 地图 组件的模型服务终结点定义,其中每个键都是模型服务终结点的名称。 请参阅 model_serving_endpoint
models 地图 捆绑包的模型定义,其中每个密钥都是模型的名称。 请参阅模型(旧版)。
pipelines 地图 捆绑包的管道定义,其中每个密钥都是管道的名称。 请参阅 管道
quality_monitors 地图 捆绑包的质量监视器定义,其中每个键都是质量监视器的名称。 请参阅quality_monitor(Unity Catalog)。
registered_models 地图 捆绑包的已注册模型定义,其中每个密钥都是 Unity Catalog 注册模型的名称。 请参阅 registered_model (Unity Catalog)
schemas 地图 捆绑包的架构定义,其中每个密钥都是架构的名称。 请参阅架构 (Unity Catalog)
volumes 地图 捆绑包的卷定义,其中每个键都是卷的名称。 请参阅卷 (Unity Catalog)

run_as

Type: Map

运行 Databricks Asset Bundles 工作流时要使用的身份。 请参阅为 Databricks 资产捆绑包工作流指定运行标识符

密钥 类型 说明
service_principal_name 字符串 活动服务主体的应用程序 ID。 设置此字段需要 servicePrincipal/user 角色。
user_name 字符串 活跃工作区用户的电子邮件。 非管理员用户只能将此字段设置为自己的电子邮件。

同步

Type: Map

捆绑包中要包含或排除的文件和文件路径。 请参阅同步

密钥 类型 说明
exclude 序列 要从捆绑包中排除的文件或文件夹的列表。
include 序列 要包含在捆绑包中的文件或文件夹的列表。
paths 序列 部署捆绑包时要同步到工作区的本地文件夹路径(可以位于捆绑包根目录外部)。

目标

Type: Map

定义捆绑包的部署目标。 请参阅目标

targets:
  <target-name>:
    <target-field-name>: <target-field-value>
密钥 类型 说明
artifacts 地图 要包含在目标部署中的项目。 请参阅 targets.name.artifacts
bundle 地图 部署到此目标时的捆绑包属性。 请参阅 targets.name.bundle
cluster_id 字符串 要用于此目标的群集 ID。
compute_id 字符串 已弃用。 要用于此目标的计算 ID。
default 布尔 此目标是否为默认目标。
git 地图 目标的 Git 版本控制设置。 请参阅 targets.name.git
mode 字符串 目标的部署模式。 有效值是developmentproduction。 请参阅 Databricks 资产捆绑包部署模式
permissions 序列 在目标中部署和运行捆绑包的权限。 请参阅 targets.name.permissions
presets 地图 目标的部署预设。 请参阅 targets.name.presets
resources 地图 目标的资源定义。 请参阅 targets.name.resources
run_as 地图 用于运行捆绑包的标识,请参阅 指定 Databricks 资产捆绑包工作流的运行标识。 请参阅 targets.name.run_as
sync 地图 捆绑包运行或部署时需同步至目标工作区的本地路径。 请参阅 targets.name.sync
variables 地图 目标的自定义变量定义。 请参阅 targets.name.variables
workspace 地图 目标的 Databricks 工作区。 请参阅 targets.name.workspace

targets.name.artifacts

Type: Map

要包含在目标部署中的项目。

artifacts:
  <artifact-name>:
    <artifact-field-name>: <artifact-field-value>
密钥 类型 说明
build 字符串 部署前要在本地运行的一组可选非默认生成命令。
executable 字符串 可执行类型。 有效值为:bashshcmd
files 序列 项目的源文件。 请参阅 targets.name.artifacts.name.files
path 字符串 将保存生成的项目的位置。
type 字符串 必填。 工件的类型。 有效值为:whl

targets.name.artifacts.name.files

Type: Sequence

项目的源文件。

密钥 类型 说明
source 字符串 必填 用于生成项目的文件的路径。

targets.name.bundle

Type: Map

部署到此目标时的捆绑包属性。

密钥 类型 说明
cluster_id 字符串 用于运行捆绑包的群集的 ID。 请参阅 cluster_id
compute_id 字符串 已弃用。 用于运行捆绑包的计算的 ID。
databricks_cli_version 字符串 用于捆绑包的 Databricks CLI 版本。 请参阅 databricks_cli_version
deployment 地图 捆绑部署的定义。 有关支持的属性,请参阅 Databricks 资产捆绑包部署模式。 请参阅 targets.name.bundle.deployment
git 地图 与捆绑包关联的 Git 版本控制详细信息。 有关支持的属性,请参阅 git。 请参阅 targets.name.bundle.git
name 字符串 捆绑包的名称。
uuid 字符串 预留。 捆绑包的通用唯一标识符(UUID),用于唯一标识内部 Databricks 系统中的捆绑包。 当使用 Databricks 模板(使用 databricks bundle init 命令)初始化捆绑项目时,将生成此项。

targets.name.bundle.deployment

Type: Map

捆绑部署的定义

密钥 类型 说明
fail_on_active_runs 布尔 是否在活动运行中失败。 如果设置为 true,则可以中断正在运行的部署。
lock 地图 部署锁属性。 请参阅 targets.name.bundle.deployment.lock

targets.name.bundle.deployment.lock

Type: Map

部署锁属性。

密钥 类型 说明
enabled 布尔 是否启用此锁定。
force 布尔 是否强制执行此锁(如果已启用)。

targets.name.bundle.git

Type: Map

与捆绑包关联的 Git 版本控制详细信息。

密钥 类型 说明
branch 字符串 Git 分支名称。 请参阅 git
origin_url 字符串 存储库的源 URL。 请参阅 git

targets.name.git

Type: Map

目标的 Git 版本控制设置。

密钥 类型 说明
branch 字符串 Git 分支名称。 请参阅 git
origin_url 字符串 存储库的源 URL。 请参阅 git

targets.name.permissions

Type: Sequence

在目标中部署和运行捆绑包的权限。

密钥 类型 说明
group_name 字符串 在级别中设置权限的组的名称。
level 字符串 为此权限定义的用户、组、服务主体的允许权限。
service_principal_name 字符串 在级别中设置权限的服务主体名称。
user_name 字符串 在级别中设置权限的用户名称。

targets.name.presets

Type: Map

目标的部署预设。

密钥 类型 说明
jobs_max_concurrent_runs 整数 作业的最大并发运行数。
name_prefix 字符串 捆绑包的作业运行的前缀。
pipelines_development 布尔 是否应在开发模式下锁定管道部署。
source_linked_deployment 布尔 是否将部署链接到捆绑包源。
tags 地图 捆绑包部署的标记。
trigger_pause_status 字符串 需对所有作业触发器和计划实施的暂停状态。 有效值为 PAUSED 或 UNPAUSED。

targets.name.resources

Type: Map

目标的资源定义。

密钥 类型 说明
apps 地图 捆绑包中的 Databricks 应用定义,其中每个键都是相应应用的名称。 请参阅应用
clusters 地图 捆绑包的群集定义,其中每个密钥都是群集的名称。 请参阅群集
dashboards 地图 捆绑包的仪表板定义,其中每个键都是仪表板的名称。 请参阅仪表板
experiments 地图 捆绑包的实验定义,其中的各键都是实验的名称。 请参阅 试验
jobs 地图 捆绑包的作业定义,其中每个密钥都是作业的名称。 请参阅作业
model_serving_endpoints 地图 捆绑包的模型服务终结点定义,其中每个键都是模型服务终结点的名称。 请参阅 model_serving_endpoint
models 地图 捆绑包的模型定义,其中每个密钥都是模型的名称。 请参阅模型(旧版)。
pipelines 地图 捆绑包的管道定义,其中每个密钥都是管道的名称。 请参阅 管道
quality_monitors 地图 捆绑包的质量监视器定义,其中每个键都是质量监视器的名称。 请参阅quality_monitor(Unity Catalog)。
registered_models 地图 捆绑包的已注册模型定义,其中每个密钥都是 Unity Catalog 注册模型的名称。 请参阅注册模型(Unity Catalog)
schemas 地图 捆绑包的架构定义,其中每个密钥都是架构的名称。 请参阅架构 (Unity Catalog)
volumes 地图 捆绑包的卷定义,其中每个键都是卷的名称。 请参阅卷 (Unity Catalog)

targets.name.run_as

Type: Map

用于运行捆绑包的标识。

密钥 类型 说明
service_principal_name 字符串 活动服务主体的应用程序 ID。 设置此字段需要 servicePrincipal/user 角色。
user_name 字符串 活动工作区用户的电子邮件。 非管理员用户只能将此字段设置为自己的电子邮件。

targets.name.sync

Type: Map

捆绑包运行或部署时需同步至目标工作区的本地路径。

密钥 类型 说明
exclude 序列 要从捆绑包中排除的文件或文件夹的列表。
include 序列 要包含在捆绑包中的文件或文件夹的列表。
paths 序列 部署捆绑包时要同步到工作区的本地文件夹路径(可以位于捆绑包根目录外部)。

targets.name.variables

Type: Map

目标的自定义变量定义。

variables:
  <variable-name>:
    <variable-field-name>: <variable-field-value>
密钥 类型 说明
default 任意 变量的默认值。 如果未指定,
description 字符串 变量的说明。
lookup 地图 要检索 ID 的警报、cluster_policy、群集、仪表板、instance_pool、作业、元存储、管道、查询、service_principal 或仓库对象的名称。 请参阅 targets.name.variables.name.lookup
type 字符串 变量的类型。

targets.name.variables.name.lookup

Type: Map

要检索 ID 的警报、cluster_policy、群集、仪表板、instance_pool、作业、元存储、管道、查询、service_principal 或仓库对象的名称。

密钥 类型 说明
alert 字符串 要检索 ID 的警报名称‌。
cluster 字符串 要检索 ID 的群集名称。
cluster_policy 字符串 要检索 ID 的 cluster_policy 名称。
dashboard 字符串 要检索 ID 的仪表板名称。
instance_pool 字符串 要检索 ID 的 instance_pool 名称。
job 字符串 要检索 ID 的作业名称。
metastore 字符串 要检索 ID 的元存储系统名称。
notification_destination 字符串 要检索 ID 的 notification_destination 名称。
pipeline 字符串 要检索 ID 的管道名称。
query 字符串 要检索 ID 的查询名称。
service_principal 字符串 要检索 ID 的 service_principal 名称。
warehouse 字符串 要检索 ID 的仓库名称。

targets.name.workspace

Type: Map

目标的 Databricks 工作区。

密钥 类型 说明
artifact_path 字符串 在工作区中用于部署和工作流程运行的项目路径
auth_type 字符串 身份验证类型。
azure_client_id 字符串 Azure 客户端 ID
azure_environment 字符串 Azure 环境
azure_login_app_id 字符串 Azure 登录应用 ID
azure_tenant_id 字符串 Azure 租户 ID
azure_use_msi 布尔 是否使用 MSI for Azure
azure_workspace_resource_id 字符串 Azure 工作区资源 ID
client_id 字符串 工作区的客户端 ID
file_path 字符串 在工作区中用于部署和工作流运行的文件路径
google_service_account 字符串 Google 服务帐户名称
host 字符串 Databricks 工作区主机 URL
profile 字符串 Databricks 工作区配置文件名称
resource_path 字符串 工作区资源路径
root_path 字符串 Databricks 工作区根路径
state_path 字符串 工作区状态路径

变量

Type: Map

定义捆绑包的自定义变量。 请参阅变量

variables:
  <variable-name>:
    <variable-field-name>: <variable-field-value>
密钥 类型 说明
default 任意 变量的默认值。
description 字符串 变量的说明
lookup 地图 要为其检索 ID 的 alertcluster_policyclusterdashboardinstance_pooljobmetastorepipelinequeryservice_principalwarehouse 对象的名称。 请参阅变量。name.lookup
type 字符串 变量的类型。

variables.name.lookup

Type: Map

要检索 ID 的警报、cluster_policy、群集、仪表板、instance_pool、作业、元存储、管道、查询、service_principal 或仓库对象的名称。

密钥 类型 说明
alert 字符串 要检索 ID 的警报名称‌。
cluster 字符串 要检索 ID 的群集名称。
cluster_policy 字符串 要检索 ID 的 cluster_policy 名称。
dashboard 字符串 要检索 ID 的仪表板名称。
instance_pool 字符串 要检索 ID 的 instance_pool 名称。
job 字符串 要检索 ID 的作业名称。
metastore 字符串 要检索 ID 的元存储系统名称。
notification_destination 字符串 要检索 ID 的 notification_desination 名称。
pipeline 字符串 要检索 ID 的管道名称。
query 字符串 要检索 ID 的查询名称。
service_principal 字符串 要检索 ID 的 service_principal 名称。
warehouse 字符串 要检索 ID 的仓库名称。

工作区

Type: Map

定义捆绑包的 Databricks 工作区。 请参阅 workspace

密钥 类型 说明
artifact_path 字符串 在工作区中用于部署和工作流运行的项目路径
auth_type 字符串 身份验证类型。
azure_client_id 字符串 Azure 客户端 ID
azure_environment 字符串 Azure 环境
azure_login_app_id 字符串 Azure 登录应用 ID
azure_tenant_id 字符串 Azure 租户 ID
azure_use_msi 布尔 是否使用 MSI for Azure
azure_workspace_resource_id 字符串 Azure 工作区资源 ID
client_id 字符串 工作区的客户端 ID
file_path 字符串 在工作区中用于部署和工作流运行的文件路径
google_service_account 字符串 Google 服务帐户名称
host 字符串 Databricks 工作区主机 URL
profile 字符串 Databricks 工作区配置文件名称
resource_path 字符串 工作区资源路径
root_path 字符串 Databricks 工作区根路径
state_path 字符串 工作区状态路径