Skip to main content

databricks-job-runner

PyPI version

Reusable CLI for uploading, submitting, and cleaning Databricks job runs.

databricks-job-runner wraps the Databricks Python SDK into a small library that each project configures with a Runner instance. One Runner gives you nine CLI subcommands (upload, download, submit, validate, logs, clean, catalog, schema, volume) without writing any Databricks API code in your project.

Install

uv add databricks-job-runner

Or with pip:

pip install databricks-job-runner

Quick start

databricks-job-runner is a library, not a standalone CLI. There is no __main__ in this repo. Each project wires one Runner.

Create a cli/ package with two files:

cli/__init__.py

from databricks_job_runner import Runner

runner = Runner(
    run_name_prefix="my_project",
    wheel_package="my_package",  # optional
)

cli/__main__.py

from cli import runner
runner.main()

Add a .env to your project root with at least:

DATABRICKS_PROFILE=my-profile
DATABRICKS_CLUSTER_ID=0123-456789-abcdef
DATABRICKS_WORKSPACE_DIR=/Users/you@example.com/my_project

Then run the core lifecycle from your project root:

uv run python -m cli upload --all          # upload agent_modules/
uv run python -m cli submit test_hello.py  # submit a job and wait
uv run python -m cli logs                  # stdout/stderr from the last run
uv run python -m cli clean --yes           # tear down
.env + cli/  ->  upload  ->  submit  ->  (Databricks run)  ->  logs  ->  clean
                   |            |                               |
              workspace/     one-shot                        tail 5MB
              agent_modules  SubmitRun                        stdout/err

Documentation

Page What it covers
Getting started Install, project-layout contract, first job end to end, architecture overview.
Configuration Every .env key, precedence, compute modes, parameter injection, inject_params.
Workflows Common workflows with diagrams: classic vs serverless, wheels, data, Unity Catalog.
Command reference Every subcommand, flag, and positional argument.
Bootstrap-from-Volume Run-startup wheel install, BootstrapConfig, per-run isolation.
Preflight hooks Fail-fast compute checks before submit/validate, cluster-library helpers.
API reference Runner, RunnerConfig, Compute, inject_params, RunnerError.
Examples and smoke tests The two runnable example projects and the serverless test matrix.
Releasing PyPI tag-based release flow.

Requirements

  • Python 3.12+
  • Databricks authentication: a Databricks CLI profile, env vars (DATABRICKS_HOST / DATABRICKS_TOKEN), or any other unified-auth method
  • Either a Databricks all-purpose cluster (auto-started if terminated) or serverless compute enabled for the workspace
  • uv (for wheel building only)

Metadata

Release files for databricks-job-runner 0.6.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for databricks-job-runner 0.6.2
File Size Uploaded
databricks_job_runner-0.6.2.tar.gz 36.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for databricks-job-runner 0.6.2
File Interpreter ABI Platform
databricks_job_runner-0.6.2-py3-none-any.whl Python 3 none any Details

Total release size: 83.2 kB

Release files / databricks_job_runner-0.6.2.tar.gz

Download URL databricks_job_runner-0.6.2.tar.gz
Size 36.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ce8a6cf31a5ca319a91181bf947eeaf352f70f64d7d743197e89ac754671afad
BLAKE2b-256 checksum
How to use checksums
3576356c4be32c7e858b6d0f3678f17be2d213eec1b4c8f094805cac1ddadce1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 17, 2026.

Transparency log

Release files / databricks_job_runner-0.6.2-py3-none-any.whl

Download URL databricks_job_runner-0.6.2-py3-none-any.whl
Size 46.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
35ff83bc8d8a8a5b06ccfc2300d06a775d4564b959af319f7e9d8236cf47ace2
BLAKE2b-256 checksum
How to use checksums
17be996d649afd700532591f5ba25bafbb0df7e9c4c545f80bf2326b6df787f1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 17, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.6.2 This release

2 release files

0.6.1

2 release files

0.6

2 release files

0.5.1

2 release files

0.5

2 release files

0.4.9

2 release files

0.4.8

2 release files

0.4.7

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page