Databricks Asset Bundles · Schema
Databricks Asset Bundle
Top-level configuration for a Databricks Asset Bundle (databricks.yml).
CI/CDData EngineeringDatabricksDeploymentInfrastructure as CodeJobsMachine LearningMLOpsPipelinesWorkflows
Properties
| Name | Type | Description |
|---|---|---|
| bundle | object | Core bundle metadata. |
| include | array | Glob patterns of additional configuration files to include. |
| workspace | object | Workspace connection and path settings. |
| variables | object | Custom variable declarations. |
| artifacts | object | Artifacts (such as Python wheels) built during deployment. |
| resources | object | |
| targets | object | Environment-specific overrides (dev, staging, prod). |
| permissions | array | |
| presets | object | Deployment behavior customization across resources. |
| run_as | object | Identity used to run jobs and pipelines. |
| scripts | object | Named commands executable via 'databricks bundle run'. |
| sync | object | File inclusion and exclusion patterns for deployment sync. |
| experimental | object | Beta feature flags. |
| python | object | Python loader and mutator configuration. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/databricks-asset-bundles/main/json-schema/bundle.json",
"title": "Databricks Asset Bundle",
"description": "Top-level configuration for a Databricks Asset Bundle (databricks.yml).",
"type": "object",
"required": ["bundle"],
"additionalProperties": false,
"properties": {
"bundle": {
"type": "object",
"description": "Core bundle metadata.",
"required": ["name"],
"properties": {
"name": {"type": "string", "description": "Programmatic bundle name."},
"uuid": {"type": "string", "description": "Optional unique bundle identifier."},
"databricks_cli_version": {"type": "string", "description": "Semver constraint for the Databricks CLI."},
"git": {
"type": "object",
"properties": {
"branch": {"type": "string"},
"origin_url": {"type": "string", "format": "uri"}
}
},
"deployment": {"type": "object"}
}
},
"include": {
"type": "array",
"description": "Glob patterns of additional configuration files to include.",
"items": {"type": "string"}
},
"workspace": {
"type": "object",
"description": "Workspace connection and path settings.",
"properties": {
"host": {"type": "string", "format": "uri"},
"profile": {"type": "string"},
"auth_type": {"type": "string"},
"root_path": {"type": "string", "pattern": "^/Workspace|^/Volumes"},
"file_path": {"type": "string"},
"artifact_path": {"type": "string"},
"state_path": {"type": "string"}
}
},
"variables": {
"type": "object",
"description": "Custom variable declarations.",
"additionalProperties": {
"oneOf": [
{"type": "string"},
{
"type": "object",
"properties": {
"description": {"type": "string"},
"default": {},
"type": {"type": "string"},
"lookup": {"type": "object"}
}
}
]
}
},
"artifacts": {
"type": "object",
"description": "Artifacts (such as Python wheels) built during deployment.",
"additionalProperties": {
"type": "object",
"properties": {
"type": {"type": "string", "enum": ["whl", "jar"]},
"build": {"type": "string"},
"executable": {"type": "string"},
"path": {"type": "string"},
"files": {"type": "array", "items": {"type": "object"}}
}
}
},
"resources": {
"$ref": "#/$defs/resources"
},
"targets": {
"type": "object",
"description": "Environment-specific overrides (dev, staging, prod).",
"additionalProperties": {
"type": "object",
"properties": {
"default": {"type": "boolean"},
"mode": {"type": "string", "enum": ["development", "production"]},
"workspace": {"$ref": "#/properties/workspace"},
"variables": {"$ref": "#/properties/variables"},
"resources": {"$ref": "#/$defs/resources"},
"presets": {"type": "object"},
"run_as": {"type": "object"},
"permissions": {"type": "array", "items": {"$ref": "#/$defs/permission"}},
"sync": {"type": "object"}
}
}
},
"permissions": {
"type": "array",
"items": {"$ref": "#/$defs/permission"}
},
"presets": {
"type": "object",
"description": "Deployment behavior customization across resources."
},
"run_as": {
"type": "object",
"description": "Identity used to run jobs and pipelines.",
"properties": {
"user_name": {"type": "string"},
"service_principal_name": {"type": "string"}
}
},
"scripts": {
"type": "object",
"description": "Named commands executable via 'databricks bundle run'.",
"additionalProperties": {
"type": "object",
"properties": {
"content": {"type": "string"}
}
}
},
"sync": {
"type": "object",
"description": "File inclusion and exclusion patterns for deployment sync.",
"properties": {
"include": {"type": "array", "items": {"type": "string"}},
"exclude": {"type": "array", "items": {"type": "string"}},
"paths": {"type": "array", "items": {"type": "string"}}
}
},
"experimental": {
"type": "object",
"description": "Beta feature flags."
},
"python": {
"type": "object",
"description": "Python loader and mutator configuration."
}
},
"$defs": {
"permission": {
"type": "object",
"required": ["level"],
"properties": {
"level": {"type": "string", "enum": ["CAN_VIEW", "CAN_RUN", "CAN_MANAGE", "IS_OWNER"]},
"user_name": {"type": "string"},
"service_principal_name": {"type": "string"},
"group_name": {"type": "string"}
}
},
"resources": {
"type": "object",
"description": "Databricks resources to deploy as part of the bundle.",
"properties": {
"alerts": {"type": "object"},
"apps": {"type": "object"},
"catalogs": {"type": "object"},
"clusters": {"type": "object"},
"dashboards": {"type": "object"},
"database_catalogs": {"type": "object"},
"database_instances": {"type": "object"},
"experiments": {"type": "object"},
"external_locations": {"type": "object"},
"jobs": {"type": "object"},
"model_serving_endpoints": {"type": "object"},
"models": {"type": "object"},
"pipelines": {"type": "object"},
"postgres_branches": {"type": "object"},
"postgres_endpoints": {"type": "object"},
"postgres_projects": {"type": "object"},
"quality_monitors": {"type": "object"},
"registered_models": {"type": "object"},
"schemas": {"type": "object"},
"secret_scopes": {"type": "object"},
"sql_warehouses": {"type": "object"},
"synced_database_tables": {"type": "object"},
"volumes": {"type": "object"}
}
}
}
}