Integrations added through the extension UI are stored in SecretStorage keyed by Deepnote project, so the same database has to be configured again for every project in a workspace.
What already works
#440 added a file-based source: a .deepnote.env.yaml next to the .deepnote file or at the workspace root, with env: references resolved against .env and the process environment (setting deepnote.integrations.envFile.enabled, on by default). One file at the workspace root is effectively a workspace-level integration definition shared by every project under it, and it is applied to running kernels without a restart. It also matches what the CLI reads.
Remaining gap
There is no equivalent for integrations created through the UI:
- an integration configured in one project cannot be marked as workspace-wide;
- when adding an integration to another project there is no "use an existing integration" picker, so credentials are re-entered and stored twice.
Proposal
Either of:
- A scope choice (project or workspace) when creating or editing an integration in the UI, with workspace-scoped entries applied to every project in the workspace.
- An "Add existing integration" entry in the project's integrations list that links a SecretStorage integration already configured elsewhere in the workspace.
Until then the recommended route for shared integrations is the .deepnote.env.yaml file from #440.
Integrations added through the extension UI are stored in SecretStorage keyed by Deepnote project, so the same database has to be configured again for every project in a workspace.
What already works
#440 added a file-based source: a
.deepnote.env.yamlnext to the.deepnotefile or at the workspace root, withenv:references resolved against.envand the process environment (settingdeepnote.integrations.envFile.enabled, on by default). One file at the workspace root is effectively a workspace-level integration definition shared by every project under it, and it is applied to running kernels without a restart. It also matches what the CLI reads.Remaining gap
There is no equivalent for integrations created through the UI:
Proposal
Either of:
Until then the recommended route for shared integrations is the
.deepnote.env.yamlfile from #440.