Commit Graph

1811 Commits

Author SHA1 Message Date
Denis Bilenko fe275654fb
Merge branch 'main' into denik/wheel-patch 2025-03-05 11:42:54 +01:00
Andrew Nester 4dba35dff4
Upgrade TF provider to 1.68.0 (#2426)
## Changes
Upgrade TF provider to 1.68.0

- Added support for Volumes as a destination for Cluster log conf
2025-03-05 10:20:55 +00:00
Andrew Nester 294db2ecca
Upgrade Go SDK to 0.59.0 (#2425)
## Changes
- Added `service-principal-secrets` command
- Added `budget-policy-id` for apps
- `experiments.log-inputs` now requires `ID` parameter as an input
- Added `genie.get-space` command
- Added `providers.list-provider-share-assets` command

For the whole list of SDK changes see:
https://github.com/databricks/databricks-sdk-go/releases/tag/v0.59.0
2025-03-05 10:20:51 +00:00
shreyas-goenka b21fdac209
Update VSCode settings to resolve files named `script` as shell scripts (#2419)
## Why
VSCode for me resolves `script` as YAML files showing incorrect syntax
coloring. This setting forces VSCode to treat all files named `script`
as shell scripts leading to better syntax highlighting.

These files are common place in our acceptance tests.

## Tests
Manually.
2025-03-05 10:02:40 +00:00
Denis Bilenko 75b169fa71 CalculateNewVersion -> calculateNewVersion 2025-03-05 10:51:56 +01:00
Denis Bilenko 97f87d2544 rm -short support; not a big win with parallel runs 2025-03-05 10:45:45 +01:00
Denis Bilenko d7daebfba0 replace findMetadataAndRecord with more general findFiles 2025-03-05 10:44:32 +01:00
Denis Bilenko 1fbb81eb87
Disable ruff cache (#2430)
There is no perf difference, it's fast in both cases:

```
~/work/cli % hyperfine 'ruff format -qn'
Benchmark 1: ruff format -qn
  Time (mean ± σ):      22.5 ms ±   4.1 ms    [User: 23.6 ms, System: 106.7 ms]
  Range (min … max):    17.3 ms …  50.2 ms    52 runs
```

but it no longer produces .ruff_cache which can confuse acceptance test
runner

```
~/work/cli % find . -type d | grep ruff
./.ruff_cache
./.ruff_cache/0.8.3
./libs/notebook/testdata/.ruff_cache
./libs/notebook/testdata/.ruff_cache/0.8.3
./libs/sync/testdata/.ruff_cache
./libs/sync/testdata/.ruff_cache/0.8.3
./acceptance/bundle/templates/default-sql/.ruff_cache
./acceptance/bundle/templates/default-sql/.ruff_cache/0.8.3
```
2025-03-05 08:45:51 +01:00
Denis Bilenko b9eeecd5a1 add a log 2025-03-04 18:27:45 +01:00
Denis Bilenko ca55524f94 remove glob matching in readMetadataAndRecord, rename to findMetadataAndRecord 2025-03-04 18:17:17 +01:00
Denis Bilenko 138ced54eb use full struct, not pointer 2025-03-04 18:07:01 +01:00
Denis Bilenko 5abb022506 clean up and simplify parsing 2025-03-04 18:02:57 +01:00
Denis Bilenko (aider) 653ca59edf (no commit message provided) 2025-03-04 18:02:57 +01:00
Denis Bilenko (aider) b0348de83b fix: Correctly parse wheel filename version without build tag 2025-03-04 18:02:57 +01:00
Denis Bilenko (aider) 5a60b73ad8 fix: Correctly parse wheel filename with build tags 2025-03-04 18:02:57 +01:00
Denis Bilenko (aider) 3135f4e38f feat: Add comprehensive test cases for wheel filename parsing 2025-03-04 18:02:57 +01:00
Denis Bilenko 95a64fd3cb docs: Add comprehensive wheel filename parsing test cases as comment 2025-03-04 18:02:57 +01:00
Denis Bilenko a100671b8b
Merge branch 'main' into denik/wheel-patch 2025-03-04 16:21:02 +01:00
Denis Bilenko cc59dec5f5 parallel tests and short/non-short mode 2025-03-04 16:18:34 +01:00
Denis Bilenko 62f1c36f89 lint fix 2025-03-04 16:11:50 +01:00
Andrew Nester 41961226be
Switch to use GET workspaces-files/{name} instead of workspace/export for state files (#2423)
## Changes
Switch to use GET workspaces-files/{name} instead of workspace/export
for state files.

## Why
`/api/2.0./workspaces-files/{name}` has a higher limit which allows to
export state files larger than 10 MBs (which is the current limit for
`workspace/export`). We don't use the same API for read in other places
and fully replacing existing Filer because it doesn't correct get the
file content for notebooks and returns "File Not Found" error instead.

## Tests
All existing tests pass
2025-03-04 15:03:51 +00:00
Denis Bilenko 18daa3feff clean up 2025-03-04 15:52:59 +01:00
Denis Bilenko 9f9f89078e clean up 2025-03-04 15:47:25 +01:00
shreyas-goenka 549b226cbc
Add the `auth.ProcessEnv` function (#2404)
## Changes
This function provides all environment variables necessary to
authenticate the downstream applications to the same credentials as the
parent process.

It's used in https://github.com/databricks/cli/pull/2278 and will also
be useful for the `databricks bundle exec` command.

## Tests
Unit test.
2025-03-04 14:47:11 +00:00
Denis Bilenko f31928af40 fix Windows 2025-03-04 15:45:59 +01:00
Denis Bilenko 5c44533bb1 clean up 2025-03-04 15:40:57 +01:00
Denis Bilenko b4273f9624 fix re-patching and add test 2025-03-04 15:38:29 +01:00
Denis Bilenko 552920dfe4 clean up 2025-03-04 14:15:19 +01:00
Denis Bilenko a999ca91e8 fix test 2025-03-04 14:12:25 +01:00
Anton Nekipelov c0f5436a28
Add support for schemas in deployment bind/unbind commands (#2406)
## Changes
1. Changed `FindResourceByConfigKey` to return schema resources
2. Implemented the `Exists` method for schema resources

## Why
This PR adds support for schema resources in deployment operations,
enabling users to:
- Bind schemas using `databricks bundle deployment bind <myschema_key>
<schema_full_name>`
- Unbind schemas using `databricks bundle deployment unbind
<myschema_key>`

Where:
- `myschema_key` is a resource key defined in the bundle's .yml file
- `schema_full_name` references an existing schema in the Databricks
workspace

These capabilities allow for more flexible resource management of
schemas within bundles.

## Tests

Added a new integration test that tests bind and unbind methods together
with bundle deployment and destruction.
2025-03-04 12:46:39 +00:00
Denis Bilenko 9637241725 wip 2025-03-04 13:08:28 +01:00
Anton Nekipelov bcce6b0ece
Enable TestAuthDescribeFailure integration test (#2420)
## Changes
1. remove t.Skip directive from TestAuthDescribeFailure integration test
2. remove checking the host in the test

## Why
1. This enables integration test that exercises `databricks auth
describe` command, which was previously throwing errors in the CI/CD
pipeline. For the nonexistent profile check to fail, we need to create a
new profile file for the CLI to check (otherwise the configuration skips
checking of the provided profile actually exists).
2. I removed the assertion for the host part because it is not relevant
for the test, and setting that up just required more code in the test
setup.

## Tests
The integration test is passing
2025-03-04 11:43:26 +00:00
Denis Bilenko (aider) ca4f52198a feat: Add CalculateNewVersion function with table tests for wheel filename generation 2025-03-04 12:27:20 +01:00
Denis Bilenko 12897fe7c6 update comment 2025-03-04 12:21:46 +01:00
Denis Bilenko 98d2f38129 clean up 2025-03-04 12:19:11 +01:00
Denis Bilenko ab1667814d clean up unnecessary reopen 2025-03-04 12:09:29 +01:00
Denis Bilenko 7d8bdbd8cc remove separate METADATA parsing pass 2025-03-04 12:08:35 +01:00
Denis Bilenko 9c41156d34 clean up 2025-03-04 12:01:17 +01:00
Denis Bilenko (aider) e44373fe29 fix: Add missing closing brace in readMetadataAndRecord function 2025-03-04 11:58:13 +01:00
Denis Bilenko 3f5a1334ad refactor: Optimize metadata and record file search in wheel patching logic 2025-03-04 11:58:10 +01:00
Denis Bilenko (aider) cc07556392 fix: Handle non-seekable zip readers by reopening files 2025-03-04 11:53:52 +01:00
Denis Bilenko (aider) 9bd6229844 refactor: Improve error handling and prevent potential panics in wheel parsing 2025-03-04 11:52:45 +01:00
Denis Bilenko (aider) 6b5fa7ad33 fix: Correct variable assignment in patchwheel seeker reset 2025-03-04 11:51:04 +01:00
Denis Bilenko (aider) 7e747d29ac refactor: Simplify zip file reader seeking by removing unnecessary fallback logic 2025-03-04 11:50:12 +01:00
Denis Bilenko (aider) 80617cbb02 fix: Update patchRecord function to accept io.Reader instead of []byte 2025-03-04 11:48:08 +01:00
Denis Bilenko (aider) bbe90007d8 refactor: Optimize wheel patching by using io.Reader directly 2025-03-04 11:46:08 +01:00
Denis Bilenko 58e746757d clean up redundant comments 2025-03-04 11:37:18 +01:00
Denis Bilenko d54d093ecf do not return error from readMetadataAndRecord; make parse() work only on filenames (without path) 2025-03-04 11:34:45 +01:00
Denis Bilenko 6a7fae08ba clean up redundant comments 2025-03-04 11:21:16 +01:00
Denis Bilenko ba3062b654 rm copy 2025-03-04 10:01:45 +01:00