Repository navigation
Update Databricks CLI to v1.20.0 and remove Terraform bundling - #2243
Merged
Merged
Conversation
*Why*: * CLI v1.20.0 removes the Terraform deployment engine and the hidden `bundle debug terraform` command. * Packaging called that command to download Terraform and the provider, so the VSIX build failed and every e2e job failed with it. * With the engine gone, the bundled Terraform binary, the `DATABRICKS_TF_*` env vars, and the Terraform-engine warning are dead code. *What:* * Bump `cli.version` to 1.20.0. * Stop bundling Terraform: delete `setupCLIDependencies.ts` and its step (plus the host-CLI download it needed) in `package-vsix.sh`, and the now-unused `BUILD_PLATFORM_ARCH`. * Remove `terraformUtils.ts`, the `DATABRICKS_TF_*` env vars from CLI and terminal environments, and the Terraform CLI config write on activation. The terminal env collection is already cleared on each activation, so old values do not stay. * Remove the Terraform-engine warning (`BundleEngineManager`), its telemetry event, its state key, and the `engine` field it read from validate output. CLI v1.20.0 rejects `engine: terraform`, so the warning can no longer show. * Drop the now-unused `extract-zip` dev dependency and fix Terraform mentions in comments. *Verification:* * `yarn install --immutable`, `yarn run build`, `yarn run test:lint`: pass. * Unit tests against the bundled CLI v1.20.0: 1290 passing, 0 failing. * `./scripts/package-vsix.sh darwin-arm64`: VSIX builds; `extension/bin/` has only `databricks`, and the packaged `package.json` has no `terraformMetadata`. Co-authored-by: Isaac <no-reply@databricks.com>
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:32 — with
GitHub Actions
Inactive
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:32 — with
GitHub Actions
Inactive
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:32 — with
GitHub Actions
Inactive
Contributor
Author
|
🤖 Integration tests running for |
*Why*: * The edited comment broke mid-sentence on a short line. *What:* * Reflow the comment into full lines. *Verification:* * Prettier and ESLint pass on the file. Co-authored-by: Isaac <no-reply@databricks.com>
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:43 — with
GitHub Actions
Inactive
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:45 — with
GitHub Actions
Inactive
rugpanov
temporarily deployed
to
test-trigger-is
October 8, 2026 13:45 — with
GitHub Actions
Inactive
Contributor
Author
|
🤖 Integration tests ❌ failed for |
rugpanov
marked this pull request as ready for review
October 8, 2026 14:17
anton-107
approved these changes
Oct 9, 2026
rugpanov
temporarily deployed
to
test-trigger-is
October 9, 2026 10:45 — with
GitHub Actions
Inactive
Contributor
|
If integration tests don't run automatically, an authorized user can run them manually by following the instructions below: Trigger: Inputs:
Checks will be approved automatically on success. |
rugpanov
temporarily deployed
to
test-trigger-is
October 9, 2026 10:45 — with
GitHub Actions
Inactive
rugpanov
temporarily deployed
to
test-trigger-is
October 9, 2026 10:45 — with
GitHub Actions
Inactive
Contributor
Author
|
🤖 Integration tests ❌ failed for |
Merged
rugpanov
added a commit
that referenced
this pull request
Oct 12, 2026
## packages/databricks-vscode ## (2026-10-12) * Remove the Terraform deployment engine, as part of the update to Databricks CLI v1.20.0 (#2243) ([b087b77](b087b77)). Bundles now always deploy with the direct engine: setting `bundle.engine: terraform` or `DATABRICKS_BUNDLE_ENGINE=terraform` is an error, and if existing Terraform state can't be migrated, the deploy fails instead of falling back to Terraform. If you still need Terraform, stay on extension v2.20.0. The extension also no longer ships the Terraform binary that security scans flagged (#2166). See the [CLI release notes](https://github.com/databricks/cli/releases/tag/v1.20.0) for details * Verify TLS certificates for SDK calls again by default: an unset `databricks.proxy.strictSSL` now falls back to `http.proxyStrictSSL` (verification was skipped since v2.19.0), and honor `http.systemCertificates` (#2244) ([8654191](8654191)) * Sort folders alphabetically in the Workspace File System view (#2233) ([9b26c33](9b26c33)), see #2231 ## packages/databricks-vscode-types ## (2026-10-12) No user-facing changes. ## Curation notes * Minor bump (not patch): the bundled CLI moves to v1.20.0, which removes the Terraform deployment engine. Bundles that still deploy with Terraform break. The 3 `[under feature flag]` `feat` commits below would also need a minor bump. * The VSIX sizes drop a lot against v2.20.0, because the CLI v1.20.0 bump removes Terraform from the VSIX (#2166). This is expected. * Left out of the changelog: * [under feature flag] #2230: Unity Gateway sign-in. It is gated on the `chat.unityGateway` experiment. * [under feature flag] #2238: Unity Gateway model discovery. Chat does not use it yet. * [under feature flag] #2237: Unity Gateway connection row in the Configuration view. * #2240: dependency-only bump of `shell-quote`. * Stripped the generated issue refs and the `closes` keywords, so merging does not auto-close issues. This pull request and its description were written by Isaac. --------- Co-authored-by: releasebot <noreply@github.com> Co-authored-by: @rugpanov <gripanov@gmail.com> Co-authored-by: Isaac <no-reply@databricks.com>
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changes
Databricks CLI v1.20.0 removes the Terraform deployment engine and the hidden
bundle debug terraformcommand. Packaging called that command to download Terraform and the Databricks provider. Thus #2241, the plain version bump, fails packaging, and all e2e jobs fail with it. This PR replaces #2241.Fixes #2166: the VSIX no longer ships the Terraform v1.5.5 binary that security scans flag.
bin/databricks. ThesetupCLIDependencies.tspackaging step and its host-CLI download are gone.DATABRICKS_TF_*variables for CLI processes and integrated terminals, and stop writing the Terraform CLI config on activation. The extension clears its terminal variables on each activation, so old values do not stay.bundleTerraformEngineWarningtelemetry event, and itsdatabricks.bundle.hideTerraformEngineWarningstate key. CLI v1.20.0 rejectsengine: terraformin validate, so the warning cannot show.Backward compatibility
bundle.engine, links the migration guide, and migrates existing Terraform state automatically.databricks.cli.path, or put an olderdatabricksfirst onPATHin a terminal. That CLI no longer gets the bundled Terraform. It downloads Terraform at runtime, and this fails on restricted networks. We accept this, because the extension moves to the direct engine.Tests
yarn run buildandyarn run test:lintpass../scripts/package-vsix.sh darwin-arm64: the VSIX builds.extension/bin/contains onlydatabricks, and the packagedpackage.jsonhas noterraformMetadata.deploy_and_run_jobon Linux timed out while it waited for the job run status. The deploy step had already passed. The re-run of that job passed.This pull request and its description were written by Isaac.