We are delighted to announce that Databricks Asset Bundles are now in public preview. Bundles, for short, facilitate the adoption of software engineering best practices, including source control, code review, testing and continuous integration and delivery (CI/CD). Bundles enable data engineers, data scientists and ML engineers to express data, analytics and AI projects as source files. These source files provide an end-to-end definition of a project, including how it should be tested and deployed to the Lakehouse. This definition can easily be edited, tested and deployed.
CI/CD is essential in modern software development, helping to automate tests and deployments, thus speeding up release cycles and reducing errors. You can configure bundles to describe how to deploy and test projects. Bundles can automatically deploy across multiple workspaces, regions and clouds. You can use your existing CI/CD system to automate testing and deployment of bundles.
Bundles are typically used with a local IDE and work with the Databricks extension for VS Code - you can configure your IDE for bundle configuration auto-completion so it is easier to author your bundles. You can iteratively develop using a personal copy without affecting collaborators and execute resources such as jobs or DLT pipelines before they are deployed to production.
Use default templates or create your own custom templates to set dev, staging and prod workspaces, permissions, default libraries, service principals, default Apache Spark configs and more. You can use bundles to set these configurations once and reuse them to streamline developing and deploying code.
Begin using Databricks Asset Bundles in only a few short steps:
brew tap databricks/tap; brew install
databricks
databricks configure
databricks bundle init
databricks bundle deploy
Bundles are recommended for applying CI/CD to developing data, analytics and AI projects. Bundles and the Databricks Terraform provider work well together: bundles can be used to define lakehouse assets, while Terraform can be used for infrastructure, such as workspaces, service principals, and cloud assets. The Databricks Labs project dbx has been in an "experimental" release state since its launch, and we encourage migrating to bundles instead.
Databricks Asset Bundles are now in public preview, which means they are ready for production usage. In the coming months, you can look forward to additional features such as support for including dashboards as source files. Bundles already work with Databricks Workflows jobs, Delta Live Tables pipelines, ML Experiments, ML Registered Models and Model Serving endpoints. ML Ops Stack (currently in private preview) also uses bundle templates for productionizing your ML Projects. Learn more about bundles in our docs pages and let us know your feedback.