Databricks CLI
Go to file
Denis Bilenko e4cd782852
Remove bundle.{Parallel,ReadOnlyBundle} (#2414)
## Changes
- Remove bundle.Parallel & bundle.ReadOnlyBundle.
- Add bundle.ApplyParallel, as a helper to migrate from bundle.Parallel.
- Keep ReadOnlyMutator as a separate type but it's now a subtype of
Mutator so it works on regular *Bundle. Having it as a separate type
prevents non-readonly mutators being passed to ApplyParallel
- validate.Validate becomes a function (was Mutator).

## Why
This a follow up to #2390 where we removed most of the tools to
construct chains of mutators. Same motivation applies here.

When it comes to read-only bundles, it's a leaky abstraction -- since
it's a shallow copy, it does not actually guarantee or enforce readonly
access to bundle. A better approach would be to run parallel operations
on independent narrowly-focused deep-copied structs, with just enough
information to carry out the task (this is not implemented here, but the
eventual goal). Now that we can just write regular code in phases and
not limited to mutator interface, we can switch to that approach.

## Tests
Existing tests.

---------

Co-authored-by: shreyas-goenka <88374338+shreyas-goenka@users.noreply.github.com>
2025-03-03 13:35:36 +00:00
.codegen Fixed accessing required path parameters in CLI generation when --json flag (#2373) 2025-02-25 20:20:06 +00:00
.github build(deps): bump docker/setup-qemu-action from 3.3.0 to 3.6.0 (#2410) 2025-03-03 08:53:36 +00:00
.vscode Remove unused vscode settings in the templates (#2013) 2024-12-13 16:13:21 +00:00
acceptance Remove bundle.{Parallel,ReadOnlyBundle} (#2414) 2025-03-03 13:35:36 +00:00
bundle Remove bundle.{Parallel,ReadOnlyBundle} (#2414) 2025-03-03 13:35:36 +00:00
cmd Remove bundle.{Parallel,ReadOnlyBundle} (#2414) 2025-03-03 13:35:36 +00:00
docker Followup improvements to the Docker setup script (#1369) 2024-04-18 20:52:11 +00:00
docs Removed autogenerated docs for the CLI commands (#1392) 2024-04-23 13:25:25 +00:00
integration Enable TestAuthDescribeSuccess integration test (#2392) 2025-02-28 14:33:10 +00:00
internal Refactor TestSparkJarTask* tests to support test environments without Java 8 (#2385) 2025-02-28 08:39:21 +00:00
libs Add warning when variable interpolation is used for auth fields (#2399) 2025-02-27 15:58:48 +00:00
.codegen.json Custom annotations for bundle-specific JSON schema fields (#1957) 2024-12-18 10:19:14 +00:00
.git-blame-ignore-revs Add .git-blame-ignore-revs with linter-related mass change commits (#2000) 2024-12-12 10:54:00 +01:00
.gitattributes Bump github.com/databricks/databricks-sdk-go from 0.56.1 to 0.57.0 (#2321) 2025-02-10 12:50:52 +00:00
.gitignore add .idea to .gitignore (#2375) 2025-02-25 12:17:50 +00:00
.golangci.yaml Fix incorrect TestingT.Errorf usage and enable linting for this (#2182) 2025-01-20 08:07:42 +00:00
.goreleaser.yaml Address goreleaser deprecation warning (#1872) 2024-10-31 12:09:23 +00:00
.mockery.yaml Use mockery to generate mocks compatible with testify/mock (#1190) 2024-02-08 15:18:53 +00:00
CHANGELOG.md [Release] Release v0.242.0 (#2393) 2025-02-27 10:54:37 +00:00
Dockerfile Followup improvements to the Docker setup script (#1369) 2024-04-18 20:52:11 +00:00
LICENSE Trim trailing whitespace (#1206) 2024-02-15 16:23:48 +00:00
Makefile acc: Do not show all replacements on every failure (#2331) 2025-02-11 09:38:53 +00:00
NOTICE acc: Allow mixing custom stubs with default server impl (#2334) 2025-02-11 15:03:41 +00:00
README.md Add privacy notice to README (#1841) 2024-10-28 18:19:55 +00:00
go.mod Do not pass parent pid to child daemon process (#2376) 2025-02-26 17:39:45 +05:30
go.sum build(deps): bump github.com/spf13/cobra from 1.8.1 to 1.9.1 (#2358) 2025-02-25 20:26:11 +00:00
main.go Add regression tests for CLI error output (#1566) 2024-07-10 06:38:06 +00:00
main_test.go Fix ability to import the CLI repository as module (#1671) 2024-08-12 14:20:04 +00:00
ruff.toml Add ruff.toml with increased line-length (#2268) 2025-01-30 09:52:41 +00:00

README.md

Databricks CLI

build

This project is in Public Preview.

Documentation is available at https://docs.databricks.com/dev-tools/cli/databricks-cli.html.

Installation

This CLI is packaged as a dependency-free binary executable and may be located in any directory. See https://github.com/databricks/cli/releases for releases and the Databricks documentation for detailed information about installing the CLI.


Homebrew

We maintain a Homebrew tap for installing the Databricks CLI. You can find instructions for how to install, upgrade and downgrade the CLI using Homebrew here.


Docker

You can use the CLI via a Docker image by pulling the image from ghcr.io. You can find all available versions at: https://github.com/databricks/cli/pkgs/container/cli.

docker pull ghcr.io/databricks/cli:latest

Example of how to run the CLI using the Docker image. More documentation is available at https://docs.databricks.com/dev-tools/bundles/airgapped-environment.html.

docker run -e DATABRICKS_HOST=$YOUR_HOST_URL -e DATABRICKS_TOKEN=$YOUR_TOKEN ghcr.io/databricks/cli:latest current-user me

Authentication

This CLI follows the Databricks Unified Authentication principles.

You can find a detailed description at https://github.com/databricks/databricks-sdk-go#authentication.

Privacy Notice

Databricks CLI use is subject to the Databricks License and Databricks Privacy Notice, including any Usage Data provisions.