databricks-cli/bundle/deploy/terraform
shreyas-goenka 89c0af5bdc
Add resource for UC schemas to DABs (#1413)
## Changes
This PR adds support for UC Schemas to DABs. This allows users to define
schemas for tables and other assets their pipelines/workflows create as
part of the DAB, thus managing the life-cycle in the DAB.

The first version has a couple of intentional limitations:
1. The owner of the schema will be the deployment user. Changing the
owner of the schema is not allowed (yet). `run_as` will not be
restricted for DABs containing UC schemas. Let's limit the scope of
run_as to the compute identity used instead of ownership of data assets
like UC schemas.
2. API fields that are present in the update API but not the create API.
For example: enabling predictive optimization is not supported in the
create schema API and thus is not available in DABs at the moment.

## Tests
Manually and integration test. Manually verified the following work:
1. Development mode adds a "dev_" prefix.
2. Modified status is correctly computed in the `bundle summary`
command.
3. Grants work as expected, for assigning privileges.
4. Variable interpolation works for the schema ID.
2024-07-31 12:16:28 +00:00
..
tfdyn Add resource for UC schemas to DABs (#1413) 2024-07-31 12:16:28 +00:00
apply.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
check_running_resources.go Don't merge-in remote resources during depolyments (#1432) 2024-05-15 12:41:44 +00: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 Add resource for UC schemas to DABs (#1413) 2024-07-31 12:16:28 +00:00
convert_test.go Add resource for UC schemas to DABs (#1413) 2024-07-31 12:16:28 +00:00
destroy.go Move to a single prompt during bundle destroy (#1583) 2024-07-24 13:02:19 +00:00
dir.go Consolidate environment variable interaction (#747) 2023-09-11 08:18:43 +00:00
import.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
init.go Attribute Terraform API requests the CLI (#1598) 2024-07-18 09:38:09 +00:00
init_test.go Attribute Terraform API requests the CLI (#1598) 2024-07-18 09:38:09 +00:00
interpolate.go Add resource for UC schemas to DABs (#1413) 2024-07-31 12:16:28 +00:00
interpolate_test.go Add resource for UC schemas to DABs (#1413) 2024-07-31 12:16:28 +00:00
load.go Don't fail while parsing outdated terraform state (#1404) 2024-05-01 08:22:35 +00:00
load_test.go Move path field to bundle type (#1316) 2024-03-27 09:03:24 +00:00
pkg.go Followup improvements to the Docker setup script (#1369) 2024-04-18 20:52:11 +00:00
pkg_test.go Followup improvements to the Docker setup script (#1369) 2024-04-18 20:52:11 +00:00
plan.go Move to a single prompt during bundle destroy (#1583) 2024-07-24 13:02:19 +00:00
state_pull.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
state_pull_test.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
state_push.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
state_push_test.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
state_test.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
unbind.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00
util.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
util_test.go Use local Terraform state only when lineage match (#1588) 2024-07-18 09:47:59 +00:00
write.go Return `diag.Diagnostics` from mutators (#1305) 2024-03-25 14:18:47 +00:00