Databricks CLI
Go to file
Pieter Noordhuis 6187803007
Correctly overwrite local state if remote state is newer (#1008)
## Changes

A bug in the code that pulls the remote state could cause the local
state to be empty instead of a copy of the remote state. This happened
only if the local state was present and stale when compared to the
remote version.

We correctly checked for the state serial to see if the local state had
to be replaced but didn't seek back on the remote state before writing
it out. Because the staleness check would read the remote state in full,
copying from the same reader would immediately yield an EOF.

## Tests

* Unit tests for state pull and push mutators that rely on a mocked
filer.
* An integration test that deploys the same bundle from multiple paths,
triggering the staleness logic.

Both failed prior to the fix and now pass.
2023-11-24 11:15:46 +00:00
.codegen Bump github.com/databricks/databricks-sdk-go from 0.24.0 to 0.25.0 (#980) 2023-11-13 15:38:35 +00:00
.github Add GitHub issue templates (#925) 2023-10-30 11:26:01 +00:00
.vscode Cleanup after previous PR comments (#724) 2023-09-04 07:07:17 +00:00
bundle Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
cmd Add `--configure-cluster` flag to configure command (#1005) 2023-11-23 19:56:48 +00:00
docs Rename bricks -> databricks (#389) 2023-05-16 18:35:39 +02:00
folders Don't depend on working directory in folders.FindDirWithLeaf (#54) 2022-09-14 15:08:55 +02:00
internal Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
libs Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
.codegen.json Integrate with auto-release infra (#581) 2023-07-18 17:48:35 +02:00
.gitattributes Bump github.com/databricks/databricks-sdk-go from 0.24.0 to 0.25.0 (#980) 2023-11-13 15:38:35 +00:00
.gitignore Add a foundation for built-in templates (#685) 2023-08-25 09:03:42 +00:00
.goreleaser.yaml Rename bricks -> databricks (#389) 2023-05-16 18:35:39 +02:00
CHANGELOG.md Release v0.209.1 (#969) 2023-11-08 16:30:48 +00:00
LICENSE Create LICENSE (#467) 2023-06-14 14:38:52 +00:00
Makefile `make snapshot` to build file in `.databricks/databricks` (#927) 2023-10-27 10:50:41 +00:00
NOTICE Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
README.md Fix typo in README.md (#510) 2023-06-21 20:26:09 +02:00
go.mod Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
go.sum Correctly overwrite local state if remote state is newer (#1008) 2023-11-24 11:15:46 +00:00
main.go Consolidate environment variable interaction (#747) 2023-09-11 08:18:43 +00:00
main_test.go Consolidate environment variable interaction (#747) 2023-09-11 08:18:43 +00:00

README.md

Databricks CLI

build

This project is in Public Preview.

Documentation about the full REST API coverage is available in the docs folder.

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 docs pages for installation instructions.

Authentication

This CLI follows the Databricks Unified Authentication principles.

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