Skip to content

feat: Support Databricks Lakebase as a destination#22944

Open
bbernays wants to merge 14 commits into
mainfrom
pg-lakebase
Open

feat: Support Databricks Lakebase as a destination#22944
bbernays wants to merge 14 commits into
mainfrom
pg-lakebase

Conversation

@bbernays

Copy link
Copy Markdown
Collaborator

Summary

⚠️ If you're contributing to a plugin please read this section of the contribution guidelines 🧑‍🎓 before submitting this PR ⚠️

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds Databricks Lakebase connectivity to the PostgreSQL destination by introducing a lakebase spec block that mints short-lived OAuth DB credentials per connection via the Databricks SDK.

Changes:

  • Add lakebase spec/schema/docs and validation for required lakebase.endpoint.
  • Introduce Lakebase connection wiring (BeforeConnect token minting + max connection lifetime cap) and apply it in both client creation and connection testing.
  • Update Go module dependencies, checksums, tests, and license documentation for newly introduced dependencies.

Reviewed changes

Copilot reviewed 11 out of 12 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
plugins/destination/postgresql/go.mod Adds Databricks SDK and related indirect deps required for Lakebase auth.
plugins/destination/postgresql/go.sum Records checksums for the new direct/indirect dependencies.
plugins/destination/postgresql/docs/overview.md Documents the new lakebase block and provides an example config.
plugins/destination/postgresql/docs/_licenses.md Updates third-party license list for newly pulled dependencies.
plugins/destination/postgresql/client/spec/spec.go Adds LakebaseSpec, HasLakebaseConfig, and validates lakebase.endpoint.
plugins/destination/postgresql/client/spec/schema.json Extends JSON schema with LakebaseSpec and lakebase field.
plugins/destination/postgresql/client/spec/spec_test.go Adds schema/validation test cases for lakebase configs.
plugins/destination/postgresql/client/spec/lakebase_test.go Adds unit tests for Lakebase spec validation and presence detection.
plugins/destination/postgresql/client/lakebase.go Implements Lakebase auth wiring and connection lifetime capping.
plugins/destination/postgresql/client/lakebase_test.go Tests lifetime-capping and ensures BeforeConnect is set.
plugins/destination/postgresql/client/client.go Applies Lakebase configuration when initializing the pgx pool.
plugins/destination/postgresql/client/connection_tester.go Applies Lakebase configuration during connection tests.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread plugins/destination/postgresql/client/lakebase.go
Comment thread plugins/destination/postgresql/client/client.go
Comment thread plugins/destination/postgresql/client/connection_tester.go
Comment thread plugins/destination/postgresql/client/lakebase.go
Comment thread plugins/destination/postgresql/client/lakebase_test.go
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants