Skip to content

feat: Azure Databricks SDK-compat handler - #206

Merged
NitinKumar004 merged 2 commits into
developmentfrom
feat/azure-databricks-sdk-compat
Jun 11, 2026
Merged

feat: Azure Databricks SDK-compat handler#206
NitinKumar004 merged 2 commits into
developmentfrom
feat/azure-databricks-sdk-compat

Conversation

@NitinKumar004

Copy link
Copy Markdown
Collaborator

Closes #164.

Summary

Adds Azure Databricks as a new service across all layers, with end-to-end SDK compatibility for the real armdatabricks WorkspacesClient, plus the portable API.

What's included

  • Portable API (databricks/): Databricks wrapper with the standard cross-cutting concerns (recording, metrics, rate limiting, error injection, latency) and a driver.Databricks interface.
  • Azure provider (providers/azure/databricks/): in-memory Microsoft.Databricks/workspaces implementation — create-or-update with synchronous provisioning (state Succeeded, deterministic workspace ID + URL), get, delete, tag update, and list by resource group / subscription.
  • SDK-compat handler (server/azure/databricks/): ARM REST routing for the workspaces resource, reusing the shared azurearm path-parsing and error helpers. Mutating ops return 200 inline so the SDK's LRO poller terminates on the first response.
  • Wiring: Databricks field added to the Azure provider factory and the Azure server Drivers bundle.

Tests

  • Provider-level and portable-level unit tests.
  • SDK roundtrip tests driving the real armdatabricks client against the in-memory server: workspace lifecycle (create/get/update/delete), list by resource group, list by subscription, and not-found handling.

go build ./..., go test ./..., and golangci-lint run all pass.

Add Azure Databricks as a new service across all layers: portable
Databricks API, driver interface, in-memory Azure provider (workspace
CRUD with synchronous provisioning), and a Microsoft.Databricks ARM
SDK-compat handler. Real armdatabricks WorkspacesClient works end-to-end
for create/get/update/delete and list-by-resource-group/subscription.
- CreateWorkspace now applies mutable fields (tags, SKU) on a create-or-update
  PUT to an existing workspace instead of returning it unchanged, preserving
  the identity fields
- UpdateWorkspaceTags swaps in a copy rather than mutating the stored struct
  in place, so concurrent readers never observe a torn update
@NitinKumar004
NitinKumar004 merged commit 4a85b52 into development Jun 11, 2026
@NitinKumar004
NitinKumar004 deleted the feat/azure-databricks-sdk-compat branch July 25, 2026 13:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Azure Databricks SDK-compat handler

1 participant