Add Marketplace app manifest (app/manifest.yaml) - #3
Open
deepbasu123 wants to merge 1 commit into
Open
Conversation
Adds the Databricks Apps manifest required to publish Quest to Databricks Marketplace (SOP step 3). Declares the two resources the app binds at install time — a SQL warehouse (CAN_USE) and a Lakebase/Postgres database (CAN_CONNECT_AND_CREATE) — with no user_api_scopes, since Quest runs as its own service principal and never handles a user token. Field names and permission values verified against databricks/app-templates and the databricks-sdk-py AppManifest* schema. See the inline note on the database resource: the SDK schema models it as postgres_spec (used here), while some official templates use database_spec for provisioned instances — one field to confirm with the Marketplace team. Co-authored-by: Isaac
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Adds
app/manifest.yaml— the Databricks Apps manifest required to publish Quest to Databricks Marketplace (per the "List internal content in Databricks Marketplace" SOP, step 3). It sits next to the existingapp/app.yaml.Why
The Marketplace checklist requires a valid
manifest.yamlfor publishing. The repo hadapp.yaml(runtime config:command/env) but no manifest (metadata + declared resource dependencies). This adds it without touching any runtime behaviour.What it declares
Two resources the app binds to the installer's own workspace at install time:
sql-warehousesql_warehouse_specCAN_USEdatabasepostgres_specCAN_CONNECT_AND_CREATENo
user_api_scopes: Quest runs as its own service principal (app auth), does not call user-scoped APIs, and never handles a user token — consistent with the Marketplace "MUST NOT store user PAT tokens" requirement.One field to confirm
The Lakebase resource uses
postgres_specbecause that is what the current Apps manifest SDK schema (AppManifestAppResourceSpec) models and it is guaranteed to validate (also used by theappkit-lakebase/appkit-all-in-oneofficial templates). Some official templates instead usedatabase_specfor a provisioned instance — which is what Quest actually creates (fixedCU_1). If the Marketplace publisher tooling prefersdatabase_spec, swap the key; the permission value is unchanged. This is called out inline in the file.Verification
databricks/app-templatesand thedatabricks-sdk-pyAppManifest*classes.version: 1, resourcessql-warehouse+database).This pull request and its description were written by Isaac.