databricks-cli/bundle/deploy/terraform
Denis Bilenko ddd45e25ee
Pass USE_SDK_V2_{RESOURCES,DATA_SOURCES} to terraform (#2207)
## Changes
- Propagate env vars USE_SDK_V2_RESOURCES and $USE_SDK_V2_DATA_SOURCES
to terraform
- This are troubleshooting helpers for resources migrated to new plugin
framework, recommended here:
https://registry.terraform.io/providers/databricks/databricks/latest/docs/guides/troubleshooting#plugin-framework-migration-problems
- This current unblocks deploying quality monitors, see
https://github.com/databricks/terraform-provider-databricks/issues/4229#issuecomment-2520344690

## Tests
Manually testing that I can deploy quality monitor after this change
with `USE_SDK_V2_RESOURCES="databricks_quality_monitor"` set

### Main branch:
```
~/work/databricks_quality_monitor_repro % USE_SDK_V2_RESOURCES="databricks_quality_monitor" ../cli/cli-main bundle deploy
Uploading bundle files to /Workspace/Users/denis.bilenko@databricks.com/.bundle/quality_monitor_bundle/default/files...
Deploying resources...
Updating deployment state...
Deployment complete!
Error: terraform apply: exit status 1

Error: Provider produced inconsistent result after apply

When applying changes to databricks_quality_monitor.monitor_trips, provider
"provider[\"registry.terraform.io/databricks/databricks\"]" produced an
unexpected new value: .data_classification_config: block count changed from 0
to 1.

This is a bug in the provider, which should be reported in the provider's own
issue tracker.
```

### This branch:
```
~/work/databricks_quality_monitor_repro % USE_SDK_V2_RESOURCES="databricks_quality_monitor" ../cli/cli bundle deploy
Uploading bundle files to /Workspace/Users/denis.bilenko@databricks.com/.bundle/quality_monitor_bundle/default/files...
Deploying resources...
Updating deployment state...
Deployment complete!
```

### Config:
```
~/work/databricks_quality_monitor_repro % cat databricks.yml
bundle:
  name: quality_monitor_bundle

resources:
  quality_monitors:
    monitor_trips:
      table_name: main.denis-bilenko-cuj-pe34.trips_sanitized_1
      output_schema_name: main.denis-bilenko-cuj-pe34
      assets_dir: /Workspace/Users/${workspace.current_user.userName}/quality_monitor_issue
      snapshot: {}
```
2025-01-23 12:48:47 +00:00
..
tfdyn Upgrade Go SDK to 0.56.0 (#2214) 2025-01-23 11:17:52 +00:00
apply.go Show actionable errors for collaborative deployment scenarios (#1386) 2024-10-10 11:18:23 +00:00
check_dashboards_modified_remotely.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
check_dashboards_modified_remotely_test.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
check_running_resources.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
check_running_resources_test.go Don't merge-in remote resources during depolyments (#1432) 2024-05-15 12:41:44 +00:00
convert.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
convert_test.go Upgrade Go SDK to 0.56.0 (#2214) 2025-01-23 11:17:52 +00:00
dir.go Consolidate environment variable interaction (#747) 2023-09-11 08:18:43 +00:00
import.go Enable linter 'mirror' and autofix existing issues (#2070) 2025-01-03 10:13:12 +00:00
init.go Pass USE_SDK_V2_{RESOURCES,DATA_SOURCES} to terraform (#2207) 2025-01-23 12:48:47 +00:00
init_test.go PythonMutator: update instrumentation (#2124) 2025-01-13 09:16:29 +00:00
interpolate.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
interpolate_test.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
load.go Enable perfsprint linter and apply autofix (#2071) 2025-01-07 10:49:23 +00:00
load_test.go Rename `RootPath` -> `BundleRootPath` (#1792) 2024-09-27 10:03:05 +00:00
pkg.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
pkg_test.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
plan.go Enable 'govet' linter; expand log/diag with non-f functions (#1996) 2024-12-11 16:42:03 +00:00
state_pull.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
state_pull_test.go Rename `RootPath` -> `BundleRootPath` (#1792) 2024-09-27 10:03:05 +00:00
state_push.go Add an error if state files grow bigger than the export limit (#1795) 2024-10-02 13:53:24 +00:00
state_push_test.go Enable intrange linter and apply autofix (#2069) 2025-01-03 09:25:07 +00:00
state_test.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
unbind.go Enable gofumpt and goimports in golangci-lint (#1999) 2024-12-12 10:28:42 +01:00
util.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
util_test.go Added support for Databricks Apps in DABs (#1928) 2025-01-13 16:43:48 +00:00
write.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00