Skip to content

Conversation

@tanmay-db
Copy link
Contributor

@tanmay-db tanmay-db commented Oct 20, 2025

Changes

  • Main landing page under guides
  • Reference under authentication where we specify using 2 providers
  • Stability: Public Beta

With these, users have sufficient information to start using, migrating to unified provider with examples and how to report issues. We can add more later on.

Tests

N/A

@tanmay-db tanmay-db changed the title [Documentation] Add support for Unified Terraform Provider [Documentation] Documentation for Unified Provider Oct 20, 2025
@tanmay-db tanmay-db changed the title [Documentation] Documentation for Unified Provider [Documentation] Unified Provider Oct 20, 2025
@tanmay-db tanmay-db changed the title [Documentation] Unified Provider [Documentation] Unified Provider: One provider to manage both workspace and account level resources Oct 21, 2025
@tanmay-db tanmay-db marked this pull request as ready for review October 21, 2025 11:13
@tanmay-db tanmay-db requested review from a team as code owners October 21, 2025 11:13
@tanmay-db tanmay-db requested review from hectorcast-db and removed request for a team October 21, 2025 11:13
@tanmay-db tanmay-db removed request for a team and hectorcast-db October 21, 2025 11:13
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces documentation for the Unified Provider feature, which enables managing workspace-level resources through a single account-level provider configuration, eliminating the need for separate workspace providers.

Key changes:

  • Added comprehensive guide explaining unified provider usage and migration
  • Updated main documentation with authentication examples
  • Added changelog entry

Reviewed Changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
docs/index.md Added authentication section with unified provider example
docs/guides/unified-provider.md New comprehensive guide covering usage, migration, limitations, and issue reporting
NEXT_CHANGELOG.md Added changelog entry for unified provider documentation

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

Copy link
Contributor

@mgyucht mgyucht left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Main gap is the instruction for migration. Otherwise this is looking pretty good, just a few nits.

@github-actions
Copy link

If integration tests don't run automatically, an authorized user can run them manually by following the instructions below:

Trigger:
go/deco-tests-run/terraform

Inputs:

  • PR number: 5122
  • Commit SHA: 6c3c0fc7748f1dd5d5ef2d5d987814c1fb2f55f2

Checks will be approved automatically on success.

Copy link
Contributor

@mgyucht mgyucht left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some more feedback!

Comment on lines +16 to +34
### Block
```hcl
resource "workspace_level_resource" "this" {
provider_config {
workspace_id = "12345"
}
...
}
```

### Attribute
```hcl
resource "workspace_level_resource" "this" {
provider_config = {
workspace_id = "12345"
}
...
}
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the subheadings and just add English describing the code blocks.

Use actual resources rather than fake ones.


To manage a workspace-level resource through the account provider, specify the `provider_config` at the resource level with the `workspace_id` of the workspace the resource belongs to.

Depending on the internal implementation of the resource or data source, `provider_config` can be either a block or an attribute. For details, please refer to the documentation of the specific resource or data source.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

With attributes, an = separates the provider_config from its configuration, whereas with blocks, this = is omitted.

}
```

**Note:** This feature is being rolled out incrementally. Some resources do not yet support the unified provider. Please check the resource-specific documentation to see if the `provider_config` attribute or block is available.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

suggest not to document this change until after non-SDK resources are supported.

Comment on lines +56 to +59
```

Once the workspace is created, create a workspace-level provider.
```hcl
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
```
Once the workspace is created, create a workspace-level provider.
```hcl

}
// Use the workspace provider for workspace-level resources
resource "databricks_workspace_level_resource" "this" {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's use real resources just for demonstration

## FAQ

* An empty `workspace_id` is not allowed, and `terraform plan` will fail with the error: `"workspace_id string length must be at least 1"`.
* The `workspace_id` supplied to the resource through `provider_config` must belong to the account for which the provider is configured. If the workspace does not belong to the account, you will receive an error: `"failed to get workspace client, please check the workspace_id provided in the provider_config"`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Or that the authenticated principal doesn't have permission to call the GetWorkspace API.


## Usage

To manage a workspace-level resource through the account provider, specify the `provider_config` at the resource level with the `workspace_id` of the workspace the resource belongs to.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You need to have the "account admin" permission. (Let's check this with Alex or LRM team.)

There are some limitations to this feature that we plan to address in the near future:

1. Databricks CLI and Azure CLI authentication methods are not currently supported
2. Some resources do not yet support the unified provider as the support is rolling out incrementally. Please refer to the documentation for each resource or data source to check if they support the `provider_config` attribute or block.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This also will go away.


1. Databricks CLI and Azure CLI authentication methods are not currently supported
2. Some resources do not yet support the unified provider as the support is rolling out incrementally. Please refer to the documentation for each resource or data source to check if they support the `provider_config` attribute or block.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe this is the right spot to mention the account admin permission restriction?

}
// Create a workspace level resource under the workspace above
resource "databricks_workspace_level_resource" "this" {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ditto

github-merge-queue bot pushed a commit that referenced this pull request Oct 23, 2025
…amework resources and data sources (#5115)

## Changes
<!-- Summary of your changes that are easy to understand -->
Add unified provider support for the following resources:
- Quality Monitor
- Library
- Shares

These use types.List to be compatible with SDKv2

Also noticed that we don't have documentation for library resource,
added it as well.

Main documentation:
#5122

## Tests
<!--
How is this tested? Please see the checklist below and also describe any
other relevant tests
-->
Integration tests
@alexott alexott added the docs add explicit documentation about corner case label Nov 11, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs add explicit documentation about corner case

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants