Skip to content

feat(appkit): introduce Lakebase plugin#126

Merged
pkosiec merged 9 commits intomainfrom
pkosiec/lakebase-plugin-2
Feb 26, 2026
Merged

feat(appkit): introduce Lakebase plugin#126
pkosiec merged 9 commits intomainfrom
pkosiec/lakebase-plugin-2

Conversation

@pkosiec
Copy link
Member

@pkosiec pkosiec commented Feb 23, 2026

This PR introduces a thin wrapper on top of the Lakebase driver, to ensure consistent behavior.

Resolves https://databricks.atlassian.net/browse/LKB-9544

Notes

Should we really name it as "Lakebase"? Victor suggested using name "Transaction" but it doesn't resonate with me.

On the other hand, oltp, database, postgres don't sound like better options than lakebase 🤔 We need to distinguish this plugin with the analytics plugin somehow.

IMO the "Lakebase" name is the best what we can do right now, even though it is not consistent with analytics plugin. Let's see how the other plugins are named and then rename it - or, if you have any ideas, feel free to suggest them already.

All PRs

  1. CLI: Display plugin setup instructions after apps init flow, remove empty files after template rendering cli#4549
  2. feat(lakebase): add ability to lookup DB username with API #123
  3. feat(appkit): introduce Lakebase plugin #126
  4. chore: generate template dynamically for specific enabled plugins #127

@pkosiec pkosiec force-pushed the pkosiec/lakebase-plugin branch from a17ec82 to 20c9a3a Compare February 24, 2026 11:18
@pkosiec pkosiec force-pushed the pkosiec/lakebase-plugin-2 branch from 280e89e to 1e776a2 Compare February 24, 2026 11:24
Base automatically changed from pkosiec/lakebase-plugin to main February 24, 2026 12:34
@pkosiec pkosiec force-pushed the pkosiec/lakebase-plugin-2 branch from 1e776a2 to b2e77c6 Compare February 24, 2026 12:44
@pkosiec pkosiec mentioned this pull request Feb 24, 2026
6 tasks
Copy link
Collaborator

@MarioCadenas MarioCadenas left a comment

Choose a reason for hiding this comment

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

In general code LGTM, I'm not so sure about the onSetupMessage thing though, let's discuss that

"description": "SPDX license identifier",
"examples": ["Apache-2.0", "MIT"]
},
"onSetupMessage": {
Copy link
Collaborator

Choose a reason for hiding this comment

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

so if we have multiple plugins, with the onSetupMessage, then we will have multiple instructions printing? also, this seems like something needed just for the lakebase plugin and not for a general use case, what other use cases do you see?

Copy link
Member Author

@pkosiec pkosiec Feb 26, 2026

Choose a reason for hiding this comment

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

so if we have multiple plugins, with the onSetupMessage, then we will have multiple instructions printing?

yes, per plugin 👍
image

For now it is used for Lakebase, but I can imagine other plugins that require some manual steps - something what CLI / AppKit cannot do automatically - for example, an external service setup "Create a Slack webhook and set env SLACK_WEBHOOK_URL"

I can see value especially in the external / third party plugins. I totally agree that with our plugins we should aim to not print such messages and have everything provided out of the box.

This is completely optional for plugins, and it doesn't change the goal of having the plugins zero-config 👍

@pkosiec pkosiec force-pushed the pkosiec/lakebase-plugin-2 branch from 0f3f5c5 to 604ed6c Compare February 26, 2026 08:41
@pkosiec pkosiec merged commit f4bb729 into main Feb 26, 2026
6 checks passed
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.

2 participants