Pular para o conteúdo principal

Referência de configuração

Este artigo fornece referência para a chave suportada por Databricks ativo Bundles configuration (YAML). Veja o que são Databricks ativo Bundles?

Para obter exemplos completos de pacotes, consulte Exemplos de configuração de pacotes e o repositório GitHub de exemplos de pacotes.

artefatos

Type: Map

Especifica os artefatos a serem criados automaticamente durante as implantações de pacotes, que podem ser usados posteriormente na execução do pacote. Cada key é o nome do artefato e o valor é um mapa que define as configurações de construção do artefato.

dica

Você pode definir, combinar e substituir as configurações de artefatos em pacotes, conforme descrito em Substituir com configurações de destino.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

YAML
artifacts:
<artifact-name>:
<artifact-field-name>: <artifact-field-value>

Chave

Tipo

Descrição

build

String

Um conjunto opcional de comandos de construção para execução local antes da implantação. Para compilações Python wheel , a CLI Databricks assume que pode encontrar uma instalação local do pacote Python wheel para executar compilações e executa o comando python setup.py bdist_wheel por default durante cada implantação de pacote. Especifique vários comandos de compilação em linhas separadas.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

dynamic_version

Booleana

Indica se a versão do pacote (wheel) deve ser corrigida dinamicamente com base no carimbo de data/hora do arquivo whl. Se isso for definido como true, o novo código poderá ser implantado sem ter que atualizar a versão em setup.py ou pyproject.toml. Esta configuração só é válida quando type está definido como whl.

Adicionado na versão 0.245.0 da CLI do Databricks.

executable

String

O tipo executável. Os valores válidos são bash, sh e cmd.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

files

Sequência

O caminho relativo ou absoluto para os arquivos de artefatos criados. Veja artefatos. nome .files.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

path

String

O caminho local do diretório onde o artefato está localizado. Os caminhos são relativos à localização do arquivo de configuração do pacote. Para compilações Python wheel , é o caminho para o arquivo setup.py do arquivo Python wheel . Se path não estiver incluído, a CLI Databricks tentará encontrar o arquivo setup.py do arquivo Python wheel na raiz do pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

type

String

Obrigatório se o artefato for um Python wheel. O tipo do artefato. Os valores válidos são whl e jar. Essa configuração não precisa ser especificada para criar outros artefatos.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Exemplos

A seguinte configuração cria um Python wheel usando Poetry:

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

A seguinte configuração executa testes e cria um pacote wheel. Para um tutorial completo de criação de pacotes que usa artifacts para construir um wheel, consulte Criar um arquivo Python wheel usando Databricks ativo Bundles.

YAML
artifacts:
default:
type: whl
build: |-
# run tests
python -m pytest tests/ -v

# build the actual artifact
python setup.py bdist_wheel

path: .

Para um exemplo de configuração que cria um arquivo JAR e o carrega no Unity Catalog, consulte Bundle that upload a JAR file to Unity Catalog.

artefatos.nome .arquivos

Type: Sequence

O caminho relativo ou absoluto para os arquivos do artefato compilado. Use source para especificar os artefatos construídos. Os caminhos são relativos à localização do arquivo de configuração do pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

source

String

Obrigatório. O arquivo de origem do artefato.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

pacote

Type: Map

Os atributos do pacote quando implantado nesse destino.

Um arquivo de configuração de pacote deve conter apenas um mapeamento de nível superior bundle .

Esse mapeamento de bundle deve conter um mapeamento de name que especifica um nome programático (ou lógico) para o pacote. O exemplo a seguir declara um pacote com o nome programático (ou lógico) hello-bundle.

YAML
bundle:
name: hello-bundle

Um mapeamento bundle também pode ser filho de um ou mais dos alvos no mapeamento de alvos de nível superior. Cada um desses mapeamentos filhos bundle especifica quaisquer substituições nãodefault no nível de destino.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

cluster_id

String

O ID de um cluster a ser usado para executar o pacote. Essa key permite especificar o ID de um cluster para usar como substituto para clusters definidos em outras partes do arquivo de configuração do pacote. Para obter informações sobre como recuperar o ID de um cluster, consulte URL e ID do recurso de computação.

A substituição cluster_id destina-se apenas a cenários de desenvolvimento e só é suportada para o destino que tem seu mapeamento mode definido como development. Para obter mais informações sobre o mapeamento target , consulte targets.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

compute_id

String

Obsoleto. O ID do site compute a ser usado para executar o pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

databricks_cli_version

String

A versão da CLI do Databricks a ser usada para o pacote. Consulte bundle.databricks_cli_version.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

deployment

Mapa

A definição da implantação do pacote. Para conhecer os atributos compatíveis, consulte Databricks ativo Bundle deployment modes. Veja bundle.deployment.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

git

Mapa

Os detalhes do controle de versão Git associados ao seu pacote. Para obter informações sobre os atributos suportados, consulte o git.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

name

String

O nome do pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

uuid

String

Reservado. Um UUID (Universally Unique Identifier, identificador universal exclusivo) para o pacote que o identifica exclusivamente nos sistemas internos da Databricks. Isso é gerado quando um projeto de pacote é inicializado usando um padrão Databricks (usando o comando databricks bundle init).

Adicionado na versão 0.236.0 da CLI do Databricks.

versão_cli_do_pacote.databricks

O mapeamento de bundle pode conter um mapeamento de databricks_cli_version que restringe a versão da CLI do Databricks exigida pelo pacote. Isso pode evitar problemas causados pelo uso de mapeamentos que não são compatíveis com uma determinada versão da CLI do Databricks.

A versão do Databricks CLI está em conformidade com o versionamento semântico e o mapeamento databricks_cli_version suporta a especificação de restrições de versão. Se o valor atual databricks --version não estiver dentro dos limites especificados no mapeamento databricks_cli_version do pacote, ocorrerá um erro quando databricks bundle validate for executado no pacote. Os exemplos a seguir demonstram algumas sintaxes comuns de restrição de versão:

YAML
bundle:
name: hello-bundle
databricks_cli_version: '0.218.0' # require Databricks CLI 0.218.0
YAML
bundle:
name: hello-bundle
databricks_cli_version: '0.218.*' # allow all patch versions of Databricks CLI 0.218
YAML
bundle:
name: my-bundle
databricks_cli_version: '>= 0.218.0' # allow any version of Databricks CLI 0.218.0 or higher
YAML
bundle:
name: my-bundle
databricks_cli_version: '>= 0.218.0, <= 1.0.0' # allow any Databricks CLI version between 0.218.0 and 1.0.0, inclusive

pacote.implantação

Type: Map

A definição da implantação do pacote

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

fail_on_active_runs

Booleana

Se deve falhar na execução ativa. Se isso for definido como verdadeiro, uma implantação em execução poderá ser interrompida.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

lock

Mapa

Os atributos do bloqueio de implantação. Veja bundle.deployment.lock.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

pacote.implantação.bloqueio

Type: Map

Os atributos do bloqueio de implantação.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

enabled

Booleana

Se esse bloqueio está ativado.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

force

Booleana

Se deve forçar esse bloqueio se ele estiver ativado.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

experimental

Type: Map

Define os atributos do recurso experimental.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

python

Mapa

Obsoleto. Em vez disso, use o mapeamento Python de nível superior.

Adicionado na versão 0.238.0 da CLI do Databricks.

python_wheel_wrapper

Booleana

Se deve usar um wrapper Python wheel.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

scripts

Mapa

O comando para a execução.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

skip_artifact_cleanup

Booleana

Determina se deve ignorar a exclusão da pasta .internal dentro de workspace.artifact_path. Por default, esta pasta é excluída antes do envio de novos artefatos de compilação (como pacotes Python ) durante a implantação. Defina como true para preservar os artefatos existentes entre as implantações.

Adicionado na versão 0.254.0 da CLI do Databricks.

skip_name_prefix_for_schema

Booleana

Se deve ignorar a adição do prefixo (definido em presets.name_prefix ou calculado quando mode: development) aos nomes dos esquemas Unity Catalog definidos no pacote.

Adicionado na versão 0.255.0 da CLI do Databricks.

use_legacy_run_as

Booleana

Se o comportamento de execução herdado deve ser usado.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

incluir

Type: Sequence

Especifica uma lista de padrões de caminho (globs) que contêm arquivos de configuração a serem incluídos no pacote. Esses padrões de caminho são relativos à localização do arquivo de configuração do pacote no qual os padrões de caminho são especificados. Além de databricks.yml, você deve usar o array include para especificar todos os arquivos de configuração a serem incluídos no pacote.

dica

Para incluir ou excluir outros arquivos no pacote, use include e exclude.

Essa matriz include só pode aparecer como um mapeamento de nível superior.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

O exemplo de configuração a seguir inclui três arquivos de configuração. Esses arquivos estão na mesma pasta que o arquivo de configuração do pacote:

YAML
include:
- 'bundle.artifacts.yml'
- 'bundle.resources.yml'
- 'bundle.targets.yml'

A seguinte configuração de exemplo inclui todos os arquivos com nomes que começam com bundle e terminam com .yml. Esses arquivos estão na mesma pasta que o arquivo de configuração do pacote:

YAML
include:
- 'bundle*.yml'

permissões

Type: Sequence

Define as permissões a serem aplicadas ao recurso definido no pacote, onde cada item na sequência é uma permissão para uma entidade específica. Consulte Definir permissões para recurso em Databricks ativos Bundles.

Os níveis de permissão de nível superior permitidos são CAN_VIEW, CAN_MANAGE e CAN_RUN.

Se você deseja aplicar permissões a um recurso específico, consulte Definir permissões para um recurso específico.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

group_name

String

O nome do grupo que tem a permissão definida em nível.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

level

String

A permissão permitida para o usuário, o grupo e a entidade de serviço definidos para essa permissão. Os valores válidos para esse key são diferentes, dependendo do fato de as permissões serem definidas no nível superior do pacote ou para um recurso específico. Consulte Definir permissões para recurso em Databricks ativo Bundles.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

service_principal_name

String

O nome da entidade de serviço que tem a permissão definida no nível.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

user_name

String

O nome do usuário que tem a permissão definida em nível.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Exemplo

A seguinte configuração de exemplo define os níveis de permissão para um usuário, grupo e entidade de serviço, que são aplicados a todos os recursos definidos em resources no pacote:

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

predefinições

Type: Map

Define as configurações predefinidas de implantação de pacotes. Para obter mais informações, consulte Predefinições personalizadas.

A menos que uma exceção seja especificada para uma predefinição, se ambos mode e presets estiverem definidos, as predefinições substituem o comportamento do modo default e as configurações de recursos individuais substituem as predefinições.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Preset

Descrição

artifacts_dynamic_version

Se deve atualizar dinamicamente a versão dos artefatos whl durante a implantação. Os valores válidos são true ou false. Se a configuração de nível superior artifacts.dynamic_version for especificada, ela substituirá esta configuração predefinida.

Adicionado na versão 0.256.0 da CLI do Databricks.

jobs_max_concurrent_runs

O número máximo de execução simultânea permitida para Job.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

name_prefix

As sequências de prefixos a serem adicionadas aos nomes dos recursos.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

pipelines_development

Se as implantações de pipeline devem ser bloqueadas no modo de desenvolvimento. Os valores válidos são true ou false.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

source_linked_deployment

Se os recursos criados durante a implantação apontam para arquivos de origem no workspace em vez de suas cópias workspace .

Adicionado na versão 0.236.0 da CLI do Databricks.

tags

Um conjunto de key tags que se aplicam a todos os recursos que suportam tags, incluindo Job e experiments. Os Bundles Databricks Ativo não suportam tags para o recurso schema .

Adicionado na versão 0.229.0 ou inferior CLI Databricks

trigger_pause_status

Um estado de pausa a ser aplicado a todos os gatilhos e programadores. Os valores válidos são PAUSED ou UNPAUSED.

Se mode for definido como development, trigger_pause_status será sempre PAUSED.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Python

Type: Map

Configura o carregamento do código Python definido com o pacote databricks-bundles. Para obter mais informações, consulte Configuração do pacote em Python.

Movido de experimental na versão 0.275.0 da CLI do Databricks

Chave

Tipo

Descrição

mutators

Sequência

Mutators contém uma lista de caminhos de função totalmente qualificados para funções mutadoras, como [my_project.mutators:add_default_cluster].

Adicionado na versão 0.238.0 da CLI do Databricks.

resources

Sequência

recurso contém uma lista de caminhos de função totalmente qualificados para carregar o recurso definido no código Python, como ["my_project.resources:load_resources"]

Adicionado na versão 0.238.0 da CLI do Databricks.

venv_path

String

O caminho para o ambiente virtual. Se ativado, o código Python será executado dentro deste ambiente. Se desativado, o padrão será usar o interpretador Python disponível no shell atual.

Adicionado na versão 0.238.0 da CLI do Databricks.

recurso

Type: Map

Define o recurso para o pacote, onde cada key é o nome do recurso e o valor é um Mapa que define o recurso. Para obter mais informações sobre o recurso suportado por Databricks ativo Bundles e referência de definição de recurso, consulte Databricks ativo Bundles recurso.

O mapeamento resources pode aparecer como um mapeamento de nível superior ou pode ser um filho de um ou mais dos destinos no mapeamento de destinos de nível superior e inclui zero ou um dos tipos de recurso suportados. Cada mapeamento de tipo de recurso inclui uma ou mais declarações de recurso individuais, cada uma devendo ter um nome único. Essas declarações de recurso individuais usam a carga útil da solicitação de criação de operações do objeto correspondente, expressa em YAML, para definir o recurso. As propriedades suportadas para um recurso são os campos suportados do objeto correspondente.

Os payloads de solicitação de criação de operações estão documentados na Referência API REST Databricks e o comando databricks bundle schema exibe todos os esquemas de objeto suportados. Além disso, o comando databricks bundle validate retorna avisos se propriedades de recurso desconhecidas forem encontradas nos arquivos de configuração do pacote.

Para mais informações sobre recursos suportados em pacotes, bem como configurações e exemplos comuns, consulte Databricks ativo Bundles recurso e Exemplos de configuração de pacotes.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

YAML
resources:
<resource-type>:
<resource-name>:
<resource-field-name>: <resource-field-value>

Chave

Tipo

Descrição

alerts

Mapa

As definições de alerta (v2) para o pacote, onde cada key é o nome do alerta. Veja o alerta.

Adicionado na versão 0.279.0 da CLI do Databricks.

apps

Mapa

As definições do aplicativo Databricks para o pacote, em que cada key é o nome do aplicativo. Veja o aplicativo.

Adicionado na versão 0.239.0 da CLI do Databricks.

catalogs

Mapa

As definições do catálogo (Unity Catalog) para o pacote, onde cada key é o nome de um catálogo. Consulte os catálogos.

Adicionado na versão 0.287.0 da CLI do Databricks.

clusters

Mapa

As definições de clustering para o pacote, em que cada key é o nome de um clustering. Veja clustering.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

dashboards

Mapa

As definições do painel para o pacote, em que cada key é o nome do painel. Veja o painel.

Adicionado na versão 0.232.0 da CLI do Databricks.

database_catalogs

Mapa

As definições do catálogo do banco de dados para o pacote, onde cada key é o nome do catálogo do banco de dados. Veja database_catalog.

Adicionado na versão 0.265.0 da CLI do Databricks.

database_instances

Mapa

As definições de instância do banco de dados para o pacote, onde cada key é o nome da instância do banco de dados. Veja database_instance.

Adicionado na versão 0.265.0 da CLI do Databricks.

experiments

Mapa

As definições de experimento para o pacote, em que cada key é o nome do experimento. Veja o experimento.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

jobs

Mapa

As definições de trabalho para o pacote, em que cada key é o nome do trabalho. Ver trabalho.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

model_serving_endpoints

Mapa

As definições do servindo modelo endpoint para o pacote, onde cada key é o nome do servindo modelo endpoint. Veja model_serving_endpoint.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

models

Mapa

As definições de modelo para o pacote, em que cada key é o nome do modelo. Veja o modelo (legado).

Adicionado na versão 0.229.0 ou inferior CLI Databricks

pipelines

Mapa

As definições de pipeline para o pacote, em que cada key é o nome do pipeline. Veja o pipeline.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

postgres_branches

Mapa

As definições de ramificação do Postgres para o pacote, onde cada key é o nome da ramificação do Lakebase. Veja postgres_branch.

Adicionado na versão 0.287.0 da CLI do Databricks.

postgres_endpoints

Mapa

As definições endpoint do Postgres para o pacote, onde cada key é o nome do endpoint compute do Lakebase. Consulte postgres_endpoint.

Adicionado na versão 0.287.0 da CLI do Databricks.

postgres_projects

Mapa

As definições do projeto Postgres para o pacote, onde cada key é o nome do projeto Lakebase. Veja postgres_project.

Adicionado na versão 0.287.0 da CLI do Databricks.

quality_monitors

Mapa

As definições do monitor de qualidade para o pacote, em que cada key é o nome do monitor de qualidade. Consulte quality_monitor (Unity Catalog).

Adicionado na versão 0.229.0 ou inferior CLI Databricks

registered_models

Mapa

As definições do modelo registrado para o pacote, em que cada key é o nome do modelo registrado Unity Catalog. Consulte registered_model (Unity Catalog).

Adicionado na versão 0.229.0 ou inferior CLI Databricks

schemas

Mapa

As definições de esquema do pacote, em que cada key é o nome do esquema. Veja schema (Unity Catalog).

Adicionado na versão 0.229.0 ou inferior CLI Databricks

secret_scopes

Mapa

As definições do escopo secreto do pacote, em que cada key é o nome do escopo secreto. Veja secret_scope.

Adicionado na versão 0.252.0 da CLI do Databricks.

sql_warehouses

Mapa

As definições SQL warehouse para o pacote, onde cada key é o nome do SQL warehouse. Veja sql_warehouse.

Adicionado na versão 0.260.0 da CLI do Databricks.

synced_database_tables

Mapa

As definições da tabela do banco de dados sincronizado para o pacote, em que cada key é o nome da tabela do banco de dados. Veja synced_database_table.

Adicionado na versão 0.266.0 da CLI do Databricks.

volumes

Mapa

As definições de volume para o pacote, em que cada key é o nome do volume. Veja o volume (Unity Catalog).

Adicionado na versão 0.236.0 da CLI do Databricks.

Exemplo

A seguinte configuração de exemplo define um recurso de trabalho:

YAML
resources:
jobs:
hello-job:
name: hello-job
tasks:
- task_key: hello-task
existing_cluster_id: 1234-567890-abcde123
notebook_task:
notebook_path: ./hello.py

execução

Type: Map

A identidade (user_name ou service_principal_name) a ser usada para execução do fluxo de trabalho Databricks ativos Bundles. Isso proporciona a capacidade de separar a identidade usada para implantar um Job ou pipeline pacote daquela usada para executar o Job ou pipeline. Consulte Especificar uma identidade de execução para um fluxo de trabalho de pacotes ativos Databricks.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

service_principal_name

String

O ID do aplicativo de uma entidade de serviço ativa. A configuração desse campo exige a função servicePrincipal/user.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

user_name

String

O email de um usuário ativo do workspace. Os usuários não administradores só podem definir esse campo como seu próprio email.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

scripts

Type: Map

Os scripts que podem ser executados usando bundle run. Cada script nomeado no mapeamento scripts contém conteúdo com comando. Consulte Executar scripts.

Adicionado na versão 0.259.0 da CLI do Databricks.

YAML
scripts:
<script-name>:
<script-field-name>: <script-field-value>

Chave

Tipo

Descrição

content

String

O comando para a execução

Adicionado na versão 0.259.0 da CLI do Databricks.

Exemplos

YAML
scripts:
my_script:
content: uv run pytest -m ${bundle.target}

sincronizar

Type: Map

Os arquivos e caminhos de arquivos a serem incluídos ou excluídos no pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

exclude

Sequência

Uma lista de arquivos ou pastas a serem excluídos do pacote. Veja incluir e excluir.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

include

Sequência

Uma lista de arquivos ou pastas a serem incluídos no pacote. Veja incluir e excluir.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

paths

Sequência

Os caminhos das pastas locais, que podem estar fora da raiz do pacote, são sincronizados com o workspace quando o pacote é implantado. Consulte sync.paths.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

incluir e excluir

Os mapeamentos include e exclude dentro do mapeamento sync especificam uma lista de arquivos ou pastas a serem incluídos ou excluídos das implantações de pacotes, dependendo das seguintes regras:

  • Com base em qualquer lista de padrões glob de arquivos e caminhos em um arquivo .gitignore na raiz do pacote, o mapeamento include pode conter uma lista de padrões glob de arquivos, padrões glob de caminhos ou ambos, relativos à raiz do pacote, para inclusão explícita.
  • Com base em qualquer lista de padrões glob de arquivos e caminhos em um arquivo .gitignore na raiz do pacote, mais a lista de padrões glob de arquivos e caminhos no mapeamento include , o mapeamento exclude pode conter uma lista de padrões glob de arquivos, padrões glob de caminhos ou ambos, relativos à raiz do pacote, para excluir explicitamente.

Todos os caminhos para arquivos e pastas especificados são relativos à localização do arquivo de configuração do pacote no qual estão especificados.

A sintaxe para padrões de arquivos e caminhos em include e exclude segue a sintaxe padrão de padrões em .gitignore . Consulte Formato do padrão gitignore.

Por exemplo, se o seguinte arquivo .gitignore contiver as seguintes entradas:

.databricks
my_package/dist

E o arquivo de configuração do pacote contém o seguinte mapeamento include:

YAML
sync:
include:
- my_package/dist/*.whl

Em seguida, todos os arquivos na pasta my_package/dist com uma extensão de arquivo *.whl são incluídos. Quaisquer outros arquivos na pasta my_package/dist não estão incluídos.

No entanto, se o arquivo de configuração do pacote também contiver o seguinte mapeamento exclude:

YAML
sync:
include:
- my_package/dist/*.whl
exclude:
- my_package/dist/delete-me.whl

Em seguida, todos os arquivos na pasta my_package/dist com uma extensão de arquivo de *.whl, exceto o arquivo chamado delete-me.whl, são incluídos. Quaisquer outros arquivos na pasta my_package/dist também não estão incluídos.

O mapeamento de sync também pode ser declarado no mapeamento de targets para um alvo específico. Qualquer mapeamento de sync declarado em um destino é mesclado com qualquer declaração de mapeamento de sync de nível superior. Por exemplo, continuando com o exemplo anterior, o seguinte mapeamento de include no nível targets se funde com o mapeamento de include no mapeamento de sync de nível superior:

YAML
targets:
dev:
sync:
include:
- my_package/dist/delete-me.whl

caminhos de sincronização

O mapeamento sync pode conter um mapeamento paths que especifica caminhos locais para sincronizar com o workspace. O mapeamento paths permite compartilhar arquivos comuns entre pacotes e pode ser usado para sincronizar arquivos localizados fora da raiz do pacote. (O diretório raiz do pacote é a localização do arquivo databricks.yml.) Isso é especialmente útil quando você tem um único repositório que hospeda vários pacotes e deseja compartilhar bibliotecas, arquivos de código ou configurações.

Os caminhos especificados devem ser relativos a arquivos e diretórios ancorados na pasta onde o mapeamento paths está definido. Se um ou mais valores de caminho percorrerem o diretório até um ancestral da raiz do pacote, o caminho raiz será determinado dinamicamente para garantir que a estrutura de pastas permaneça intacta. Por exemplo, se a pasta raiz do pacote for nomeada my_bundle , então esta configuração em databricks.yml sincroniza a pasta common localizada um nível acima da raiz do pacote e a própria raiz do pacote:

YAML
sync:
paths:
- ../common
- .

A implantação deste pacote resulta na seguinte estrutura de pastas no workspace:

common/
common_file.txt
my_bundle/
databricks.yml
src/
...

alvos

Type: Map

Define os contextos de destino de implantação para o pacote. Cada destino é uma coleção única de artefatos, configurações workspace Databricks e, às vezes, detalhes de recursos específicos do destino.

O mapeamento targets consiste em um ou mais mapeamentos de destino, cada um dos quais deve ter um nome programático (ou lógico) único. Este mapeamento é opcional, mas altamente recomendado.

As configurações dentro do mapeamento targets têm precedência sobre as configurações especificadas no workspace de nível superior, artefatos e mapeamentos de recursos .

Um alvo também pode sobrescrever os valores de quaisquer variáveis de nível superior.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

YAML
targets:
<target-name>:
<target-field-name>: <target-field-value>

Chave

Tipo

Descrição

artifacts

Mapa

Os artefatos a serem incluídos na implantação de destino. Veja artefatos.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

bundle

Mapa

Os atributos do pacote quando implantados neste destino. Veja o pacote.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

cluster_id

String

A ID do clustering a ser usado para esse destino.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

compute_id

String

Obsoleto. O ID do site compute a ser usado para esse alvo.

default

Booleana

Se este alvo é o alvo default . Consulte targets.name.default.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

git

Mapa

As configurações de controle de versão do Git para o destino. Veja git.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

mode

String

O modo de implantação para o alvo. Os valores válidos são development ou production. Consulte targets.name.mode e Databricks ativo Bundle deployment modes.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

permissions

Sequência

As permissões para implantar e executar o pacote no destino. Veja as permissões.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

presets

Mapa

As predefinições de implantação para o alvo. Veja os alvos. nome .presets.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

resources

Mapa

As definições de recurso para o alvo. Ver recurso.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

run_as

Mapa

A identidade a ser usada para executar o pacote. Consulte execução e Especificar uma identidade de execução para um Databricks ativo Bundles fluxo de trabalho.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

sync

Mapa

Os caminhos locais a serem sincronizados com o destino workspace quando um pacote é executado ou implantado. Consulte sincronização.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

variables

Mapa

Definições de variáveis personalizadas para o alvo. Veja as variáveis.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

workspace

Mapa

O workspace Databricks para o alvo. Veja workspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

alvos. nome padrão

Para especificar um destino default para o comando bundle, defina o mapeamento default para true. Por exemplo, este alvo denominado dev é o alvo default :

YAML
targets:
dev:
default: true

Se um destino default não estiver configurado, ou se você quiser validar, implantar e executar Job ou pipeline dentro de um destino específico, use a opção -t do comando bundle.

O seguinte comando valida, implanta e executa my_job dentro dos alvos dev e prod :

Bash
databricks bundle validate
databricks bundle deploy -t dev
databricks bundle run -t dev my_job
Bash
databricks bundle validate
databricks bundle deploy -t prod
databricks bundle run -t prod my_job

O exemplo a seguir declara dois alvos. O primeiro alvo tem o nome dev e é o alvo default usado quando nenhum alvo é especificado para o comando bundle. O segundo alvo tem o nome prod e é usado apenas quando este alvo é especificado para o comando bundle.

YAML
targets:
dev:
default: true
prod:
workspace:
host: https://<production-workspace-url>

alvos. nome .modo

Para facilitar o desenvolvimento e as melhores práticas CI/CD , Databricks Ativo Bundles oferece modos de implantação para destinos que definem comportamentos default para fluxos de trabalho de pré-produção e produção. Alguns comportamentos também podem ser configurados usando destinos. nome .presets.

Para obter detalhes, consulte os modos de implantaçãoDatabricks ativo Bundle.

dica

Para definir identidades de execução para pacotes, você pode especificar run_as para cada destino, conforme descrito em Especificar uma identidade de execução para um fluxo de trabalho de pacotes ativos Databricks.

Para especificar que um alvo é tratado como um alvo de desenvolvimento, adicione o mapeamento mode definido para development. Para especificar que um alvo é tratado como um alvo de produção, adicione o mapeamento mode definido em production. Por exemplo, este alvo denominado prod é tratado como um alvo de produção:

YAML
targets:
prod:
mode: production

alvos. nome .predefinições

Você pode personalizar alguns dos comportamentos de implantação de destino mode usando o mapeamento presets .

Para obter uma lista das predefinições disponíveis, consulte Predefinições personalizadas.

O exemplo a seguir mostra um destino de produção personalizado que prefixa e tags todos os recursos de produção:

YAML
targets:
prod:
mode: production
presets:
name_prefix: 'production_' # prefix all resource names with production_
tags:
prod: true

variáveis

Type: Map

Define uma variável personalizada para o pacote. Para cada variável, defina uma descrição opcional, um valor default , se a variável personalizada é de um tipo complexo ou uma pesquisa para recuperar um valor de ID, usando o seguinte formato:

YAML
variables:
<variable-name>:
description: <variable-description>
default: <optional-default-value>
type: <optional-type-value> # "complex" is the only valid value
lookup:
<optional-object-type>: <optional-object-name>
nota

As variáveis são consideradas do tipo string, a menos que type seja definido como complex. Veja Definir uma variável complexa.

Para referenciar uma variável personalizada dentro da configuração do pacote, use a substituição ${var.<variable_name>}.

Para obter mais informações sobre variáveis personalizadas e substituições, consulte Substituições e variáveis em Databricks Ativo Bundles.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

default

Qualquer um

O valor default da variável.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

description

String

A descrição da variável.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

lookup

Mapa

O nome do objeto alert, cluster_policy, cluster, dashboard, instance_pool, job, metastore, pipeline, query, service_principal ou warehouse para o qual recuperar uma ID. Veja as variáveis. nome .lookup.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

type

String

O tipo da variável, simples ou complexa. Defina esta key apenas se a variável for complexa. Valores válidos: complex.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

variáveis. nome .lookup

Type: Map

O nome do alerta, cluster_policy, cluster, dashboard, instance_pool, Job, metastore, pipeline, query, service_principal ou objeto de warehouse para o qual se deseja recuperar um ID. Para obter informações sobre como usar a pesquisa, consulte Recuperar o valor de ID de um objeto.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

alert

String

O nome do alerta para o qual se deseja recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

cluster

String

O nome do clustering para o qual se deseja recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

cluster_policy

String

O nome do clustering para o qual se deseja recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

dashboard

String

O nome do painel para o qual recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

instance_pool

String

O nome do instance_pool para o qual recuperar um ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

job

String

O nome do trabalho para o qual se deseja recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

metastore

String

O nome da metastore para a qual recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

notification_destination

String

O nome do notification_destination para o qual recuperar uma ID.

Adicionado na versão 0.236.0 da CLI do Databricks.

pipeline

String

O nome do pipeline para o qual se deseja recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

query

String

O nome da consulta para a qual recuperar um ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

service_principal

String

O nome do serviço para o qual o senhor deseja recuperar um ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

warehouse

String

O nome do depósito para o qual recuperar uma ID.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

workspace

Type: Map

Define o workspace Databricks para o pacote. O arquivo de configuração do pacote pode conter apenas um mapeamento de nível superior workspace para especificar quaisquer configurações workspace Databricks nãodefault a serem usadas.

importante

Os caminhos workspace Databricks válidos começam com /Workspace ou, para artefatos, /Volumestambém é suportado. Os caminhos workspace personalizados são automaticamente prefixados com /Workspace, portanto, se você usar qualquer substituição de caminho workspace em seu caminho personalizado, como ${workspace.file_path}, você não precisa adicionar /Workspace ao caminho.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Chave

Tipo

Descrição

artifact_path

String

O caminho do artefato a ser usado no site workspace para implantações e fluxo de trabalho de execução

Adicionado na versão 0.229.0 ou inferior CLI Databricks

auth_type

String

O tipo de autenticação a ser usado, especialmente importante nos casos em que a CLI do Databricks infere um tipo de autenticação inesperado. Consulte o recurso Autorizar acesso ao Databricks.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_client_id

String

O ID do cliente Azure. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_environment

String

O ambiente Azure. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_login_app_id

String

ID do aplicativo de login do Azure. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_tenant_id

String

O ID tenant Azure . Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_use_msi

Booleana

Se devo usar MSI para o Azure. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

azure_workspace_resource_id

String

O ID do recurso workspace Azure . Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

client_id

String

O ID do cliente para o workspace. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

file_path

String

O caminho do arquivo a ser usado no workspace para implantações e execução do fluxo de trabalho. Consulte workspace.file_path.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

google_service_account

String

O nome account do serviço do Google. Consulte Autenticaçãoworkspace.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

host

String

URL do host workspace do Databricks . Veja os nomes, URLs e IDs das instâncias do espaço de trabalho.

A configuração do mapeamento host instrui a CLI do Databricks a encontrar um perfil correspondente no seu arquivo .databrickscfg e, em seguida, usar os campos desse perfil para determinar qual tipo de autenticação do Databricks usar. Se existirem vários perfis com um campo host correspondente no seu ficheiro .databrickscfg , então deve usar o mapeamento profile (ou as opções de linha de comando --profile ou -p ) para especificar um perfil.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

profile

String

O nome do perfil workspace Databricks . Consulte workspace.profile.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

resource_path

String

O caminho do recurso workspace

Adicionado na versão 0.230.0 da CLI do Databricks.

root_path

String

O caminho raiz workspace Databricks . Consulte workspace.root_path.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

state_path

String

O caminho do estado workspace . Essa key assume por padrão o caminho default ${workspace.root}/state e representa o caminho dentro do seu workspace para armazenar informações de estado Terraform sobre implantações.

Adicionado na versão 0.229.0 ou inferior CLI Databricks

Autenticaçãoworkspace

O mapeamento workspace também pode conter mapeamentos para especificar o mecanismo de autenticação Databricks a ser usado. Caso não estejam especificados no mapeamento workspace de nível superior, eles deverão ser especificados em um mapeamento workspace como filhos de um ou mais dos destinos no mapeamento de destinos de nível superior.

  • Para autenticação OAuth máquina a máquina (M2M), use o mapeamento client_id . Alternativamente, você pode definir esse valor na variável de ambiente local DATABRICKS_CLIENT_ID. Ou você pode criar um perfil de configuração com o valor client_id e, em seguida, especificar o nome do perfil com o mapeamento profile (ou usando as opções --profile ou -p ao executar o comando bundle validate, implant, execução e destroy com a CLI Databricks ). Consulte Autorizar o acesso da entidade de serviço ao Databricks com OAuth.
nota

Não é possível especificar um valor secreto OAuth do Databricks no arquivo de configuração do pacote. Em vez disso, defina a variável de ambiente local DATABRICKS_CLIENT_SECRET. Alternativamente, você pode adicionar o valor client_secret a um perfil de configuração e, em seguida, especificar o nome do perfil com o mapeamento profile (ou usando as opções --profile ou -p ao executar o comando bundle validate, implant, execução e destroy com a CLI do Databricks ).

  • Para autenticação account de serviço do Google Cloud, o mapeamento google_service_account é usado. Alternativamente, você pode definir esse valor na variável de ambiente local DATABRICKS_GOOGLE_SERVICE_ACCOUNT. Ou você pode criar um perfil de configuração com o valor google_service_account e, em seguida, especificar o nome do perfil com o mapeamento profile (ou usando as opções --profile ou -p ao executar o comando bundle validate, implant, execução e destroy com a CLI Databricks ). Consulte a autenticação do Google Cloud ID.

caminho_raizworkspace

Esse mapeamento workspace pode conter um mapeamento root_path para especificar um caminho raiz não padrão a ser usado no workspace para implantações e execuções de fluxos de trabalho, como por exemplo:

YAML
workspace:
root_path: /Workspace/Users/${workspace.current_user.userName}/.bundle/${bundle.name}/my-envs/${bundle.target}

Por default, para root_path o Databricks CLI usa o caminho default de /Workspace/Users/${workspace.current_user.userName}/.bundle/${bundle.name}/${bundle.target}, que usa substituições.

caminho_do_artefatoworkspace

Esse mapeamento de workspace também pode conter um mapeamento de artifact_path para especificar um caminho de artefato não padrão a ser usado no workspace para implantações e execuções de fluxos de trabalho, como por exemplo:

YAML
workspace:
artifact_path: /Workspace/Users/${workspace.current_user.userName}/.bundle/${bundle.name}/my-envs/${bundle.target}/artifacts

Por default, para artifact_path o Databricks CLI usa o caminho default de ${workspace.root}/artifacts, que usa substituições.

nota

O mapeamento artifact_path não oferece suporte aos caminhos do Databricks File System (DBFS).

workspace.caminho_do_arquivo

Esse mapeamento de workspace também pode conter um mapeamento de file_path para especificar um caminho de arquivo não padrão a ser usado no workspace para implantações e execuções de fluxos de trabalho, como por exemplo:

YAML
workspace:
file_path: /Workspace/Users/${workspace.current_user.userName}/.bundle/${bundle.name}/my-envs/${bundle.target}/files

Por default, para file_path o Databricks CLI usa o caminho default de ${workspace.root}/files, que usa substituições.

importante

Não é possível especificar variáveis personalizadas para esses valores de autenticação usando a sintaxe ${var.*} .

perfilworkspace

nota

A Databricks recomenda que você use o mapeamento host (ou as opções --profile ou -p ao executar os comandos de validação, implantação, execução e destruição do pacote com a CLI do Databricks) em vez do mapeamento profile, pois isso torna os arquivos de configuração do pacote mais portáteis.

O mapeamento profile especifica o nome de um perfil de configuração a ser usado para autenticar neste workspace Databricks . Este perfil de configuração corresponde ao que você criou ao configurar a CLI do Databricks.

Objetos comuns

presente

Type: Map

Define os detalhes do controle de versão Git. Isso é útil para propagar metadados de implantação que podem ser usados posteriormente para identificar recursos. Por exemplo, você pode rastrear a origem do repositório de um Job implantado por CI/CD.

Sempre que você executar um comando bundle como validate, deploy ou run, o comando bundle preencherá a árvore de configuração do comando com as seguintes configurações default :

Para recuperar ou substituir as configurações do Git, seu pacote deve estar dentro de um diretório associado a um repositório Git, por exemplo, um diretório local que é inicializado pela execução do comando git clone. Se o diretório não estiver associado a um repositório Git, essas configurações do Git estarão em branco.

Chave

Tipo

Descrição

branch

String

O nome da branch Git atual. Este é o mesmo valor que você obteria se executasse o comando git branch --show-current do seu repo clonado. Você pode usar substituições para se referir a esse valor com seus arquivos de configuração de pacote, como ${bundle.git.branch}.

origin_url

String

O URL de origem do repositório. Este é o mesmo valor que você obteria se executasse o comando git config --get remote.origin.url do seu repo clonado. Você pode usar substituições para se referir a esse valor com seus arquivos de configuração de pacote, como ${bundle.git.origin_url}.

Exemplos

Você pode substituir as configurações origin_url e branch dentro do mapeamento git do seu mapeamento bundle de nível superior, se necessário:

YAML
bundle:
git:
origin_url: <some-non-default-origin-url>
branch: <some-non-current-branch-name>