The Lakebase SCM + substrate engine. This package is the portable core extracted from
consort: it owns database branching, the paired-branch SCM workflow state
machine, connection + credential minting, schema migration, project scaffold + deploy
primitives, and the shared git / github / util layer.
It ships two consumption surfaces:
- Library API (for the VS Code extension
lakebase-scm-extensionand the SFTDD orchestration inconsort): import the substrate from the package barrel or a sub-path.import { createBranch, getConnection } from "@databricks-solutions/lakebase-scm-utils"; import { resolveGitHubToken } from "@databricks-solutions/lakebase-scm-utils/github";
- CLIs (for scaffolded projects and CI): the
lakebase-*andlakebase-scm-*bins, resolved on PATH by thelkshim.
The SCM workflows and their supporting substrate were originally embedded in
consort alongside the SFTDD orchestration. They are extracted here so both
the IDE extension and the SFTDD kit can depend on a single, versioned engine, for easier
consumption and portability. The SFTDD orchestration stays in consort and
depends back on this package.
Consumed via a github ref (npm publish is deferred):
npm install github:databricks-solutions/lakebase-scm-utils#v<version>
The package ships a pre-built dist/ on every tagged release, so a consumer install skips
the build.
npm install
npm run typecheck
npm test
npm run build