Skip to content

Add air image setup for pushing images to DAR - #6800

Open
maggiewang-db wants to merge 1 commit into
databricks:mainfrom
maggiewang-db:codex/air-image-setup
Open

maggiewang-db wants to merge 1 commit into
databricks:mainfrom
maggiewang-db:codex/air-image-setup

Conversation

@maggiewang-db

@maggiewang-db maggiewang-db commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Summary

Add databricks air image setup to configure Docker authentication and push a container image to Databricks Artifact Registry (DAR).

The command detects the workspace region, invokes auth docker configure, validates the Unity Catalog destination, pushes the image, and prints the environment.unity_catalog_image value and databricks air run -f config.yaml next step.

Catalog and schema names and artifact names are validated with UC requirements.

This feature is in Preview. APIs may change, and the workspace must enable Preview features.

Usage

Two ways to run it:

Minimal — answer the prompts interactively:

databricks air image setup

One-shot — everything inline:

databricks air image setup -p e2-dogfood -s nvidia/cuda:13.4.1-cudnn-devel-ubuntu26.04 --catalog research --schema nvidia --image cuda:13.4.1-cudnn-devel-ubuntu26.04

Example image tag: 13.4.1-cudnn-devel-ubuntu26.04

Tests

  • go test ./cmd/air
  • go test ./acceptance -run '^TestAccept/air/(help|image-setup)$'
  • golangci-lint for ./cmd/air
  • ./task build

The acceptance test exercises the complete non-interactive setup flow, including credential-helper configuration and Docker inspect, tag, and push calls.

E2E on profile dar-uc:

./cli air image setup -p dar-uc \
  -s databricksruntime/environment-test:sgcdcs-test-devel-aws-pytorch \
  --catalog dar_uc --schema maggiewang \
  --image air_image_e2e:pr6800-20260922

./cli air run -f /tmp/dar-air-image-e2e.yaml --dry-run -p dar-uc -o json

./cli air run -f /tmp/dar-air-image-e2e.yaml -p dar-uc \
  --idempotency-key dar-image-e2e-20260922-v3 --watch -o json

Results:

  • Image push successful: dar_uc.maggiewang.air_image_e2e:pr6800-20260922, digest sha256:daf5e8e7379bab18332469a8040391fa8ff6c13dadd07d70fb817688d7809f32
  • Job run successful
  • Workload output: custom image e2e: cuda=True devices=1

@github-actions github-actions Bot added the AIR Databricks AI Runtime CLI label Sep 22, 2026
@maggiewang-db
maggiewang-db marked this pull request as ready for review September 22, 2026 20:11
@maggiewang-db
maggiewang-db requested review from a team as code owners September 22, 2026 20:11
@maggiewang-db
maggiewang-db requested review from lennartkats-db and rauchy and removed request for lennartkats-db and rauchy September 22, 2026 20:11
@maggiewang-db
maggiewang-db force-pushed the codex/air-image-setup branch 3 times, most recently from 44b1724 to 31019cb Compare September 22, 2026 21:31
@github-actions

Copy link
Copy Markdown
Contributor

An authorized user can trigger integration tests manually by following the instructions below:

Trigger:
go/deco-tests-run/cli

Inputs:

  • PR number: 6800
  • Commit SHA: 53678becc7c336494926b4875beb0b02d7f02d64

Checks will be approved automatically on success.

cancel Cancel one or more runs
convert-to-dabs Convert an AIR run YAML into a Databricks Asset Bundle
get Show status, configuration, and timing details for a specified run
image Manage container images for AI Runtime

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

couple questions here:

  1. is the plan to support this in air long term or is this a temporary solution? if the latter, do you know what the process for deprecating or if we should mark this as experimental somehow? I think we should figure that out before merging
  2. do you think we will extend image resource to additional commands, like air image list to see list of available images or is that out of the scope for air? for consistency with databricks cli convention and pools, I think this should be plural images though I can see why image is slightly preferable for this specific setup command

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AIR Databricks AI Runtime CLI

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants