yggdrasil.databricks.cli.services.deploy¶
deploy ¶
ygg databricks deploy — the single way to deploy a project to Databricks.
ygg databricks deploy [path] builds the project at path (the current
working directory by default, or a PyPI name) — its wheel + whole dependency
closure as wheels (zero-PyPI) — writes the serverless base environment +
classic-cluster requirements named for the project (<name>-<version>), and
provisions the project's default warehouse and cluster wired to that env
config. One command takes a project, ygg itself included, to Databricks.
ygg databricks deploy # deploy the project in the cwd
ygg databricks deploy ./my-app # deploy the project under ./my-app
ygg databricks deploy ygg # deploy a published project by name
ygg databricks deploy --python 3.11 --python 3.12 # build for two Pythons
ygg databricks deploy --rebuild --no-cluster
The environment bundles the project wheel + its whole dependency closure as
wheels (zero-PyPI). --python builds an environment per Python version
(repeatable; defaults to the interpreter running the CLI). --rebuild forces
a fresh build; --no-cluster / --no-warehouse skip provisioning the
respective compute.
Resource provisioning is fire-and-forget — the warehouse and cluster are created without blocking on them to reach a running state (they spin up in the background), so the command returns as soon as the spec is submitted. The client is bound to the deployed project + version first, so the default warehouse and cluster are named for the project (its capitalized display name).
(Lower-level wheel/environment CRUD lives under the ygg databricks wheel and
ygg databricks environment commands; this is the one-shot project deploy.)