Partager via


Référence de configuration

Cet article fournit des informations de référence sur les clés prises en charge par la configuration YAML (Databricks Asset Bundles). Veuillez consulter la section Que sont-les Databricks Asset Bundles ?.

Pour obtenir des exemples complets de paquets, consultez les exemples de configuration de paquets et le dépôt GitHub bundle-examples .

artefacts

Type: Map

Spécifie les artefacts à générer automatiquement pendant les déploiements de bundles qui peuvent être utilisés ultérieurement dans les exécutions de bundle. Chaque clé est le nom de l’artefact et la valeur est une carte qui définit les paramètres de génération de l’artefact.

Conseil / Astuce

Vous pouvez définir, combiner et remplacer les paramètres des artefacts dans les bundles, comme décrit dans Remplacement par les paramètres cibles.

Ajouté dans Databricks CLI version 0.229.0

artifacts:
  <artifact-name>:
    <artifact-field-name>: <artifact-field-value>
Clé Type Descriptif
build Chaîne Ensemble facultatif de commandes de build à exécuter localement avant le déploiement. Pour les builds de fichiers wheels Python, l’interface CLI de Databricks suppose qu’elle peut trouver une installation locale du package wheel Python pour exécuter des builds, et qu’elle exécute le python setup.py bdist_wheel de la commande par défaut pendant chaque déploiement de pack. Spécifiez plusieurs commandes de build sur des lignes distinctes.
Ajouté dans Databricks CLI version 0.229.0
dynamic_version Booléen Indique s’il faut corriger la version du wheel de manière dynamique en fonction du timestamp du fichier whl. Si cette valeur est définie true, le nouveau code peut être déployé sans avoir à mettre à jour la version dans setup.py ou pyproject.toml. Ce paramètre n’est valide que lorsqu’il type est défini sur whl.
Ajout dans Databricks CLI version 0.245.0
executable Chaîne Type exécutable. Les valeurs valides sont bash, sh et cmd.
Ajouté dans Databricks CLI version 0.229.0
files Sequence Chemin d’accès relatif ou absolu aux fichiers d’artefact générés. Voir artifacts.name.files.
Ajouté dans Databricks CLI version 0.229.0
path Chaîne Chemin d’accès local du répertoire de l’artefact. Les chemins d’accès sont relatifs à l’emplacement du fichier de configuration de bundle. Pour les builds wheel Python, il s’agit du chemin d’accès au fichier setup.py du fichier wheel Python. Si path n’est pas inclus, l’interface CLI de Databricks tente de trouver le fichier setup.py du fichier wheel Python à la racine du pack.
Ajouté dans Databricks CLI version 0.229.0
type Chaîne Obligatoire si l’artefact est une roue Python. Type de l’artefact. Les valeurs valides sont whl et jar. Ce paramètre n’a pas besoin d’être spécifié pour générer d’autres artefacts.
Ajouté dans Databricks CLI version 0.229.0

Exemples

La configuration suivante génère une roue Python à l’aide de La poésie :

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

La configuration suivante exécute des tests et génère une roue. Pour obtenir un didacticiel complet sur l’offre groupée qui utilise artifacts pour générer une roue, consultez Générer un fichier de roue Python à l’aide de Bundles de ressources Databricks.

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

      # build the actual artifact
      python setup.py bdist_wheel

    path: .

Pour obtenir un exemple de configuration qui génère un fichier JAR et le charge dans le catalogue Unity, consultez Bundle qui charge un fichier JAR dans le catalogue Unity.

Artefacts. name.files

Type: Sequence

Chemin d’accès relatif ou absolu aux fichiers d’artefact générés. Permet source de spécifier les artefacts générés. Les chemins d’accès sont relatifs à l’emplacement du fichier de configuration de bundle.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
source Chaîne Obligatoire. Fichier source de l’artefact.
Ajouté dans Databricks CLI version 0.229.0

service

Type: Map

Attributs du bundle lors du déploiement sur cette cible.

Un fichier de configuration groupé ne doit contenir qu’un seul mappage de niveau bundle supérieur.

Ce mappage bundle doit contenir un mappage name qui spécifie un nom programmatique (ou logique) pour le pack. L’exemple suivant déclare un pack avec le nom programmatique (ou logique) hello-bundle.

bundle:
  name: hello-bundle

Un mappage bundle peut également être un enfant d’une ou plusieurs cibles dans le mappage de cibles de niveau supérieur. Chacun de ces mappages bundle enfants spécifie les remplacements autres que ceux par défaut au niveau cible.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
cluster_id Chaîne ID d’un cluster à utiliser pour exécuter le bundle. Cette clé vous permet de spécifier l’ID d’un cluster à utiliser comme remplacement pour les clusters définis ailleurs dans le fichier de configuration de bundle. Pour plus d’informations sur la récupération de l’ID d’un cluster, consultez l’URL et l’ID des ressources de calcul.
Le remplacement cluster_id est destiné aux scénarios de développement uniquement et n’est pris en charge que pour la cible dont le mappage mode est défini sur development. Pour plus d’informations sur le mappage target, consultez les cibles.
Ajouté dans Databricks CLI version 0.229.0
compute_id Chaîne Obsolète. ID du calcul à utiliser pour exécuter le bundle.
Ajouté dans Databricks CLI version 0.229.0
databricks_cli_version Chaîne Version de l’interface CLI Databricks à utiliser pour l’offre groupée. Voir bundle.databricks_cli_version.
Ajouté dans Databricks CLI version 0.229.0
deployment Mappage Définition du déploiement du bundle. Pour connaître les attributs pris en charge, consultez les modes de déploiement databricks Asset Bundle. Consultez bundle.deployment.
Ajouté dans Databricks CLI version 0.229.0
git Mappage Détails du contrôle de version Git associés à votre offre groupée. Pour les attributs pris en charge, consultez git.
Ajouté dans Databricks CLI version 0.229.0
name Chaîne Nom du bundle.
Ajouté dans Databricks CLI version 0.229.0
uuid Chaîne Réservé. Identificateur unique universel (UUID) pour le bundle qui identifie de manière unique le bundle dans les systèmes internes de Databricks. Cela est généré lorsqu’un projet groupé est initialisé à l’aide d’un modèle Databricks (à l’aide de la commande databricks bundle init).
Ajout dans Databricks CLI version 0.236.0

bundle.databricks_cli_version

Le mappage bundle peut contenir un mappage databricks_cli_version qui limite la version de l’interface CLI de Databricks requise par le pack. Cela peut éviter les problèmes causés par l’utilisation de mappages non pris en charge dans une certaine version de l’interface CLI de Databricks.

La version de l’interface CLI de Databricks est conforme à la gestion sémantique de version et le mappage databricks_cli_version prend en charge la spécification des contraintes de version. Si la valeur actuelle databricks --version n’est pas dans les limites spécifiées dans le mappage du bundle databricks_cli_version, une erreur se produit lorsque databricks bundle validate est exécuté sur le bundle. Les exemples suivants illustrent une syntaxe de contrainte de version courante :

bundle:
  name: hello-bundle
  databricks_cli_version: '0.218.0' # require Databricks CLI 0.218.0
bundle:
  name: hello-bundle
  databricks_cli_version: '0.218.*' # allow all patch versions of Databricks CLI 0.218
bundle:
  name: my-bundle
  databricks_cli_version: '>= 0.218.0' # allow any version of Databricks CLI 0.218.0 or higher
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

bundle.deployment

Type: Map

Définition du déploiement de paquet

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
fail_on_active_runs Booléen Indique s’il y a échec des exécutions actives. Si cette valeur est définie sur true, un déploiement en cours d’exécution peut être interrompu.
Ajouté dans Databricks CLI version 0.229.0
lock Mappage Attributs de verrou de déploiement. Consultez bundle.deployment.lock.
Ajouté dans Databricks CLI version 0.229.0

bundle.deployment.lock

Type: Map

Attributs de verrou de déploiement.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
enabled Booléen Indique si ce verrou est activé.
Ajouté dans Databricks CLI version 0.229.0
force Booléen Indique s’il faut forcer ce verrou s’il est activé.
Ajouté dans Databricks CLI version 0.229.0

expérimental

Type: Map

Définit des attributs pour les fonctionnalités expérimentales.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
python Mappage Obsolète. Utilisez plutôt le mappage Python de niveau supérieur.
Ajouté dans Databricks CLI version 0.238.0
python_wheel_wrapper Booléen Indique s’il faut utiliser un wrapper de wheel Python.
Ajouté dans Databricks CLI version 0.229.0
scripts Mappage Commandes à exécuter.
Ajouté dans Databricks CLI version 0.229.0
skip_artifact_cleanup Booléen Détermine s’il faut ignorer la suppression du .internal dossier dans workspace.artifact_path. Par défaut, ce dossier est supprimé avant de charger de nouveaux artefacts de build (tels que les roues Python) pendant le déploiement. Définir pour true conserver les artefacts existants entre les déploiements.
Ajout dans Databricks CLI version 0.254.0
skip_name_prefix_for_schema Booléen Indique s’il faut ignorer l’ajout du préfixe (défini dans presets.name_prefix ou calculé quand mode: development) aux noms des schémas de catalogue Unity définis dans le bundle.
Ajout dans Databricks CLI version 0.255.0
use_legacy_run_as Booléen Indique s’il faut utiliser le comportement hérité de run_as.
Ajouté dans Databricks CLI version 0.229.0

inclure

Type: Sequence

Spécifie une liste de globs de chemin d’accès qui contiennent des fichiers de configuration à inclure dans le bundle. Ces globs de chemin d’accès sont relatifs à l’emplacement du fichier de configuration du pack dans lequel ils sont spécifiés. En dehors de databricks.yml, vous devez utiliser le include tableau pour spécifier tous les fichiers de configuration à inclure dans le bundle.

Conseil / Astuce

Pour inclure ou exclure d’autres fichiers dans le bundle, utilisez include et exclude.

Ce tableau include peut apparaître uniquement sous forme de mappage de niveau supérieur.

Ajouté dans Databricks CLI version 0.229.0

La configuration d’exemple suivant inclut trois fichiers de configuration. Ces derniers se trouvent dans le même dossier que le fichier de configuration du pack :

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

La configuration d’exemple suivant inclut tous les fichiers dont le nom de fichier commence par bundle et se termine par .yml. Ces derniers se trouvent dans le même dossier que le fichier de configuration du pack :

include:
  - 'bundle*.yml'

autorisations

Type: Sequence

Définit les autorisations à appliquer aux ressources définies dans le bundle, où chaque élément de la séquence est une autorisation pour une entité spécifique. Consultez Définir des autorisations pour les ressources dans les bundles de ressources Databricks.

Les niveaux d’autorisation de niveau supérieur autorisés sont CAN_VIEW, CAN_MANAGE et CAN_RUN.

Si vous souhaitez appliquer des autorisations à une ressource spécifique, consultez Définir des autorisations pour une ressource spécifique.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
group_name Chaîne Le nom du groupe dont les permissions sont définies à un certain niveau.
Ajouté dans Databricks CLI version 0.229.0
level Chaîne Autorisation autorisée pour l’utilisateur, le groupe, le principal de service défini pour cette autorisation. Les valeurs valides pour cette clé sont différentes selon que les autorisations sont définies au niveau supérieur de l’offre groupée ou pour une ressource spécifique. Consultez Définir des autorisations pour les ressources dans les bundles de ressources Databricks.
Ajouté dans Databricks CLI version 0.229.0
service_principal_name Chaîne Nom du principal de service dont l’autorisation est définie dans le niveau.
Ajouté dans Databricks CLI version 0.229.0
user_name Chaîne Nom de l’utilisateur disposant de l’autorisation définie au niveau.
Ajouté dans Databricks CLI version 0.229.0

Exemple

L’exemple de configuration suivant définit les niveaux d’autorisation d’un utilisateur, d’un groupe et d’un principal de service, qui sont appliqués à toutes les ressources définies dans resources le bundle :

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

Préréglages

Type: Map

Définit des paramètres prédéfinis de déploiement d'ensemble. Pour plus d’informations, consultez Présélections personnalisées.

Sauf si une exception est spécifiée pour une présélection, si les deux mode et presets sont définies, les présélections remplacent le comportement du mode par défaut et les paramètres des ressources individuelles remplacent les présélections.

Ajouté dans Databricks CLI version 0.229.0

Preset Descriptif
artifacts_dynamic_version Indique s’il faut mettre à jour dynamiquement la version des whl artefacts pendant le déploiement. Les valeurs valides sont true ou false. Si le paramètre de configuration de niveau supérieur artifacts.dynamic_version est spécifié, il remplace cette présélection.
Ajouté dans Databricks CLI version 0.256.0
jobs_max_concurrent_runs Nombre maximal d’exécutions simultanées autorisées pour les travaux.
Ajouté dans Databricks CLI version 0.229.0
name_prefix Chaîne de préfixe à ajouter aux noms de ressources.
Ajouté dans Databricks CLI version 0.229.0
pipelines_development Indique si les déploiements de pipeline doivent être verrouillés en mode de développement. Les valeurs valides sont true ou false.
Ajouté dans Databricks CLI version 0.229.0
source_linked_deployment Indique si les ressources créées pendant le déploiement pointent vers des fichiers sources dans l’espace de travail au lieu de leurs copies d’espace de travail.
Ajout dans Databricks CLI version 0.236.0
tags Un ensemble de balises clé-valeur qui s’appliquent à toutes les ressources prenant en charge les balises, y compris les tâches et les expériences. Les paquets d'actifs Databricks ne prennent pas en charge les balises pour la ressource schema.
Ajouté dans Databricks CLI version 0.229.0
trigger_pause_status Un statut de pause à appliquer à tous les déclencheurs et à toutes les planifications. Les valeurs valides sont PAUSED ou UNPAUSED.
Si mode est défini à development, trigger_pause_status est toujours PAUSED.
Ajouté dans Databricks CLI version 0.229.0

python

Type: Map

Configure le chargement du code Python défini avec le package databricks-bundles. Pour plus d’informations, consultez La configuration de bundle dans Python.

Déplacé à partir de experimental Databricks CLI version 0.275.0

Clé Type Descriptif
mutators Sequence Les mutateurs comportent une liste de chemins d’accès complets aux fonctions de mutation, comme [my_project.mutators:add_default_cluster].
Ajouté dans Databricks CLI version 0.238.0
resources Sequence Les ressources contiennent une liste de chemins de fonction complets pour charger des ressources définies dans le code Python, par exemple ["my_project.resources:load_resources"]
Ajouté dans Databricks CLI version 0.238.0
venv_path Chaîne Chemin d’accès à l’environnement virtuel. Si cette option est activée, le code Python s’exécute dans cet environnement. Si elle est désactivée, elle utilise par défaut l’interpréteur Python disponible dans l’interpréteur de commandes actuel.
Ajouté dans Databricks CLI version 0.238.0

Ressources

Type: Map

Définit les ressources de l’offre groupée, où chaque clé est le nom de la ressource et la valeur est un mappage qui définit la ressource. Pour plus d’informations sur les ressources prises en charge par Databricks Asset Bundles et la référence de définition de ressource, consultez ressources Databricks Asset Bundles.

Le resources mappage peut apparaître en tant que mappage de niveau supérieur, ou il peut s’agir d’un enfant d’une ou plusieurs des cibles dans le mappage des cibles de niveau supérieur, et inclut zéro ou l’un des types de ressources pris en charge. Chaque mappage de type de ressources comprend une ou plusieurs déclarations de ressources individuelles, qui doivent toutes porter un nom unique. Ces déclarations de ressources individuelles utilisent la charge utile de requête de l’opération de création de l’objet correspondant, exprimée en YAML, pour définir la ressource. Les propriétés prises en charge pour une ressource sont les champs pris en charge par l’objet correspondant.

Les charges utiles de la requête d’opération de création sont documentées dans la référence de l’API REST Databricks et la commande databricks bundle schema génère tous les schémas d’objet pris en charge. En outre, la commande databricks bundle validate retourne des avertissements si des propriétés de ressources inconnues sont trouvées dans les fichiers de configuration du pack.

Pour plus d’informations sur les ressources prises en charge dans les packs, ainsi que sur la configuration et les exemples courants, consultez Ressources des packs de ressources Databricks et Exemples de configuration de pack.

Ajouté dans Databricks CLI version 0.229.0

resources:
  <resource-type>:
    <resource-name>:
      <resource-field-name>: <resource-field-value>
Clé Type Descriptif
alerts Mappage Définitions d’alerte (v2) pour le bundle, où chaque clé est le nom de l’alerte. Consultez l’alerte.
Ajouté dans Databricks CLI version 0.279.0
apps Mappage Définitions de l’application Databricks pour le bundle, où chaque clé est le nom de l’application. Voir l’application.
Ajouté dans Databricks CLI version 0.239.0
catalogs Mappage Définitions de catalogue (catalogue Unity) pour le bundle, où chaque clé est le nom d’un catalogue. Consultez les catalogues.
Ajout dans Databricks CLI version 0.287.0
clusters Mappage Définitions de cluster pour le bundle, où chaque clé est le nom d’un cluster. Voir cluster.
Ajouté dans Databricks CLI version 0.229.0
dashboards Mappage Définitions des tableaux de bord du bundle, où chaque clé représente le nom du tableau de bord. Consultez le tableau de bord.
Ajout dans Databricks CLI version 0.232.0
database_catalogs Mappage Définitions du catalogue de bases de données pour le bundle, où chaque clé est le nom du catalogue de bases de données. Voir database_catalog.
Ajouté dans Databricks CLI version 0.265.0
database_instances Mappage Définitions d’instance de base de données pour le bundle, où chaque clé est le nom de l’instance de base de données. Voir database_instance.
Ajouté dans Databricks CLI version 0.265.0
experiments Mappage Définitions d’expérience pour le bundle, où chaque clé est le nom de l’expérience. Voir l’expérience.
Ajouté dans Databricks CLI version 0.229.0
jobs Mappage Les définitions des tâches pour le paquet, où chaque clé est le nom de la tâche. Voir le travail.
Ajouté dans Databricks CLI version 0.229.0
model_serving_endpoints Mappage Définitions des points de terminaison de mise en service de modèles pour le bundle, où chaque clé est le nom du point de terminaison. Voir model_serving_endpoint.
Ajouté dans Databricks CLI version 0.229.0
models Mappage Définitions de modèle pour le bundle, où chaque clé est le nom du modèle. Consultez le modèle (hérité).
Ajouté dans Databricks CLI version 0.229.0
pipelines Mappage Définitions de pipeline pour le bundle, où chaque clé représente le nom du pipeline. Consultez pipeline.
Ajouté dans Databricks CLI version 0.229.0
postgres_branches Mappage Définitions de branche Postgres pour le bundle, où chaque clé est le nom de la branche Lakebase. Voir postgres_branch.
Ajout dans Databricks CLI version 0.287.0
postgres_endpoints Mappage Définitions de point de terminaison Postgres pour le bundle, où chaque clé est le nom du point de terminaison de calcul Lakebase. Voir postgres_endpoint.
Ajout dans Databricks CLI version 0.287.0
postgres_projects Mappage Définitions de projet Postgres pour le bundle, où chaque clé est le nom du projet Lakebase. Voir postgres_project.
Ajout dans Databricks CLI version 0.287.0
quality_monitors Mappage Définitions du moniteur de qualité pour le bundle, où chaque clé est le nom du moniteur de qualité. Voir quality_monitor (Unity Catalog).
Ajouté dans Databricks CLI version 0.229.0
registered_models Mappage Définitions de modèle enregistrées pour l'ensemble, où chaque clé est le nom du modèle enregistré du Unity Catalog. Voir registered_model (Unity Catalog).
Ajouté dans Databricks CLI version 0.229.0
schemas Mappage Définitions de schéma pour le bundle, où chaque clé est le nom du schéma. Consultez le schéma (catalogue Unity).
Ajouté dans Databricks CLI version 0.229.0
secret_scopes Mappage Définitions de l’étendue de secret pour le bundle, où chaque clé correspond au nom de l’étendue de secret. Voir secret_scope.
Ajout dans Databricks CLI version 0.252.0
sql_warehouses Mappage Définitions de l’entrepôt SQL pour le bundle, où chaque clé est le nom de l’entrepôt SQL. Voir sql_warehouse.
Ajout dans Databricks CLI version 0.260.0
synced_database_tables Mappage Définitions de table de base de données synchronisées pour le bundle, où chaque clé est le nom de la table de base de données. Voir synced_database_table.
Ajouté dans Databricks CLI version 0.266.0
volumes Mappage Les définitions de volumes pour l'ensemble, où chaque clé représente le nom du volume. Consultez Volume (Unity Catalog).
Ajout dans Databricks CLI version 0.236.0

Exemple

L’exemple de configuration suivant définit une ressource de travail :

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

run_as

Type: Map

Identité (user_name ou service_principal_name) à utiliser pour exécuter des flux de travail Databricks Asset Bundles. Il permet de séparer l’identité utilisée pour déployer un travail ou un pipeline de bundle à partir de celui utilisé pour exécuter le travail ou le pipeline. Consultez le point . Spécifiez une identité d'exécution pour un flux de travail Databricks Asset Bundles.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
service_principal_name Chaîne ID d’application d’un principal de service actif. La définition de ce champ nécessite le rôle servicePrincipal/user.
Ajouté dans Databricks CLI version 0.229.0
user_name Chaîne E-mail d’un utilisateur d’espace de travail actif. Les utilisateurs non administrateurs ne peuvent définir ce champ que sur leur propre e-mail.
Ajouté dans Databricks CLI version 0.229.0

Scripts

Type: Map

Scripts qui peuvent être exécutés à l’aide de bundle run. Chaque script nommé dans le mappage contient du scripts contenu avec des commandes. Consultez Exécuter des scripts.

Ajouté dans Databricks CLI version 0.259.0

scripts:
  <script-name>:
    <script-field-name>: <script-field-value>
Clé Type Descriptif
content Chaîne Commandes à exécuter
Ajouté dans Databricks CLI version 0.259.0

Exemples

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

synchronisation

Type: Map

Fichiers et chemins d’accès aux fichiers à inclure ou exclure dans le bundle.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
exclude Sequence Liste de fichiers ou de dossiers à exclure de l’offre groupée. Voir inclure et exclure.
Ajouté dans Databricks CLI version 0.229.0
include Sequence Liste de fichiers ou de dossiers à inclure dans le bundle. Voir inclure et exclure.
Ajouté dans Databricks CLI version 0.229.0
paths Sequence Chemins d’accès au dossier local, qui peuvent se trouver en dehors de la racine du bundle, pour se synchroniser avec l’espace de travail lorsque le bundle est déployé. Consultez sync.paths.
Ajouté dans Databricks CLI version 0.229.0

inclure et exclure

Les mappages include et exclude dans le mappage sync spécifient une liste de fichiers ou de dossiers à inclure dans, ou exclure, des déploiements groupés, en fonction des règles suivantes :

  • En fonction d’une liste de globs de fichiers et de chemins d’accès dans un fichier .gitignore à la racine du pack, le mappage include peut contenir une liste de globs de fichiers, de globs de chemins d’accès, ou les deux, relatifs à la racine du pack, pour inclure explicitement.
  • En fonction d’une liste de globs de fichier et de chemins d’accès dans un fichier .gitignore à la racine du pack, ainsi que de la liste de globs de fichier et de chemins d’accès dans le mappage include, le mappage exclude peut contenir une liste de globs de fichier, de globs de chemin d’accès ou les deux, par rapport à la racine du bundle, pour exclure explicitement.

Tous les chemins d’accès aux fichiers et aux dossiers spécifiés sont relatifs à l’emplacement du fichier de configuration du pack dans lequel ils sont spécifiés.

La syntaxe du fichier include et exclude et les modèles de chemin d’accès suit celle du modèle .gitignore standard. Consultez Format de modèle gitignore.

Par exemple, si le fichier .gitignore suivant contient les entrées suivantes :

.databricks
my_package/dist

Et le fichier de configuration de pack contient le mappage include suivant :

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

Alors tous les fichiers du dossier my_package/dist avec une extension de fichier de *.whl sont inclus. Les autres fichiers du dossier my_package/dist ne sont pas inclus.

Toutefois, si le fichier de configuration du pack contient également le mappage exclude suivant :

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

Alors tous les fichiers du dossier my_package/dist avec une extension de fichier de *.whl sont inclus, à l’exception du fichier appelé delete-me.whl. Les autres fichiers du dossier my_package/dist ne sont pas inclus non plus.

Le mappage sync peut également être déclaré dans le mappage targets pour une cible spécifique. Tout mappage sync déclaré dans une cible est fusionné avec toute déclaration de mappage sync de niveau supérieur. Par exemple, en reprenant l’exemple précédent, le mappage include suivant au niveau targets fusionne avec le mappage include dans le mappage sync de niveau supérieur :

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

sync.paths

Le mappage sync peut contenir un mappage paths qui spécifie des chemins d’accès locaux à synchroniser avec l’espace de travail. Le mappage paths vous permet de partager des fichiers communs entre des packs et on peut l’utiliser pour synchroniser des fichiers situés en dehors de la racine du pack. (La racine du pack est l’emplacement du fichier databricks.yml.) Cela s’avère particulièrement utile lorsque vous disposez d’un référentiel unique qui héberge plusieurs packs et que vous souhaitez partager des bibliothèques, des fichiers de code ou une configuration.

Les chemins d’accès spécifiés doivent être relatifs aux fichiers et répertoires ancrés dans le dossier où le mappage paths est défini. Si une ou plusieurs valeurs de chemin d’accès remontent le répertoire jusqu’à un ancêtre de la racine du pack, le chemin d’accès racine est déterminé de manière dynamique pour s’assurer que la structure de dossiers reste intacte. Par exemple, si le dossier racine du pack est appelé my_bundle, cette configuration dans databricks.yml synchronise le dossier common situé un niveau au-dessus de la racine du pack et la racine du pack elle-même :

sync:
  paths:
    - ../common
    - .

Un déploiement de ce pack se traduit par la structure de dossiers suivante dans l’espace de travail :

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

cibles

Type: Map

Définit les contextes cibles de déploiement pour l’offre groupée. Chaque cible est une collection unique d’artefacts, de paramètres d’espace de travail Azure Databricks et parfois de détails de ressources spécifiques à la cible.

Le mappage targets se compose d’un ou plusieurs mappages cibles, qui doivent chacun avoir un nom programmatique (ou logique) unique. Ce mappage est facultatif mais fortement recommandé.

Les paramètres du targets mappage sont prioritaires sur les paramètres spécifiés dans l’espace de travail de niveau supérieur, les artefacts et les mappages de ressources .

Une cible peut également remplacer les valeurs de toutes les variables de niveau supérieur.

Ajouté dans Databricks CLI version 0.229.0

targets:
  <target-name>:
    <target-field-name>: <target-field-value>
Clé Type Descriptif
artifacts Mappage Artefacts à inclure dans le déploiement cible. Voir artifacts.
Ajouté dans Databricks CLI version 0.229.0
bundle Mappage Attributs du bundle lors du déploiement sur cette cible. Voir bundle.
Ajouté dans Databricks CLI version 0.229.0
cluster_id Chaîne ID du cluster à utiliser pour cette cible.
Ajouté dans Databricks CLI version 0.229.0
compute_id Chaîne Obsolète. L'ID de l'unité de calcul à utiliser pour cet objectif.
default Booléen Indique si cette cible est la cible par défaut. Voir les cibles.name.default.
Ajouté dans Databricks CLI version 0.229.0
git Mappage Paramètres de contrôle de version Git pour la cible. Voir git.
Ajouté dans Databricks CLI version 0.229.0
mode Chaîne Mode de déploiement de la cible. Les valeurs valides sont development ou production. Voir les cibles.modes de déploiement name.mode et Databricks Asset Bundle.
Ajouté dans Databricks CLI version 0.229.0
permissions Sequence Autorisations pour le déploiement et l’exécution du bundle sur la cible. Consultez les autorisations.
Ajouté dans Databricks CLI version 0.229.0
presets Mappage Paramètres prédéfinis de déploiement pour la cible. Voir les cibles.name.presets.
Ajouté dans Databricks CLI version 0.229.0
resources Mappage Définitions de ressources pour la cible. Consultez les ressources.
Ajouté dans Databricks CLI version 0.229.0
run_as Mappage Identité à utiliser pour exécuter le bundle. Consultez run_as et spécifiez une identité d’exécution pour un flux de travail Databricks Asset Bundles.
Ajouté dans Databricks CLI version 0.229.0
sync Mappage Chemins d’accès locaux à synchroniser avec l’espace de travail cible lorsqu’un bundle est exécuté ou déployé. Voir sync.
Ajouté dans Databricks CLI version 0.229.0
variables Mappage Définitions de variables personnalisées pour la cible. Consultez les variables.
Ajouté dans Databricks CLI version 0.229.0
workspace Mappage Espace de travail Databricks pour la cible. Voir workspace.
Ajouté dans Databricks CLI version 0.229.0

Cibles. name.default

Pour spécifier une cible par défaut pour les commandes de pack, définissez le mappage default sur true. Par exemple, cette cible appelée dev est celle par défaut :

targets:
  dev:
    default: true

Si une cible par défaut n’est pas configurée ou si vous souhaitez valider, déployer et exécuter des travaux ou des pipelines au sein d’une cible spécifique, utilisez l’option -t des commandes de pack.

Les commandes suivante valident, déploient et exécutent my_job dans les cibles dev et prod :

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

L’exemple suivant déclare deux cibles. La première s’appelle dev et est la cible par défaut utilisée lorsqu’aucune cible n’est spécifiée pour les commandes de pack. La deuxième s’appelle prod et est utilisée uniquement lorsque cette cible est spécifiée pour les commandes de pack.

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

Cibles. name.mode

Pour faciliter le développement et les bonnes pratiques CI/CD, les packs de ressources Databricks fournissent des modes de déploiement pour les cibles qui définissent des comportements par défaut pour les flux de travail de préproduction et de production. Certains comportements sont également configurables à l’aide de cibles.name.presets.

Pour en savoir plus, consultez Modes de déploiement d’un pack de ressources Databricks.

Conseil / Astuce

Pour définir des identités d’exécution pour des packs, vous pouvez spécifier run_as pour chaque cible, comme décrit dans Spécifier une identité d’exécution pour un flux de travail de packs de ressources Databricks.

Pour spécifier qu’une cible est traitée comme une cible de développement, ajoutez le mappage mode défini sur development. Pour spécifier qu’une cible est traitée comme une cible de production, ajoutez le mappage mode défini sur production. Par exemple, cette cible nommée prod est traitée comme une cible de production :

targets:
  prod:
    mode: production

Cibles. name.presets

Vous pouvez personnaliser certains des comportements de déploiement mode cible à l’aide du presets mappage.

Pour obtenir la liste des présélections disponibles, consultez Présélections personnalisées.

L’exemple suivant montre une cible de production personnalisée qui préfixe et balise toutes les ressources de production :

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

variables

Type: Map

Définit une variable personnalisée pour le bundle. Pour chaque variable, vous pouvez définir une description facultative et une valeur par défaut si la variable personnalisée est un type complexe, ou effectuer une recherche pour récupérer une valeur d’ID en utilisant le format suivant :

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>

Note

Les variables sont supposées être de type string, sauf si type est défini sur complex. Consultez Définir une variable complexe.

Pour référencer une variable personnalisée dans la configuration du pack, utilisez la substitution ${var.<variable_name>}.

Pour plus d’informations sur les personnalisées et les substitutions personnalisées, consultez Substitutions et variables dans les packs de ressources Databricks.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
default N'importe lequel Valeur par défaut de la variable.
Ajouté dans Databricks CLI version 0.229.0
description Chaîne Description de la variable.
Ajouté dans Databricks CLI version 0.229.0
lookup Mappage Nom du alert, cluster_policy, cluster, dashboard, instance_pool, job, metastore, pipeline, query, service_principalou objet warehouse pour lequel récupérer un ID. Consultez les variables.name.lookup.
Ajouté dans Databricks CLI version 0.229.0
type Chaîne Type de la variable, simple ou complexe. Définissez cette clé uniquement si la variable est complexe. Valeurs valides : complex.
Ajouté dans Databricks CLI version 0.229.0

variables.name.lookup

Type: Map

Nom de l’alerte, cluster_policy, cluster, tableau de bord, instance_pool, travail, metastore, pipeline, requête, service_principal ou objet d’entrepôt pour lequel récupérer un ID. Pour plus d’informations sur l’utilisation de la recherche, consultez Récupérer la valeur d’ID d’un objet.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
alert Chaîne Nom de l’alerte pour laquelle un ID doit être récupéré.
Ajouté dans Databricks CLI version 0.229.0
cluster Chaîne Nom du cluster pour lequel récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0
cluster_policy Chaîne Nom du cluster_policy pour lequel un ID doit être récupéré.
Ajouté dans Databricks CLI version 0.229.0
dashboard Chaîne Nom du tableau de bord pour lequel un ID doit être récupéré.
Ajouté dans Databricks CLI version 0.229.0
instance_pool Chaîne Nom du instance_pool pour lequel récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0
job Chaîne Nom du travail pour lequel récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0
metastore Chaîne Nom du metastore pour lequel un ID doit être récupéré.
Ajouté dans Databricks CLI version 0.229.0
notification_destination Chaîne Nom de la notification_destination pour laquelle récupérer un ID.
Ajout dans Databricks CLI version 0.236.0
pipeline Chaîne Nom du pipeline pour lequel un ID doit être récupéré.
Ajouté dans Databricks CLI version 0.229.0
query Chaîne Nom de la requête pour laquelle récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0
service_principal Chaîne Nom du service_principal pour lequel récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0
warehouse Chaîne Nom de l’entrepôt pour lequel récupérer un ID.
Ajouté dans Databricks CLI version 0.229.0

espace de travail

Type: Map

Définit l’espace de travail Databricks pour le bundle. Le fichier de configuration de pack ne peut contenir qu’un seul mappage workspace de niveau supérieur pour spécifier les paramètres d’espace de travail Azure Databricks autres que ceux par défaut à utiliser.

Important

Les chemins d’accès d’espace de travail Databricks valides commencent par /Workspace ou pour des artefacts, /Volumesest également pris en charge. Les chemins de l’espace de travail personnalisés sont automatiquement préfixés avec /Workspace. Par conséquent, si vous utilisez une substitution de chemin d’espace de travail dans votre chemin personnalisé tel que ${workspace.file_path}, vous n’avez pas besoin d’ajouter /Workspace au chemin.

Ajouté dans Databricks CLI version 0.229.0

Clé Type Descriptif
artifact_path Chaîne Chemin d’accès de l’artefact à utiliser dans l’espace de travail pour les déploiements et les exécutions des workflows
Ajouté dans Databricks CLI version 0.229.0
auth_type Chaîne Type d’authentification à utiliser, particulièrement important dans les cas où l’interface CLI Databricks déduit un type d’authentification inattendu. Consultez le “Autoriser l’accès aux ressources Azure Databricks”.
Ajouté dans Databricks CLI version 0.229.0
azure_client_id Chaîne ID client Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
azure_environment Chaîne Environnement Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
azure_login_app_id Chaîne ID d’application de connexion Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
azure_tenant_id Chaîne ID de locataire Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
azure_use_msi Booléen Indique s’il faut utiliser MSI pour Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
azure_workspace_resource_id Chaîne ID de ressource de l’espace de travail Azure. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
client_id Chaîne ID client de l’espace de travail. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
file_path Chaîne Chemin d’accès au fichier à utiliser dans l’espace de travail pour les déploiements et les exécutions de flux de travail. Voir workspace.file_path.
Ajouté dans Databricks CLI version 0.229.0
google_service_account Chaîne Nom du compte de service Google. Consultez l’authentification de l’espace de travail.
Ajouté dans Databricks CLI version 0.229.0
host Chaîne URL de l’hôte de l’espace de travail Databricks. Consultez Noms d’instance, URL et ID d’espace de travail.
La configuration du mappage host indique à l’interface CLI Databricks de rechercher un profil qui correspond dans votre fichier .databrickscfg, puis d’utiliser les champs du profil pour déterminer le type d’authentification Databricks à utiliser. Si plusieurs profils avec un champ correspondant host existent dans votre .databrickscfg fichier, vous devez utiliser le profile mappage (ou les options de -p--profile ligne de commande) pour spécifier un profil.
Ajouté dans Databricks CLI version 0.229.0
profile Chaîne Nom du profil de l’espace de travail Databricks. Consultez workspace.profile.
Ajouté dans Databricks CLI version 0.229.0
resource_path Chaîne Chemin d’accès des ressources de l’espace de travail
Ajouté dans Databricks CLI version 0.230.0
root_path Chaîne Chemin racine de l’espace de travail Databricks. Voir workspace.root_path.
Ajouté dans Databricks CLI version 0.229.0
state_path Chaîne Chemin d’accès de l’état de l’espace de travail. Cette clé est par défaut le chemin d’accès par défaut de votre espace de ${workspace.root}/state travail pour stocker les informations d’état Terraform sur les déploiements.
Ajouté dans Databricks CLI version 0.229.0

Authentification de l’espace de travail

Le mappage d’espace de travail peut également contenir des mappages pour spécifier le mécanisme d’authentification Databricks à utiliser. S’ils ne sont pas spécifiés dans le mappage d’espace de travail de niveau supérieur, ils doivent être spécifiés dans un mappage d’espace de travail en tant qu’enfant d’une ou plusieurs des cibles du mappage des cibles de niveau supérieur.

  • Pour l’authentification OAuth M2M (machine à machine), on utilise le mappage client_id. On peut également définir cette valeur dans la variable d’environnement locale DATABRICKS_CLIENT_ID. Vous pouvez également créer un profil de configuration avec la valeur client_id, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction avec l’interface CLI Databricks). Consultez Autoriser l’accès au principal de service à Azure Databricks avec OAuth.

    Note

    Vous ne pouvez pas spécifier de valeur du secret OAuth Azure Databricks dans le fichier de configuration du pack. À la place, définissez le DATABRICKS_CLIENT_SECRET de la variable d’environnement locale. Vous pouvez également ajouter la valeur client_secret à un profil de configuration, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction de l’offre groupée avec l’interface CLI Databricks).

  • Pour l’authentification de l’interface CLI Azure, on utilise le mappage azure_workspace_resource_id. On peut également définir cette valeur dans la variable d’environnement locale DATABRICKS_AZURE_RESOURCE_ID. Vous pouvez également créer un profil de configuration avec la valeur azure_workspace_resource_id, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction avec l’interface CLI Databricks). Consultez s’authentifier auprès d’Azure CLI.

  • Pour l’authentification par clé secrète de client Azure auprès des principaux de service, on utilise les mappages azure_workspace_resource_id, azure_tenant_id et azure_client_id. Vous pouvez également définir ces valeurs dans les variables d’environnement locales DATABRICKS_AZURE_RESOURCE_ID, ARM_TENANT_ID et ARM_CLIENT_ID respectivement. Vous pouvez également créer un profil de configuration avec les valeurs azure_workspace_resource_id, azure_tenant_id et azure_client_id, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l'exécution des commandes de validation, de déploiement, d'exécution et de destruction avec l'interface CLI Databricks). Consultez s’authentifier auprès des principaux de service Microsoft Entra.

    Note

    Vous ne pouvez pas spécifier de valeur du secret de client Azure dans le fichier de configuration du pack. À la place, définissez le ARM_CLIENT_SECRET de la variable d’environnement locale. Vous pouvez également ajouter la valeur azure_client_secret à un profil de configuration, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction de l’offre groupée avec l’interface CLI Databricks).

  • Pour l’authentification des identités gérée par Azure, on utilise les mappages azure_use_msi, azure_client_id et azure_workspace_resource_id. Vous pouvez également définir ces valeurs dans les variables d’environnement locales ARM_USE_MSI, ARM_CLIENT_ID et DATABRICKS_AZURE_RESOURCE_ID respectivement. Vous pouvez également créer un profil de configuration avec les valeurs azure_use_msi, azure_client_id et azure_workspace_resource_id, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l'exécution des commandes de validation, de déploiement, d'exécution et de destruction avec l'interface CLI Databricks). Consultez Authentifier avec des identités managées Azure.

  • Le mappage azure_environment spécifie le type d’environnement Azure (par exemple Public, UsGov, Chine et Allemagne) pour un ensemble spécifique de points de terminaison d’API. La valeur par défaut est PUBLIC. On peut également définir cette valeur dans la variable d’environnement locale ARM_ENVIRONMENT. Vous pouvez également ajouter la valeur azure_environment à un profil de configuration, puis spécifier le nom du profil avec le mappage profile (ou en utilisant les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction de l’offre groupée avec l’interface CLI Databricks).

  • Le mappage azure_login_app_id n’est pas opérationnel et est réservé à un usage interne.

workspace.root_path

Ce mappage workspace peut contenir un mappage root_path pour spécifier un chemin racine autre que celui par défaut à utiliser dans l’espace de travail pour les déploiements et les exécutions de flux de travail, par exemple :

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

Par défaut, pour root_path, l’interface CLI de Databricks utilise le chemin par défaut de /Workspace/Users/${workspace.current_user.userName}/.bundle/${bundle.name}/${bundle.target}, qui utilise des substitutions.

workspace.artifact_path

Ce mappage workspace peut également contenir un mappage artifact_path pour spécifier un chemin d’artefact autre que celui par défaut à utiliser dans l’espace de travail pour les déploiements et les exécutions de flux de travail, par exemple :

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

Par défaut, pour artifact_path, l’interface CLI de Databricks utilise le chemin par défaut de ${workspace.root}/artifacts, qui utilise des substitutions.

Note

Le mappage artifact_path ne prend pas en charge les chemins DBFS (Système de fichiers Databricks).

workspace.file_path

Ce mappage workspace peut également contenir un mappage file_path pour spécifier un chemin de fichier autre que celui par défaut à utiliser dans l’espace de travail pour les déploiements et les exécutions de flux de travail, par exemple :

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

Par défaut, pour file_path, l’interface CLI de Databricks utilise le chemin par défaut de ${workspace.root}/files, qui utilise des substitutions.

Important

Vous ne pouvez pas spécifier de variables personnalisées pour ces valeurs d’authentification à l’aide de la ${var.*} syntaxe.

workspace.profile

Note

Databricks vous recommande d’utiliser le mappage host (ou les options --profile ou -p lors de l’exécution des commandes de validation, de déploiement, d’exécution et de destruction de pack avec l’interface CLI de Databricks) à la place du mappage profile. Cela facilite le portage de vos fichiers de configuration de pack.

Le profile mappage spécifie le nom d’un profil de configuration à utiliser pour s’authentifier auprès de cet espace de travail Azure Databricks. Ce profil de configuration est mappé à celui que vous avez créé lors de la configuration de l’interface CLI de Databricks.

Les objets courants

Git

Type: Map

Définit les détails du contrôle de version git. Cela est utile pour propager les métadonnées de déploiement qui peuvent être utilisées ultérieurement pour identifier les ressources. Par exemple, vous pouvez retracer l'origine du dépôt d'une tâche déployée par CI/CD.

Chaque fois que vous exécutez une bundle commande telle que validate, deploy ou run, la bundle commande remplit l’arborescence de configuration de la commande avec les paramètres par défaut suivants :

Pour récupérer ou remplacer les paramètres Git, votre pack doit se trouver dans un répertoire associé à un référentiel Git, par exemple un répertoire local qui est initialisé en exécutant la commande git clone. Si le répertoire n’est pas associé à un référentiel Git, ces paramètres Git sont vides.

Clé Type Descriptif
branch Chaîne Nom actuel de la branche Git. Il s’agit de la même valeur que celle que vous obtiendriez si vous exécutiez la commande git branch --show-current à partir de votre référentiel cloné. Vous pouvez utiliser des substitutions pour faire référence à cette valeur avec vos fichiers de configuration de pack, en tant que ${bundle.git.branch}.
origin_url Chaîne URL d’origine du référentiel. Il s’agit de la même valeur que celle que vous obtiendriez si vous exécutiez la commande git config --get remote.origin.url à partir de votre référentiel cloné. Vous pouvez utiliser des substitutions pour faire référence à cette valeur avec vos fichiers de configuration de pack, en tant que ${bundle.git.origin_url}.

Exemples

Vous pouvez remplacer les paramètres et branch les origin_url paramètres dans le git mappage de votre mappage de niveau bundle supérieur si nécessaire :

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